Bug 165202

Summary: wsgen fails when native jonas is installed
Product: [Fedora] Fedora Reporter: Gary Benson <gbenson>
Component: jonasAssignee: Fernando Nasser <fnasser>
Status: CLOSED INSUFFICIENT_DATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: triage
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: bzcl34nup
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-07 00:13:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Testcase none

Description Gary Benson 2005-08-05 12:00:44 UTC
Description of problem:
The wsgen ant task used by jonas fails with an IncompatibleClassChangeError if
natively compiled jonas is installed. Amongst other things this means that jonas
itself cannot be built.

Version-Release number of selected component (if applicable):
jonas-4.3.3-1jpp_8fc
libgcj-4.0.1-6

How reproducible:
Always

Steps to Reproduce:
Download the test script attached to this bug and run it with the above version
of jonas (and the corresponding jonas-examples) installed.

Expected results:
Whatever wsgen is supposed to do gets done.

Actual results:
java.lang.IncompatibleClassChangeError
   at java.lang.VMClassLoader.resolveClass(java.lang.Class)
(/usr/lib/libgcj.so.6.0.0)
   at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.6.0.0)
   at
com.sun.java.xml.ns.j2Ee.JavaWsdlMappingDocument$Factory.parse(java.io.InputStream)
(/usr/lib/gcj/jonas/ews-1.0-aph.jar.so)
   at
org.apache.geronimo.ews.jaxrpcmapping.XMLBeansJaxRpcMapper.loadMappingFromInputStream(java.io.InputStream)
(/usr/lib/gcj/jonas/ews-1.0-aph.jar.so)
   at org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.loadMapping()
(/usr/lib/gcj/jonas/ews-1.0-aph.jar.so)
   at org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.setup()
(/usr/lib/gcj/jonas/ews-1.0-aph.jar.so)
   at org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.run(java.lang.String)
(/usr/lib/gcj/jonas/ews-1.0-aph.jar.so)
   at
org.objectweb.jonas_ws.wsgen.generator.ews.EWSWsEndpointGenerator.generate()
(/usr/lib/gcj/jonas/ow_jonas_wsgen.jar.so)
   at org.objectweb.jonas_ws.wsgen.modifier.EjbJarModifier.modify()
(/usr/lib/gcj/jonas/ow_jonas_wsgen.jar.so)
   at org.objectweb.jonas_lib.genbase.modifier.AbsApplicationModifier.modify()
(/usr/lib/gcj/jonas/ow_jonas_genbase.jar.so)
   at org.objectweb.jonas_ws.wsgen.modifier.EjbJarModifier.modify()
(/usr/lib/gcj/jonas/ow_jonas_wsgen.jar.so)
   at org.objectweb.jonas_ws.wsgen.WsGen.execute(java.lang.String[])
(/usr/lib/gcj/jonas/ow_jonas_wsgen.jar.so)
   at org.objectweb.jonas_ws.wsgen.WsGen.main(java.lang.String[])
(/usr/lib/gcj/jonas/ow_jonas_wsgen.jar.so)
   at java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
(/usr/lib/libgcj.so.6.0.0)
   at org.objectweb.jonas.server.Bootstrap.main(java.lang.String[])
(/usr/lib/gcj/jonas/ow_jonas_bootstrap.jar.so)
   at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
   at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)

Comment 1 Gary Benson 2005-08-05 12:00:44 UTC
Created attachment 117487 [details]
Testcase

Comment 2 Gary Benson 2005-08-05 12:46:07 UTC
The presence or absence of /usr/lib/gcj/jonas/ews-1.0-aph.jar.so governs whether
this bug occurs or not.

Comment 3 Andrew Haley 2005-08-08 16:40:30 UTC
I duplicated this.  Thanks for the great test case!

Comment 4 Andrew Haley 2005-08-08 16:40:49 UTC
AFAICS this isn't a bug.

We're trying to resolve an interface call in
com.sun.java.xml.ns.j2Ee.JavaWsdlMappingDocument$Factory 
to 

#12: InterfaceMethodref class: 71=org.apache.xmlbeans.SchemaTypeLoader
name_and_type: 81=<newValidatingXMLInputStream
(org.apache.xmlbeans.xml.stream.XMLInputStream,org.apache.xmlbeans.SchemaType,org.apache.xmlbeans.XmlOptions)org.apa
che.xmlbeans.xml.stream.XMLInputStream>

(jcf-dump -v -classpath root/lib/common/tools/ews-1.0.jar
com.sun.java.xml.ns.j2Ee.JavaWsdlMappingDocument\$Factory)

There are the methods called parse in org.apache.xmlbeans.SchemaTypeLoader:

public abstract org.apache.xmlbeans.XmlObject "parse"(java.lang.String,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject "parse"(java.io.File,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject "parse"(java.net.URL,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject "parse"(java.io.InputStream,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject "parse"(java.io.Reader,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject "parse"(org.w3c.dom.Node,
org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.XmlOptions)
public abstract org.apache.xmlbeans.XmlObject
"parse"(weblogic.xml.stream.XMLInputStream, org.apache.xmlbeans.SchemaType,
org.apache.xmlbeans.XmlOptions)

(jcf-dump --javap -classpath
root/lib/common/tools/ews-1.0.jar:/home/aph/root/lib/commons/tools/xbean-apache-1.0-DEV.jar
org.apache.xmlbeans.SchemaTypeLoader)

As you can see, there is no method in
org.apache.xmlbeans.SchemaTypeLoader that matches the required
signature.  The closest is the last one, but that has
weblogic.xml.stream.XMLInputStream as its first arg rather than
org.apache.xmlbeans.xml.stream.XMLInputStream.

The important issue is this: where did
com.sun.java.xml.ns.j2Ee.JavaWsdlMappingDocument$Factory come from?  I
doubt that it was ever compiled against any classes that we have,
because it references a class
(org.apache.xmlbeans.xml.stream.XMLInputStream) that AFAICS we do not have.



Comment 5 Gary Benson 2005-08-09 06:56:51 UTC
Thanks!  The class is in the ews jarfile that we rebuilt against our axis.  I
guess that the version of xmlbeans that maven downloads during the build is not
the same version as is bundled in the jonas jarfile.  People shouldn't be
building JPackages with these bundled binary jarfiles as they cause no end of
trouble.

Comment 6 Bug Zapper 2008-04-03 16:16:19 UTC
Based on the date this bug was created, it appears to have been reported
against rawhide during the development of a Fedora release that is no
longer maintained. In order to refocus our efforts as a project we are
flagging all of the open bugs for releases which are no longer
maintained. If this bug remains in NEEDINFO thirty (30) days from now,
we will automatically close it.

If you can reproduce this bug in a maintained Fedora version (7, 8, or
rawhide), please change this bug to the respective version and change
the status to ASSIGNED. (If you're unable to change the bug's version
or status, add a comment to the bug and someone will change it for you.)

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we're following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

Comment 7 Bug Zapper 2008-05-07 00:13:21 UTC
This bug has been in NEEDINFO for more than 30 days since feedback was
first requested. As a result we are closing it.

If you can reproduce this bug in the future against a maintained Fedora
version please feel free to reopen it against that version.

The process we're following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp