Hi Pete:
 
modify the config.xml to reflect the following changes and also place xerces.jar in front of any other parser.
 
 
  1. Configure WebLogic to use the same xerces.jar as Apache SOAP 2.2. To accomplish this, make the following changes to config.xml file.
    <Server InstrumentStackTraceEnabled="true" ListenPort="7001"

                         Name="myserver" NativeIOEnabled="true"

                        TransactionLogFilePrefix="config/mydomain/logs/"

                        XMLEntityCache="XMLCacheMBean"             XMLRegistry="Xerces JAXP">

2.      Add an xml registry tag as follows.

<XMLRegistry                      DocumentBuilderFactory="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl"

Name="Xerces JAXP" SAXParserFactory="org.apache.xerces.jaxp.SAXParserFactoryImpl"/>

 
 
XMLEntityCache entry sometimes gives problems, so if there is some problem starting weblogic, remove this entry.
 
 
Virender Sandhu
Senior Engineer
m-trilogix Inc.
Mobile Solutions Provider
www.m-trilogix.com
[EMAIL PROTECTED]
 
----- Original Message -----
Sent: Tuesday, April 23, 2002 8:59 PM
Subject: weblogic 6.1 and Apache soap 2.2

 
I've seen directions for swapping in Xerces 1.4 in Weblogic by putting it in the front of the classpath and configuring JAXP.  However, it appears that Weblogic discourages this practice (see below).  Has anyone ran into difficulties doing this?  Does anyone use SOAP 2.1 to work around this issue?
 
Thanks.
 
 
 
 
Can I plug in a version of Apache's Xerces XML parser that is different to the one that is built-in with WebLogic Serve 6.1 (Xerces 1.3.1)?

No. Each version of Apache's Xerces XML parser requires a different version of the DOM interfaces and there can be only one copy of the DOM interfaces in the WebLogic Server environment. Version 6.1 of WebLogic Server includes the version of DOM needed for Xerces 1.3.1 because the built-in parser of WebLogic Server 6.1 is based on Xerces 1.3.1. If you try to plug in a different version, say 1.X of Xerces, you will get an error when you parse XML documents because Xerces version 1.X is expecting the version 1.X of the DOM interfaces. If you try to put version 1.X of the DOM interfaces in front of weblogic.jar in the CLASSPATH environment variable before you start WebLogic Server, you will cause WebLogic Server not to work correctly because Xerces 1.3.1 is used internally and requires the Xerces 1.3.1 version of the DOM interfaces.

The real cause of this problem is that Xerces ships new versions of interfaces in each release. Unfortunately, this prevents mulitiple versions of Xerces from co-existing in the same CLASSPATH environment.

The problem only affects Xerces or other parsers that support the non-final features of DOM Level 2. It does not affect the Sun Project X or Crimson parsers because those parsers support DOM Level 1 whose portion of the DOM interfaces is the same in all versions

Reply via email to