PQ99382: JSPBATCHCOMPILER FAILS TO COMPILE CLASSES IN THE <WAS_HOME>/LIB/APP DIRECTORY. | |||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||
APAR status Closed as program error. Error description JSPBatchCompiler fails to compile classes in the <WAS_HOME>/lib/app directory. Classes in the <WAS_HOME>/lib/ext directory compile properly. According to the customer, "The first error is saying that org.apache.log4j.* package doesn't exist. We have this JAR WebSphere\AppServer\lib\app folder of the application server. It seems like the jspbatchcompiler.bat is not seeing these libraries." D:/WebSphere/AppServer/temp/ciitd082/NavAppServer/CTSS_INFRASTRU CTURE/CO NWAY_NAVIGATOR_WEB.war/_LoggerTest_jsp_0.java:18: package org.apache.log4j does not exist import D:/WebSphere/AppServer/temp/ciitd082/NavAppServer/CTSS_INFRASTRU CTURE/CO NWAY_NAVIGATOR_WEB.war/_LoggerTest_jsp_0.java:90: cannot resolve symbol symbol : class Logger location: class _LoggerTest_jsp_0 A browser hit compiles the LoggerTest.jsp successfully. The problem is that the jspbatchcompiler.bat file is not assembling the classpath correctly; specifically, the \lib\app is not included, JDBC driver files are not included, and the JVM classpath is not included. There might be other exclusions; therefore, check \lib\ext and \lib. The command string used to invoke the JSPBatchCompiler is: D:\WebSphere\AppServer\bin\JSPBatchCompiler.bat -enterpriseApp CTSS_INFRASTRUCTURE -webModule CONWAY_NAVIGATOR_WEB.war -deprecation true -keepgenerated true > jspbatchcompiler.out 2>&1 The JSPBatchCompiler seems to have problems viewing information in shared classpaths. It cannot connect to the WebSphere/AppServer/lib/app directory. Also, it does not connect to the MQ JARs located in the JVM classpath or to the JDBCDriver.jar or oracledriver.jar that are created when the JDBC driver is created. This problem is similar to the problem fixed by PQ85052, which is a fix for WebSphere V5. A similar fix cannot be located for WebSphere V4.0.7.Local fix Meanwhile as a workaround adding the lib/app to the extension directory in the JspCompilerBatch file will let those jars be picked up during batcj compilation. The workaround is as follows: Please change the following information in your JSPBatchCompiler.bat file. Add the lib\app directory to your extensions directory in the JSPBatchCompiler file. Change the following line, -Dws.ext.dirs=%WAS_EXT_DIRS%, to -Dws.ext.dirs=%WAS_EXT_DIRS%;%WAS_HOME%\lib\app.Problem summary **************************************************************** * USERS AFFECTED: Users who batch compile JSPs which * * have a dependency on classes located * * inside the lib/app directory. * **************************************************************** * PROBLEM DESCRIPTION: When a JSP depends on classes located * * inside the lib/app directory, the * * batch compiler will fail to pick them * * up. On the other hand the runtime * * compiler is successful in loadig * * these classes. * **************************************************************** * RECOMMENDATION: * **************************************************************** The JSP batch compiler fails to pick up classes inside the lib/app directory; however, the runtime compiler does pick up the classes.Problem conclusion The JSP batch compiler is not synchronized with the runtime compiler when the lib/app directory is added to the classpath. The fix for this APAR is available in Interim Fix PQ99382.Temporary fix Comments
APAR is sysrouted FROM one or more of the following: APAR is sysrouted TO one or more of the following: Modules/Macros
|
Document Information |
Product categories: Software > Application Servers >
Distributed Application & Web Servers > WebSphere Application
Server > General
Operating system(s):
Software version: 400
Software edition:
Reference #: PQ99382
IBM Group: Software Group
Modified date: Mar 22, 2005
(C) Copyright IBM Corporation 2000, 2006. All Rights Reserved.