2
<title>Remoting libraries and thirdparty dependancies</title>
4
<para>Remoting partitions its functionality into several different libraries
5
to allow the size of the footprint to be controlled according to the
6
features that will be used. Remoting distribution will include
7
the following remoting binaries (found in the lib directory of the
10
<para><emphasis role="bold">jboss-remoting.jar</emphasis> - this binary
11
contains all the remoting classes. This is the only remoting jar that is
12
needed to perform any remoting function within JBoss Remoting. Of course,
13
third party jars will be required.</para>
15
<para>Since some may want to better control size of the binary footprint
16
needed to use remoting, the remoting classes have been broken out into
17
multiple remoting binaries based on their function. There are four
18
categories of these binaries; core, detection, transport, and
21
<bridgehead>core</bridgehead>
23
<para><emphasis role="bold">jboss-remoting-core.jar</emphasis> - contains
24
all the core remoting classes needed for remoting to function. If not
25
using jboss-remoting.jar, then jboss-remoting.core.jar will be
28
<bridgehead>detection</bridgehead>
30
<para><emphasis role="bold">jboss-remoting-detection</emphasis> - contains
31
all the remoting classes needed to perform automatic discovery of remoting
32
servers. It includes both the jndi and multicast detector classes as well
33
as the network registry classes.</para>
35
<bridgehead>transport</bridgehead>
37
<para><emphasis role="bold">jboss-remoting-socket.jar</emphasis> -
38
contains all the classes needed for the socket and sslsocket transports to
39
function as both a client and a server.</para>
41
<para><emphasis role="bold">jboss-remoting-socket-client.jar</emphasis> -
42
contains all the classes needed for the socket and sslsocket transports to
43
function as a client only. This means will not be able to perform any push
44
callbacks or sending of streams using this jar.</para>
46
<para><emphasis role="bold">jboss-remoting-http.jar</emphasis> - contains
47
all the classes needed for the http and https transports to function as a
48
client and a server.</para>
50
<para><emphasis role="bold">jboss-remoting-http-client.jar</emphasis> -
51
contains all the classes needed for the http, https, servlet, and
52
sslservlet transports to function as a client only. This means will not be
53
able to perform any push callbacks or sending of streams using this
56
<para><emphasis role="bold">jboss-remoting-servlet.jar</emphasis> -
57
contains all the classes needed for the servlet or sslservlet transports
58
to function as a server only (also requires servlet-invoker.war be
59
deployed within web container as well).</para>
61
<para><emphasis role="bold">jboss-remoting-rmi.jar</emphasis> - contains
62
all the classes needed for the rmi and sslrmi transports to function as a
63
client and a server.</para>
65
<para><emphasis role="bold">jboss-remoting-bisocket.jar</emphasis> -
66
contains all the classes needed for the bisocket and sslbisocket transports
67
to function as both a client and a server.</para>
69
<para><emphasis role="bold">jboss-remoting-bisocket-client.jar</emphasis> -
70
contains all the classes needed for the bisocket and sslbisocket transports
71
to function as a client only. This means will not be able to perform any
72
push callbacks or sending of streams using this jar.</para>
74
<bridgehead>other</bridgehead>
76
<para><emphasis role="bold">jboss-remoting-serialization.jar</emphasis> -
77
contains just the remoting serialization classes (and serialization
78
manager implementations for java and jboss).</para>
80
<para><emphasis role="bold"><emphasis
81
role="bold">jboss-remoting-samples.jar</emphasis> </emphasis>- all the
82
remoting samples showing example code for different remotng
86
<title>Third party libraries</title>
88
<para>This section covers which thirdparty jars are required based on
89
the feature or transport to be used. Remember, any
90
jboss-remoting-XXX.jar can be replaced with just the
91
jboss-remoting.jar.</para>
93
<para> Table 1 gives the direct dependencies of the Remoting jars on
94
third party jars (and jboss-remoting-core.jar, in most cases). Table 2
95
gives the transitive closure of Table 1.</para>
97
<para>The information in Tables 1 and 2 was derived with the use of the
98
extremely useful <emphasis role="bold">Tattletale</emphasis> tool,
99
available on the jboss.org website:
100
<ulink url="http://www.jboss.org/tattletale">
101
http://www.jboss.org/tattletale</ulink></para>
103
<table frame="all" id="JarDependencyTable" xreflabel="Table 1">
104
<title>Jar dependencies.</title>
107
<colspec align="left" colname="c1" colnum="1" />
108
<colspec align="left" colname="c2" colnum="2" />
112
<entry align="center"><para>jar</para></entry>
113
<entry align="center"><para>depends on</para></entry>
119
<entry><para>jboss-remoting-bisocket-client.jar:</para></entry>
120
<entry><para>concurrent.jar, jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
123
<entry><para>jboss-remoting-bisocket.jar:</para></entry>
124
<entry><para>concurrent.jar, jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
127
<entry><para>jboss-remoting-core.jar:</para></entry>
128
<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>
131
<entry><para>jboss-remoting-detection.jar:</para></entry>
132
<entry><para>jboss-j2se.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jnpserver.jar, log4j.jar</para></entry>
135
<entry><para>jboss-remoting-http-client.jar:</para></entry>
136
<entry><para>jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar</para></entry>
139
<entry><para>jboss-remoting-http.jar:</para></entry>
140
<entry><para>jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jbossweb.jar</para></entry>
143
<entry><para>jboss-remoting-rmi.jar:</para></entry>
144
<entry><para>jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
147
<entry><para>jboss-remoting-samples.jar:</para></entry>
148
<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>
151
<entry><para>jboss-remoting-serialization.jar:</para></entry>
152
<entry><para>jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
155
<entry><para>jboss-remoting-servlet.jar:</para></entry>
156
<entry><para>jboss-logging-spi.jar, jboss-remoting-core.jar, servlet-api.jar</para></entry>
159
<entry><para>jboss-remoting-socket-client.jar:</para></entry>
160
<entry><para>concurrent.jar, jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar</para></entry>
163
<entry><para>jboss-remoting-socket.jar:</para></entry>
164
<entry><para>concurrent.jar, jboss-common-core.jar, jboss-logging-spi.jar, jboss-remoting-core.jar, jboss-serialization.jar</para></entry>
167
<entry><para>jboss-remoting.jar:</para></entry>
168
<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>
176
<table frame="all" id="JarTransitiveDependencyTable" xreflabel="Table 1">
177
<title>Transitive closure of jar dependencies.</title>
180
<colspec align="left" colname="c1" colnum="1" />
181
<colspec align="left" colname="c2" colnum="2" />
185
<entry align="center"><para>jar</para></entry>
186
<entry align="center"><para>depends on</para></entry>
192
<entry><para>jboss-remoting-bisocket-client.jar:</para></entry>
193
<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>
196
<entry><para>jboss-remoting-bisocket.jar:</para></entry>
197
<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>
200
<entry><para>jboss-remoting-core.jar:</para></entry>
201
<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>
204
<entry><para>jboss-remoting-detection.jar:</para></entry>
205
<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>
208
<entry><para>jboss-remoting-http-client.jar:</para></entry>
209
<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>
212
<entry><para>jboss-remoting-http.jar:</para></entry>
213
<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>
216
<entry><para>jboss-remoting-rmi.jar:</para></entry>
217
<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>
220
<entry><para>jboss-remoting-samples.jar:</para></entry>
221
<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>
224
<entry><para>jboss-remoting-serialization.jar:</para></entry>
225
<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>
228
<entry><para>jboss-remoting-servlet.jar:</para></entry>
229
<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>
232
<entry><para>jboss-remoting-socket-client.jar:</para></entry>
233
<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>
236
<entry><para>jboss-remoting-socket.jar:</para></entry>
237
<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>
240
<entry><para>jboss-remoting.jar:</para></entry>
241
<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>
248
<para><emphasis role="bold">Notes.</emphasis></para>
250
<para>1. jboss-remoting-core contains the transporter classes, and some of those
251
need jboss-remoting-detection.jar, which explains the proliferation of
252
jboss-remoting-detection.jar in Table 2. If transporters are not used,
253
then jboss-remoting-detection.jar can be omitted. Moreover, JNDI detection
254
requires jnpserver.jar, so that, if transporters are not used, jnpserver.jar
255
can be omitted.</para>
b'\\ No newline at end of file'