Tomcat fails to load

(Last modified: 18May2004)

This document (10092883) is provided subject to the disclaimer at the end of this document.

fact

Novell NetWare NetWare 6.5 SP1

Tomcat 4.1.18 

symptom

Error: "org.apache.commons.digester.Digester fatalError  SEVERE: Parse Fatal Error at line 211 column 43: The reference to entity "xyz" must end with the ';' delimiter.  org.xml.sax.SAXParseException: The reference to entity "xyz" must end with the ';' delimiter. "

Error:  "java: Class org.apache.catalina.startup.Bootstrap exited with status 1"

Unable to load Tomcat 4.

cause

The server.xml file contains the path to the tomcat-roles organizational unit created during the Tomcat install. If the path to this OU contains a character that is either a directive or command in xml, the parsing of this file will fail with the above error.

Example from server.xml file:

roleBase="ou=Tomcat-Roles,OU=IS&T,OU=DUKE,O=UNC"

In this case the '&' will be read as a directive, not as a character, causing the parsing of this file to fail.

fix

Open the server.xml file located in the sys:/tomcat/4/conf directory. Find the roleBase line and change the '&' to the ASCII value for the ampersand with the leading '#' sign.

Example  from server.xml file:

roleBase="ou=Tomcat-Roles,OU=IS#38T,OU=DUKE,O=UNC"

Save the file and load Tomcat with the tomcat4 command.

The same would apply to any character used in the server context that is either a command or directive in xml. Find the ASCII value for that character and use that value proceeded with the '#' sign.

**The same change will need to be made in the admin_tomcat.xml file for the tcadmup instance of Tomcat. After the change is made to the admin_tomcat.xml file located in the sys:/adminsrv/conf directory, run tcadmup.

note

This is an example of the entire Java stack dump that would be seen from the logger screen when the process fails:

java: Class com.novell.application.tomcat.util.tccheck.LDAPVerifier exited succe
ssfully                                                                        
13-May-2004 18:01:23 org.apache.commons.digester.Digester fatalError           
SEVERE: Parse Fatal Error at line 210 column 55: The reference to entity "NI" mu
st end with the ';' delimiter.                                                 
org.xml.sax.SAXParseException: The reference to entity "NI" must end with the ';
' delimiter.                                                                   
        at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Un
known Source)                                                                  
        at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
                                                                               
        at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
        at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
        at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)  
        at org.apache.xerces.impl.XMLScanner.scanAttributeValue(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanAttribute(U
nknown Source)                                                                 
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElemen
t(Unknown Source)                                                              
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent
Dispatcher.dispatch(Unknown Source)                                            
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Un
known Source)                                                                  
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)  
        at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)    
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)           
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)   
        at org.apache.commons.digester.Digester.parse(Digester.java:1548)      
        at org.apache.catalina.startup.Catalina.start(Catalina.java:449)       
        at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)     
        at org.apache.catalina.startup.Catalina.process(Catalina.java:180)     
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)                                                                       
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)                                                               
        at java.lang.reflect.Method.invoke(Method.java:324)                    
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)      
Catalina.start: org.xml.sax.SAXParseException: The reference to entity "NI" must
 end with the ';' delimiter.                                                   
org.xml.sax.SAXParseException: The reference to entity "NI" must end with the ';
' delimiter.                                                                   
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)   
        at org.apache.commons.digester.Digester.parse(Digester.java:1548)      
        at org.apache.catalina.startup.Catalina.start(Catalina.java:449)       
        at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)     
        at org.apache.catalina.startup.Catalina.process(Catalina.java:180)     
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)                                                                       
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)                                                               
        at java.lang.reflect.Method.invoke(Method.java:324)                    
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)      
java: Class org.apache.catalina.startup.Bootstrap exited with status 1         

.

document

Document Title: Tomcat fails to load
Document ID: 10092883
Solution ID: NOVL96992
Creation Date: 14May2004
Modified Date: 18May2004
Novell Product Class:Web Services

disclaimer

The Origin of this information may be internal or external to Novell. Novell makes all reasonable efforts to verify this information. However, the information provided in this document is for your information only. Novell makes no explicit or implied claims to the validity of this information.
Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information.