[jboss-user] [JNDI/Naming/Network] - Re: distributed application
vphagura
do-not-reply at jboss.com
Sat May 16 23:22:56 EDT 2009
Code where the exception happens is on the 'return line where the cast is:
public FlightReservationAccessorRemote getFlightReservationAccessorRemote() throws NamingException
| {
| return (FlightReservationAccessorRemote)fetchRemoteObject( "flightReservationAccessorRemote", "FlightReservationAccessorBean" );
| }
Lookup is done here:
private Object fetchRemoteObject(String key, String clsName ) throws NamingException
| {
| Object ret = null;
| if( cache.containsKey( key ))
| {
| ret = cache.get( key );
| log.info( "Got it from CACHE..." );
| }
| else
| {
| if( ctx != null )
| {
| log.info(clsName );
| ret = ctx.lookup( "reservation/" + clsName + "/remote");
| if( ret != null )
| {
| cache.put( key, ret );
| }
| }
| }
| return ret;
| }
Here is the full JNDIView listing from 'Global JNDI Namespace'
+- UserTransactionSessionFactory (proxy: $Proxy103 implements interface org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory)
| +- UUIDKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory)
| +- HiLoKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.hilo.HiLoKeyGeneratorFactory)
| +- XAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
| +- topic (class: org.jnp.interfaces.NamingContext)
| +- reservation (class: org.jnp.interfaces.NamingContext)
| | +- FlightReservationAccessorBean (class: org.jnp.interfaces.NamingContext)
| | | +- local (class: Proxy for: com.vsp.reservation.ejb.accessor.FlightReservationAccessor)
| | | +- local-com.vsp.reservation.ejb.accessor.FlightReservationAccessor (class: Proxy for: com.vsp.reservation.ejb.accessor.FlightReservationAccessor)
| | | +- remote (class: Proxy for: com.vsp.reservation.ejb.accessor.FlightReservationAccessorRemote)
| | | +- remote-com.vsp.reservation.ejb.accessor.FlightReservationAccessorRemote (class: Proxy for: com.vsp.reservation.ejb.accessor.FlightReservationAccessorRemote)
| | +- ReservationAccessorBean (class: org.jnp.interfaces.NamingContext)
| | | +- local (class: Proxy for: com.vsp.reservation.ejb.accessor.ReservationAccessor)
| | | +- remote-com.vsp.reservation.ejb.accessor.ReservationAccessorRemote (class: Proxy for: com.vsp.reservation.ejb.accessor.ReservationAccessorRemote)
| | | +- remote (class: Proxy for: com.vsp.reservation.ejb.accessor.ReservationAccessorRemote)
| | | +- local-com.vsp.reservation.ejb.accessor.ReservationAccessor (class: Proxy for: com.vsp.reservation.ejb.accessor.ReservationAccessor)
| | +- CarReservationAccessorBean (class: org.jnp.interfaces.NamingContext)
| | | +- local (class: Proxy for: com.vsp.reservation.ejb.accessor.CarReservationAccessor)
| | | +- local-com.vsp.reservation.ejb.accessor.CarReservationAccessor (class: Proxy for: com.vsp.reservation.ejb.accessor.CarReservationAccessor)
| | | +- remote-com.vsp.reservation.ejb.accessor.CarReservationAccessorRemote (class: Proxy for: com.vsp.reservation.ejb.accessor.CarReservationAccessorRemote)
| | | +- remote (class: Proxy for: com.vsp.reservation.ejb.accessor.CarReservationAccessorRemote)
| | +- HotelReservationAccessorBean (class: org.jnp.interfaces.NamingContext)
| | | +- remote (class: Proxy for: com.vsp.reservation.ejb.accessor.HotelReservationAccessorRemote)
| | | +- remote-com.vsp.reservation.ejb.accessor.HotelReservationAccessorRemote (class: Proxy for: com.vsp.reservation.ejb.accessor.HotelReservationAccessorRemote)
| | +- CustomerAccessorBean (class: org.jnp.interfaces.NamingContext)
| | | +- local (class: Proxy for: com.vsp.reservation.ejb.accessor.CustomerAccessor)
| | | +- local-com.vsp.reservation.ejb.accessor.CustomerAccessor (class: Proxy for: com.vsp.reservation.ejb.accessor.CustomerAccessor)
| | | +- remote-com.vsp.reservation.ejb.accessor.CustomerAccessorRemote (class: Proxy for: com.vsp.reservation.ejb.accessor.CustomerAccessorRemote)
| | | +- remote (class: Proxy for: com.vsp.reservation.ejb.accessor.CustomerAccessorRemote)
| +- persistence.unit:unitName=reservation.ear (class: org.jnp.interfaces.NamingContext)
| | +- reservation.jar#reservation(class: org.hibernate.impl.SessionFactoryImpl)
| +- ClusteredConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
| +- ProfileService (class: AOPProxy$0)
| +- queue (class: org.jnp.interfaces.NamingContext)
| | +- DLQ (class: org.jboss.jms.destination.JBossQueue)
| | +- ExpiryQueue (class: org.jboss.jms.destination.JBossQueue)
| +- ClusteredXAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
| +- UserTransaction (class: org.jboss.tm.usertx.client.ClientUserTransaction)
| +- ConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
| +- jmx (class: org.jnp.interfaces.NamingContext)
| | +- invoker (class: org.jnp.interfaces.NamingContext)
| | | +- RMIAdaptor (proxy: $Proxy98 implements interface org.jboss.jmx.adaptor.rmi.RMIAdaptor,interface org.jboss.jmx.adaptor.rmi.RMIAdaptorExt)
| | +- rmi (class: org.jnp.interfaces.NamingContext)
| | | +- RMIAdaptor[link -> jmx/invoker/RMIAdaptor] (class: javax.naming.LinkRef)
| +- TomcatAuthenticators (class: java.util.Properties)
| +- console (class: org.jnp.interfaces.NamingContext)
| | +- PluginManager (proxy: $Proxy100 implements org.jboss.console.manager.PluginManagerMBean (no security manager: RMI class loader disabled))
|
| Here is the Bean and the Remote interface, in case:
|
|
| @Stateless
| | public class FlightReservationAccessorBean implements FlightReservationAccessor, FlightReservationAccessorRemote
| | {
| | @PersistenceContext( unitName="reservation" )
| | EntityManager eMgr;
| |
| | public Integer createFlightResevation( Flight flight ) throws Exception
| | {
| | eMgr.persist( flight );
| | return flight.getFlightId();
| | }
| |
| | public void deleteFlightResevation( Flight flight ) throws Exception
| | {
| | eMgr.remove( flight );
| | }
| |
| | @TransactionAttribute(TransactionAttributeType.NEVER)
| | public Flight findFlightById( Integer id ) throws Exception
| | {
| | return eMgr.find( Flight.class, id );
| | }
| |
| | public void updateFlightResevation( Flight flight ) throws Exception
| | {
| | eMgr.merge( flight );
| | }
| |
| | }
|
| @Remote
| | public interface FlightReservationAccessorRemote extends FlightReservation
| | {
| | }
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4231455#4231455
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4231455
More information about the jboss-user
mailing list