Hi, all.
I have 2 JBoss instances in cluster, running in the same machine. I configure all settings - so it seems, that they works correctly together.
I have 3 EJB, which marked as clustered. These beans work together - so SLSB EJB use other two entity beans. I deploy SLSB on one JBoss instance and entity beans - on another JBoss instance. Because JBoss instances works in cluster, all these EJB must be available via HA-JNDI. So, from my client, I get access to SLSB via:
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
ht.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
ht.put(Context.PROVIDER_URL, ""); //multicasting
InitialContext ctx = new InitialContext(ht);
It works.
In SLSB in order to get access to entity beans I also try multicasting, but it doesn't work - say, that entity bean is not bind. When I try to specify both my JBoss hosts:
ht.put(Context.PROVIDER_URL, "localhost:1100,localhost:2100");
it says:
[java] java.lang.Exception: java.rmi.MarshalException: error marshalling ar
guments; nested exception is:
[java] java.io.NotSerializableException: org.jboss.tm.TransactionImpl
Whats wrong? Why I can't use multicasting from EJB?