BOE XI3.1SP5 FP5.3
Tomcat 7 64 bit
OS Windows 2008
I am upgrading hardware and decided to take advantage of Tomcat 7 64bit as I will be able to utilize much more memory. It is supported and there is an SAP note 1686741 (woefully incomplete) on how to configure.
I have all software installed and run the wdeploy tool. Works great. No errors. No I configure the web.xml files for every site in the C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps. I specifically want to make changes to make authentication visible in InfoViewApp. I stop Tomcat, make the changes, delete the working localhost and restart Tomcat. The settings in the web-inf\web.xml file are not taking effect. Strange. I research the logs and verify that they are being ignored.
Turns out the context files were not configured correctly for Tomcat 7 by the wdeploy tool. The errors/warnings included (in the log)
Dec 12, 2012 12:57:36 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\Catalina\localhost\AnalyticalReporting.xml
Dec 12, 2012 12:57:36 PM org.apache.catalina.startup.SetContextPropertiesRule begin
WARNING: [SetContextPropertiesRule]{Context} Setting property ‘debug’ to ‘0’ did not find a matching property.
Dec 12, 2012 12:57:36 PM org.apache.catalina.startup.SetContextPropertiesRule begin
WARNING: [SetContextPropertiesRule]{Context} Setting property ‘trusted’ to ‘false’ did not find a matching property.
Dec 12, 2012 12:57:45 PM org.apache.catalina.startup.ContextConfig processAnnotationsJar
SEVERE: Unable to process Jar entry [com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class] from Jar [jar:jndi:/localhost/AnalyticalReporting/WEB-INF/lib/icu4j.jar!/] for annotations
Issue 1
debug and trusted are no longer properties in the context files found here
C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\Catalina\localhost. I removed them.
Issue 2
Even though I edited the wedploy tomcat7.xml file correctly, the context files pointed to the tomcat5 war files.
Issue 3
Old version of icu4j.jar was included in the war files from SAP. The PINYIN class is a known issue and resolved in later versions. How does this junk get released? I logged an issue with SAP but a week has gone by without a response, so I unpacked the war files and replaced the icu4j.jar with a later version. Be sure you have good backups if you take this approach.
Issue 4 (and the one that finally resolved the web.xml not being read and it is a new feature of Tomcat 7)
Tomcat has changed how docBase functions. The issue was in deploying war files. Once I copied the unpacked webapps folder to c:\webapps and changed the docBase to the unpacked verion, I now have no errors/warnings and the settings in web.xml are being read/used. I verified by turning on the switch logEffectiveWebXml
So website suggest that you can continue to use war files in the docBase if you add
<Resources
className=“org.apache.naming.resources.WarDirContext”
allowLinking=“true” />
I tried that and the war files did unpack, but it did not resolve the issue of not reading the web.xml file.
I backed up each file and removed these properties:
Before:
After:
<Context docBase=“C:/webapps/BusinessProcessBI” path=“/BusinessProcessBI” useHttpOnly=“false” reloadable=“false” crossContext=“false” logEffectiveWebXml="true />
I am not sure I am loving deploying from unpacked war files (directory structure), but it works.
hcrowe (BOB member since 2008-10-20)