3/15/2007

Tomcat Vs OC4J

Couple of differences between Tomcat and Oracle Application Server (OC4J)...There could be more...

org.w3c.dom.Document:getElementsByTagName()
Tomcat (Xerces): doc.getElementsByTagName("SOAP-ENV:Envelope") is valid. It treats the namespace as if it were just part of the tag name.
OC4J (oraclexmlparserv2): doc.getElementsByTagName("SOAP-ENV:Envelope") is not valid
Solution: Use doc.getElementsByTagNameNS(). To use this method, you must make sure to call setNamespaceAware(true) on your DocumentBuilderFactory.

javax.xml.parsers.DocumentBuilderFactory:isNamespaceAware()
Tomcat (Xerces): Defaults to false
OC4J (oraclexmlparserv2): Defaults to true (which contradicts the documentation http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/DocumentBuilderFactory.html#setNamespaceAware(boolean))

Class:forName()
Tomcat: Always Throws ClassNotFoundException if the class isn't found
OC4J: Throws NoClassDefFoundError in some situations if the class isn't found

No comments:

Tired of seeing that 500 Bad gateway error while deploying a Springboot application in AWS...?

By default, Spring Boot applications will listen on port 8080. Elastic Beanstalk assumes that the application will listen on port 5000. Th...