Scenario:
1. Both WebSphere Application Server (server1) and a simple client
(server2) are running without any problems.
2. Server1 is brought down and back up again without restarting the
client.
3. Client on server2 fails to run with the following errors:
Java RemoteException -- System Level
java.rmi.RemoteException: CORBA TRANSIENT 0x4942f301 No; nested
exception is:
org.omg.CORBA.TRANSIENT: Connection refused:host=192.168.1.100,port=55111
vmcid: IBM minor code: 301 completed: No
at
com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl
java:258)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:83)
at com.gang.test._HelloWLMHome_Stub.create(_HelloWLMHome_Stub.java:222)
at com.gang.test.client.TestUid.main(TestUid.java:54)
Caused by: org.omg.CORBA.TRANSIENT: Connection
refused:host=192.168.1.100,port=55111 vmcid: IBM minor code:
301
completed: No
The client needs to clear the JNDI cache. There are three JNDI cache
properties; by default it is set to populated.
- Populated
Use a cache with the specified name. If the cache already exists, leave
existing cache entries in the cache; otherwise, create a new one.
- Cleared
Use a cache with the specified name. If the cache already exists, clear
all cache entries from the cache; otherwise, create a new cache.
- None
Do not cache. If this option is specified, the cache name is irrelevant.
Therefore, this option will not disable a cache that is already associated
with other InitialContext instances. The InitialContext that is initiated
is not associated with any cache.
In this scenario, there are two options. Set the cache property to
None or Cleared. Setting the property to none can affect
performance because there are no cached entries. To set, follow this
example:
com.ibm.websphere.naming.jndicache.cacheobject=none
Set the property on the client in one of the following ways.
|