24/11/2004, 17:31
|
| | | Fecha de Ingreso: enero-2002 Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 23 años Puntos: 1 | |
Hola Machine80, lo que dice aetrejo es ok, para conectarse de forma local a los EJB, solo para resumir:
1) Implementar las interfaces locales en los EJB, en lugar de las remotas. Ahora que si quieres acceder local y remotamente, se puede implementar ambas interfaces a la vez, claro ya no tendrias tres, sino cinco archivos.
2) En el ejb-jar.xml debes registrar las interfaces locales. Segun veo el codigo de tu descriptor ya lo has hecho.
3) Para acceder, es a travès del InitialContext directamente haciendo un lookup. tal como el codigo de aetrejo te lo muestra. Esto implica que el cliente y el EJB se encuentren en la misma JVM, es decir dentro del mismo servidor de aplicaciones corriendo. Recuerda que ya yu cliente no podria ser un cliente desktop, porque estaria fuera del contexto del servidor de aplicaciones. Aqui tu cliente tiene que ser un servlet, un JSP, u otro EJB.
4) En las comunicaciones locales, efectivamente ya no interviene RMI. Por eso, ya no se necesita manejar las RemoteException, ni utilizar el PortableRemoteObject.
Para detectar el error, primero verifica que el EJB este correctamente deployado. En tu servidor de aplicaciones te debe salir si esta en estado activo el EJB, y verifica cual es JNDI local que le has configurado en el descriptor.
Luego verifica que el programa cliente sea uno de los que te mencione y este dentro del mismo servidor de aplicaciones corriendo.
El error que mencionas, dice que no encuentra la clase, es probable que falte incluir algun jar a tu lib de tu aplicacion, o que esten el cliente y el EJB dentro de un EAR, asi ambos podran verse.
Espero te ayude,
__________________ Saludos,
H@C.. |