Author: ron.sigal(a)jboss.com
Date: 2009-09-12 18:52:50 -0400 (Sat, 12 Sep 2009)
New Revision: 5463
Modified:
remoting2/branches/2.x/docs/guide/en/chap4.xml
Log:
JBREM-1151: Updated dependencies.
Modified: remoting2/branches/2.x/docs/guide/en/chap4.xml
===================================================================
--- remoting2/branches/2.x/docs/guide/en/chap4.xml 2009-09-12 21:14:16 UTC (rev 5462)
+++ remoting2/branches/2.x/docs/guide/en/chap4.xml 2009-09-12 22:52:50 UTC (rev 5463)
@@ -9,7 +9,8 @@
<para><emphasis role="bold">jboss-remoting.jar</emphasis>
- this binary
contains all the remoting classes. This is the only remoting jar that is
- needed to perform any remoting function within JBoss Remoting.</para>
+ needed to perform any remoting function within JBoss Remoting. Of course,
+ third party jars will be required.</para>
<para>Since some may want to better control size of the binary footprint
needed to use remoting, the remoting classes have been broken out into
@@ -82,71 +83,176 @@
functions.</para>
<section>
- <title>Thirdparty libraries</title>
+ <title>Third party libraries</title>
<para>This section covers which thirdparty jars are required based on
- the feature or transport to be used. Remember, whenever see
- jboss-remoting-XXX.jar mentioned, they can all be replaced with just the
+ the feature or transport to be used. Remember, any
+ jboss-remoting-XXX.jar can be replaced with just the
jboss-remoting.jar.</para>
+
+ <para> Table 1 gives the direct dependencies of the Remoting jars on
+ third party jars (and jboss-remoting-core.jar, in most cases). Table 2
+ gives the transitive closure of Table 1.</para>
- <para><emphasis role="bold">All remoting
servers:</emphasis>
- jboss-remoting-core.jar, jboss-common.jar, jboss-jmx.jar,
- log4j.jar</para>
+ <para>The information in Tables 1 and 2 was derived with the use of the
+ extremely useful <emphasis role="bold">Tattletale</emphasis>
tool,
+ available on the
jboss.org website:
+ <ulink
url="http://www.jboss.org/tattletale">
+
http://www.jboss.org/tattletale</ulink></para>
+
+ <table frame="all" id="JarDependencyTable"
xreflabel="Table 1">
+ <title>Jar dependencies.</title>
- <para><emphasis role="bold">All remoting clients:
- </emphasis>jboss-remoting-core.jar, jboss-common.jar, jboss-jmx.jar,
- log4j.jar, concurrent.jar</para>
+ <tgroup cols="2">
+ <colspec align="left" colname="c1" colnum="1"
/>
+ <colspec align="left" colname="c2" colnum="2"
/>
- <para>Note: concurrent.jar needed because of org.jboss.util.id.GUID used
- to create session id within Client
- (
http://jira.jboss.com/jira/browse/JBREM-549)</para>
+ <thead>
+ <row>
+ <entry
align="center"><para>jar</para></entry>
+ <entry align="center"><para>depends
on</para></entry>
+ </row>
+ </thead>
- <para>Remoting requires the use of JMX classes. It does not require the
- JBoss implementation (jboss-jmx.jar) of JMX in order to function
- correctly, so can replace jboss-jmx.jar with another JMX implementation
- library (or exclude it if using jdk 1.5 or higher, which has JMX
- implementation built in).</para>
+ <tbody>
+ <row>
+
<entry><para>jboss-remoting-bisocket-client.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-logging-spi.jar, jboss-remoting-core.jar,
jboss-serialization.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-bisocket.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-logging-spi.jar, jboss-remoting-core.jar,
jboss-serialization.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-core.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-detection.jar,
jboss-serialization.jar, log4j.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-detection.jar:</para></entry>
+ <entry><para>jboss-j2se.jar, jboss-logging-spi.jar,
jboss-remoting-core.jar, jnpserver.jar, log4j.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-http-client.jar:</para></entry>
+ <entry><para>jboss-common-core.jar, jboss-logging-spi.jar,
jboss-remoting-core.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-http.jar:</para></entry>
+ <entry><para>jboss-common-core.jar, jboss-logging-spi.jar,
jboss-remoting-core.jar, jbossweb.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-rmi.jar:</para></entry>
+ <entry><para>jboss-common-core.jar, jboss-logging-spi.jar,
jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-samples.jar:</para></entry>
+ <entry><para>jboss-common-core.jar, jboss-logging-log4j.jar,
jboss-logging-spi.jar, jboss-remoting-bisocket-client.jar, jboss-remoting-core.jar,
jboss-remoting-detection.jar, jboss-remoting.jar, jnpserver.jar, junit.jar, log4j.jar,
servlet-api.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-serialization.jar:</para></entry>
+ <entry><para>jboss-logging-spi.jar, jboss-remoting-core.jar,
jboss-serialization.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-servlet.jar:</para></entry>
+ <entry><para>jboss-logging-spi.jar, jboss-remoting-core.jar,
servlet-api.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-socket-client.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-logging-spi.jar, jboss-remoting-core.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-socket.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-logging-spi.jar, jboss-remoting-core.jar,
jboss-serialization.jar</para></entry>
+ </row>
+ <row>
+ <entry><para>jboss-remoting.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-log4j.jar, jboss-logging-spi.jar, jboss-serialization.jar,
jbossweb.jar, jnpserver.jar, junit.jar, log4j.jar,
servlet-api.jar</para></entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+
+
+ <table frame="all" id="JarTransitiveDependencyTable"
xreflabel="Table 1">
+ <title>Transitive closure of jar dependencies.</title>
- <para><emphasis role="bold">Multicast detection:
- </emphasis>jboss-remoting-detection.jar, concurrent.jar,
- dom4j.jar</para>
+ <tgroup cols="2">
+ <colspec align="left" colname="c1" colnum="1"
/>
+ <colspec align="left" colname="c2" colnum="2"
/>
- <para><emphasis role="bold">JNDI detection:</emphasis>
- jboss-remoting-detection.jar, concurrent.jar, dom4j.jar, jnpserver.jar
- (for jndi api classes)</para>
+ <thead>
+ <row>
+ <entry
align="center"><para>jar</para></entry>
+ <entry align="center"><para>depends
on</para></entry>
+ </row>
+ </thead>
- <para>The dom4j.jar for use of detection is required because using
- jboss-jmx.jar.</para>
-
- <para><emphasis role="bold">Socket server:</emphasis>
- jboss-remoting-socket.jar</para>
-
- <para><emphasis role="bold">Socket client:</emphasis>
- jboss-remoting-socket-client.jar</para>
-
- <para><emphasis role="bold">HTTP server:</emphasis>
- jboss-remoting-http.jar, tomcat-coyote.jar, tomcat-util.jar,
- tomcat-http.jar, commons-logging-api.jar; alternatively, the tomcat jars
- can be replaced by jbossweb.jar</para>
-
- <para>Note: need tomcat-apr.jar (if using tomcat jars) and
- tcnative-1.dll/tcnative-1.so on system path to use APR based tomcat
- connector</para>
+ <tbody>
+ <row>
+
<entry><para>jboss-remoting-bisocket-client.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-bisocket.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-core.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, [jboss-remoting-detection.jar],
jboss-serialization.jar, [jnpserver.jar], log4j.jar, trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-detection.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar,
jnpserver.jar, log4j.jar, trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-http-client.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-http.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, jbossweb.jar, [jnpserver.jar],
log4j.jar, servlet-api.jar, trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-rmi.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-samples.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-log4j.jar, jboss-logging-spi.jar,
jboss-remoting-bisocket-client.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], junit.jar,
log4j.jar, servlet-api.jar, trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-serialization.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-servlet.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
servlet-api.jar, trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-socket-client.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+
<entry><para>jboss-remoting-socket.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar,
[jboss-remoting-detection.jar], jboss-serialization.jar, [jnpserver.jar], log4j.jar,
trove.jar</para></entry>
+ </row>
+ <row>
+ <entry><para>jboss-remoting.jar:</para></entry>
+ <entry><para>concurrent.jar, jboss-common-core.jar,
jboss-j2se.jar, jboss-logging-log4j.jar, jboss-logging-spi.jar, jboss-serialization.jar,
jbossweb.jar, jnpserver.jar, junit.jar, log4j.jar, servlet-api.jar,
trove.jar</para></entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
- <para><emphasis role="bold">HTTP client:</emphasis>
- jboss-remoting-http-client.jar</para>
+ <para><emphasis
role="bold">Notes.</emphasis></para>
+
+ <para>1. jboss-remoting-core contains the transporter classes, and some of
those
+ need jboss-remoting-detection.jar, which explains the proliferation of
+ jboss-remoting-detection.jar in Table 2. If transporters are not used,
+ then jboss-remoting-detection.jar can be omitted. Moreover, JNDI detection
+ requires jnpserver.jar, so that, if transporters are not used, jnpserver.jar
+ can be omitted.</para>
- <para><emphasis role="bold">Servlet server:</emphasis>
- servlet-invoker.war (deployed in web container),
- jboss-remoting-servlet.jar</para>
-
- <para><emphasis role="bold">Servlet client:</emphasis>
- jboss-remoting-http-client.jar</para>
-
- <para><emphasis role="bold">RMI server and
client:</emphasis>
- jboss-remoting-rmi.jar</para>
-
- <para><emphasis role="bold">JBoss
serialization:</emphasis>
- jboss-serialization.jar, trove.jar</para>
</section>
</chapter>
\ No newline at end of file