On Thu, Sep 25, 2008 at 12:25 PM, Dave Sowerby <[EMAIL PROTECTED]>wrote:
> Thanks Raymond, that's proved quite useful. > > After some investigation, I've realised I'm now stuck in a position > where my Tuscany client-in-an-ejb's class loader has weblogic.jar > earlier than any application jars and so XMLInputFactory.newInstance() > always returns the broken weblogic implementation. I've tried a few > approaches to resolving this, such as using weblogic-application.xml > to attempt to force the javax.xml.* classes to be loaded from the > application classloader. > > Does anyone know of any potential workaround to such a problem? I > guess even specifying that if > "weblogic.xml.stax.XMLStreamInputFactory" is returned from such a call > that we should fall back on a different implementation would be > preferable. > > > Cheers, > > Dave. > > -- > Dave Sowerby MEng MBCS > > On Thu, Sep 25, 2008 at 8:11 AM, Raymond Feng <[EMAIL PROTECTED]> wrote: > > IIRC, somebody reported a similar issue before. It seems to be a weblogic > > stax parser bug. See: > > > http://www.nabble.com/Working-around-(Weblogic)-StAX-issues-td18952833.html<http://www.nabble.com/Working-around-%28Weblogic%29-StAX-issues-td18952833.html> > > > > Thanks, > > Raymond > > > > -------------------------------------------------- > > From: "Dave Sowerby" <[EMAIL PROTECTED]> > > Sent: Wednesday, September 24, 2008 10:10 PM > > To: <[email protected]> > > Subject: Stack from BaseAssemblyProcessor > > > >> Hi All, > >> > >> I'm just testing out the 1.3.2 build and I'm seeing the below stack > >> when using SCANode2's createSCANodeFromClassLoader. > >> > >> I guess the problem here is that this is being called within a > >> weblogic application and due to classloading issues I've been forced > >> to use the inbuilt xml libraries in order to get this to work on > >> 1.3/1.3.1, however this one is all new..... > >> > >> Does anyone have any thoughts on this one? > >> > >> Cheers, > >> > >> Dave. > >> > >> Caused by: java.lang.IllegalArgumentException: prefix cannot be "null" > >> when creating a QName > >> at javax.xml.namespace.QName.<init>(QName.java:220) > >> at > >> > weblogic.xml.stax.XMLStreamReaderBase.getAttributeName(XMLStreamReaderBase.java:339) > >> at > >> > javax.xml.stream.util.StreamReaderDelegate.getAttributeName(StreamReaderDelegate.java:128) > >> at > >> > org.apache.tuscany.sca.assembly.xml.BaseAssemblyProcessor.readExtendedAttributes(BaseAssemblyProcessor.java:849) > >> at > >> > org.apache.tuscany.sca.assembly.xml.CompositeProcessor.read(CompositeProcessor.java:191) > >> at > >> > org.apache.tuscany.sca.assembly.xml.CompositeProcessor.read(CompositeProcessor.java:88) > >> at > >> > org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint$LazyStAXArtifactProcessor.read(DefaultStAXArtifactProcessorExtensionPoint.java:360) > >> at > >> > org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.read(ExtensibleStAXArtifactProcessor.java:146) > >> at > >> > org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.read(CompositeDocumentProcessor.java:121) > >> at > >> > org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.read(CompositeDocumentProcessor.java:56) > >> at > >> > org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.read(ExtensibleURLArtifactProcessor.java:96) > >> at > >> > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processReadPhase(ContributionServiceImpl.java:492) > >> at > >> > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:387) > >> ... 28 more > >> > >> > >> -- > >> Dave Sowerby MEng MBCS > > > > > Hi Dave Did you try: - setting the java.xml.stream.XMLInputFactory system property (I could understand if you were reticent about setting this) - setting META-INF/services/javax.xml.stream.XMLInputFactory in your jar Regards Simon
