If youâ€™ve created a J2EE JHeadstart/BC4J application and you want to deploy it to the Oracle Application Server, it works easily. If you want to deploy it to IBM WebSphere, it will also work fine if you take care of the following:
1. Make sure you have all the necessary BC4J libraries available:
Visit http://www.oracle.com/technology/products/jdev/howtos/appservers/deploy_bc4j_to_websphere.html for a list of all the files you need. Add the jar-files to the WEB-INF\lib directory of your application.
2. Enable Log4J logging
IBM has implemented commons-logging for WebSphere 5.1, which is leading. JHeadstart works with log4j. You can enable the log4j logging by doing the following:
- Add a directory â€˜servicesâ€™ to the META-INF directory of your application.
- Add a new file with the name â€˜org.apache.commons.logging.LogFactoryâ€™
- Add the following text to the file, to indicate the log4j factory: org.apache.commons.logging.impl.Log4jFactory
3. Change the default XML parser
Oracle uses the Oracle XML parser as default, but IBM uses Xerces. Add the Oracle XML parser to the WEB-INF\lib directory of your application and if present, remove the xerces parser (also when you need the xerces parser in your application!). Now the Oracle XML parser will be used as default and since WebSphere also contains the xerces parser itself, it can still be used when necessary.
This solutions was found with help of Meindert Deen from Xebia.