Testing and publishing (server) tools Release Notes

© 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.

Release notes

1.0 Limitations
   1.1 Removing EJB module shared in multiple EAR projects
2.0 Known problems and workarounds
   2.1 Hot method replacement does not get applied after resuming in debug mode
   2.3 java.lang.NoClassDefFoundError error when a utility JAR file is added to Web Libraries
   2.3 New Server wizard may take longer to complete when the remote server is stopped
   2.4 Switching server connection type for a secured WebSphere Application Server v6.1

1.0 Limitations

1.1 Removing EJB module shared in multiple EAR projects

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)
 

2.0 Known problems and workarounds

2.1 Hot method replacement does not get applied after resuming in debug mode

Suppose you have a project, for example an Application Client project, with the following configurations:

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.

2.2 java.lang.NoClassDefFoundError error when a utility JAR file is added to Web Libraries

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:

  1. Add a utility JAR file to the EAR module.  See the Adding project utility JAR files topic in the product help for details.
  2. Right-click on your Web project and select Properties.  The Properties dialog box opens.
  3. Select J2EE Modules Dependencies.  
  4. In the J2EE Modules tab under the JAR/Module column, select the check box beside your utility JAR file.

2.3 New Server wizard may take longer to complete when the remote server is stopped

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.

2.4 Switching server connection type for a secured WebSphere Application Server v6.1

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).