Hi, I had an interesting issue with struts 1.2.9 on AS400. Briefly, it throws an SAXNotRecognizedException when initializing the ActionServlet. Struts 1.2.9 uses commons-digester (1.6) to parse the struts-config.xml. And for whatever the reason, the original application put a xercesImpl.jar (2.6.2) under WEB-INF/lib.
The exception was thrown from the following statement of method XercesParser.configureXerces(): factoty.setFeature(XERCES_DYNAMIC, true); commons-digester check the parser version to set these feature. However, its getVersion() method looks dangerous. At line 106, 107 of XercesParser.class of commons-digester.jar (1.6), the getVersion() method is expected to return a string like "Xerces-J 2.X.0", but actually in our case, it returns "XML4J 4.0.13". Then the next substring() return "0" instead of "2.6". It 's lucky that "Xerces-J" and "XML4J 4." both have length 8. The reason is on WAS 5.1, it actually used the xercesImpl.jar under plugins/org.apache.xerces-4.0.13, not the one under WEB-INF/lib. We end up removing the xercesImpl.jar under WEB-INF/lib, it works. Any comment? Regards, Jason --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]