Thank you for the reply.

Most of that article does not apply to us.  The Websphere Web Service feature 
pack is not installed.  The last paragraph entitled "Known Issues" matches our 
problem exactly.  3 options are given:

1) Upgrade to most current Websphere fix pack - We're on the most current fix 
pack so no upgrade can be done.

2) Remove the XmlBeans library.  I assume this is the xmlbeans-2.3.0.jar file.  
- I don't think we can remove the XML Beans jar since we're using XML Beans 
binding.  Is that right?


3) Remove the content from the org.w3c.dom package from the XmlBeans library.  
- Is this suggesting that the xmlbeans-2.3.0.jar be repackaged to exclude the 4 
classes in the org.w3c.dom package?  This will not fix the problem.  See below..


We've had IBM dive deeply into this.  The Xerces XML parser 
(xercesImpl-2.8.1.jar) includes the xml-apis. jar in its spec.  Regardless of 
whether the JRE includes those classes, why wouldn't the Axis2 distribution 
include the JAR?


IBM has told us that it comes down to the fact that there are references to the 
org.w3c.dom classes in the Xerces library.  These were resolved to the classes 
in the xml-apis JAR file before but now are being loaded by the JVM since they 
don't exist in the WAR.  This causes the VerifyError, a subclass of 
LinkageError.

As noted in the article, the problem started with the 
org.apache.xerces.dom.CoreDocumentImpl class.  It has a dependency on the 
org.w3c.dom.Notation class.  This was previously included in the xml-apis.jar 
file but is now missing.  It gets loaded from the JVM instead and causes the 
Verify Error.


What can I do to fix this problem?  We can temporarily fix the problem by 
manually including the xml-apis-1.3.04.jar file in the WAR.  I'd rather not do 
that.  Can this JAR be re-added to the Axis2 distribution to ensure the classes 
are loaded correctly?


Thanks.
J



On 11/24/2011 4:35 AM, Andreas Veithen wrote:
> Axis2 requires Java 1.5 and in that version, all the APIs defined by
> xml-apis are already included in the JRE. Therefore xml-apis is no
> longer necessary. Also note that the fact that the problem disappears
> after adding xml-apis to the WAR doesn't necessarily mean that the
> removal of the JAR in Axis2 1.5.x is the cause of the problem.
>
> The difficulty with class loading issues is that there are so many
> variables that it is virtually impossible to debug them from a
> distance. The first thing you should do is to realign your setup with
> the guidelines for deployment on WebSphere given in [1].
>
> Andreas
>
> [1] https://builds.apache.org/job/Axis2/site/docs/app_server.html#WebSphere
>
> On Wed, Nov 23, 2011 at 22:40, Jack Sprat<rexclaim...@yahoo.com>  wrote:
>> We have a situation in Websphere 6.1 where there is a class loading problem
>> with an Axis2 1.5.2 web service.  The class loading is set to PARENT_LAST on
>> the web app.  That is the first thing I always do with Axis2 web services
>> running on Websphere.
>> We've determined that the class loading problem comes from the fact that
>> classes are missing that were in prior versions of Axis2.  These were in the
>> xml-apis-1.3.04.jar file in Axis2 version 1.4.1.  The specific class causing
>> the problem is org.w3c.dom.Notation.  It is no longer present in the Axis2
>> 1.5.2 WAR and causes a linkage error.
>>
>> Manually adding the xml-apis-1.3.04.jar file from the Axis2 1.4.1
>> distribution to the Axis2 1.5.2 web application cures the problem.
>> Why was this JAR removed in newer versions?  How do I get around this error,
>> apart from manually adding a JAR from a prior distribution?  There must be a
>> better way.
>>
>> Any guidance is appreciated.
>> Thanks,
>> J

Reply via email to