© Copyright International Business Machines Corporation 2006. All rights reserved. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM® Corp.
If an Enterprise JavaBean (EJB) module is shared among multiple EAR projects running on a WebSphere Application Server and one of the EAR project is removed from the server, other EAR projects must be restarted before they can access the resources, such as EJB beans, in the EJB project.
If you do not take this action, you might see error messages similar to those shown below. These errors happen because Java Naming and Directory Interface (JNDI) name in the EJB project are removed from the server when the EAR is removed.
Here is a sample error message:
00000028 SystemOut O javax.naming.NameNotFoundException: Context: myCell/nodes/myNode/servers/server1, name: ejb/ejbs/Session20Home: First component in name Session20Home not found. [Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0]
at com.ibm.ws.naming.jndicos.CNContextImpl.processNotFoundException(CNContextImpl.java:4730)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1907)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1862)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1552)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1354)
at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:172)
at javax.naming.InitialContext.lookup(InitialContext.java:363)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.lookupAndCacheHome(AbstractAccessBean.java:224)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getGlobalHome(AbstractAccessBean.java:216)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getHome(AbstractAccessBean.java:249)
at ejbs.Session20AccessBean.ejbHome(Session20AccessBean.java:50)
at ejbs.Session20AccessBean.instantiateEJB(Session20AccessBean.java:80)
at ejbs.Session20AccessBean.foo(Session20AccessBean.java:91)
Suppose you have a project, for example an Application Client project, with the following configurations:
- the project facet for Java is set to version 1.4
- the target server runtime for this project has the hot method replacement option enabled in its server configuration
You may experience the Resume button in the Debug view does not work properly. For example, when you run the application on the server in debug mode, you attempt to change the source at runtime and then use the Resume button to continue debugging your application. You may experience your hot method replacement changes to the source code does not get applied.
Try clicking the Resume button twice to allow the runtime changes to take into effect.
Note: This problem does not occur when you set the project facet for Java to version 5.0.
If you add a utility JAR file to Web Libraries for a Web project and refer to classes inside the JAR file in your code, you might get a java.lang.NoClassDefFoundError error when you try to run the application on the server.
The workaround is after adding a utility JAR file to the EAR module, then add the JAR file to the J2EE Modules dependencies of the Web project, by completing the following steps:
- Add a utility JAR file to the EAR module. See the Adding project utility JAR files topic in the product help for details.
- Right-click on your Web project and select Properties. The Properties dialog box opens.
- Select J2EE Modules Dependencies.
- In the J2EE Modules tab under the JAR/Module column, select the check box beside your utility JAR file.
If the remote server is stopped, the New Server wizard may take a long time to complete after you click the Finish button. A workaround is to start the remote server before you click the Finish button in the New Server wizard.
If a secured WebSphere Application Server v6.1 is started and in the server editor you change the server connection type to either remote method invocation (RMI) or SOAP, you might see the following publish fail error message after you save the changes in the server editor:
Publish is not performed since the server is not started. Start the server before performing the publish operation.
You can safely ignore the error. Optionally, after the status of the server in the Servers view is Started, you can complete a publish command (in the Servers view, right-click the server and select Publish).