@ Comunicación JNDI remota: Wildfly a JBoss AS 5.1.0.GA
Arquitectura: Cliente Windows -> Servicios Wildfly JAX-RS -> Sistema heredado JBoss 5.1.0.GA.
Recibo una excepción java.lang.ClassCastException: javax.naming.Reference no se puede transmitir a com.interfaces.GroupBookingManagerRemote cuando me comunico aquí entre Wildfly JAX-RS Services y el sistema heredado JBoss 5.1.0.GA.
Cuando me comunico desde Wildfly a JBoss AS 5.1.0.GA, intento conectarme utilizando JNDI.
En mi Wildfly Server Maven pom incluyo:
<dependency>
<groupId>jboss</groupId>
<artifactId>jnp-client</artifactId>
<version>4.2.2.GA</version>
</dependency>
Esto me da acceso a las clases e interfaces org.jnp. * Requeridas.
Simplemente uso el siguiente código para conectarme a mi máquina remota y recuperar un GroupBookingManager. Sin embargo, el problema aparece cuando intento transmitir la clase a la interfaz GroupBookingManagerRemote.
Properties env = new Properties();
env.setProperty(Context.PROVIDER_URL, "jnp://myremoteserver:1099");
env.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
env.setProperty(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
InitialContext initialContext = new InitialContext(env);
Object ref = initialContext.lookup("MyEARFile/GroupBookingManager/remote");
if (ref != null) {
bookingManager = (GroupBookingManagerRemote) ref; // java.lang.ClassCastException: javax.naming.Reference cannot be cast
}
Tengo un archivo myclient.jar que he agregado a mi aplicación Wildfly que contiene la interfaz remota GroupBookingManagerRemote.
¿Alguien ve algún problema con lo que he hecho?
Gracias,
Darren