I'm curious and I hope I don't sound too stupid by asking this question.

I have a system that involves in its simplest form 2 subsystems, each of which 
is hosted on a separate machine running JBoss 4.0.5.GA. It happens that a 
component hosted in subsystem A wants to send a message to a queue hosted in 
subsystem B. Now I realize that it is possible to configure a remote connection 
factory in jms-ds.xml (I'm using JBoss Messaging, by the way) and this works 
fine. Perhaps it's even preferrable because the connections are pooled.

However, it should also be possible to create an InitialContext referencing the 
remote machine directly, as any free-standing component would do (and, in fact, 
this works fine, since the class loading hierarchy is simpler and the necessary 
classes are available on the client side in jboss-messaging-client.jar). If I 
try this, however, the lookup call fails with a ClassNotFoundException: 
org.jboss.jms.client.ClientConnectionFactory with the tag that RMI Classloading 
is not enabled. This class is the type of the object which we are trying to 
lookup.

My impression of what is going on is that, because the JBoss Messaging core 
classes are loaded by some mysterious ClassLoader which is neither the current 
not the thread's context ClassLoader, the lookup has no other recourse that to 
try and download the class definition from the remote server, which it cannot 
do.

My question is this: is it expressly forbidden by the J2EE specification to 
enable RMI Classloading from within a J2EE container? Or is it simply bad 
practice? Or is it neither of these, in which case, is there way to enable RMI 
classloading in JBoss?

Many thanks,
Adam

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4023781#4023781

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4023781
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to