Which version of xml-apis is in your environment?

Jena uses Xerces 2.10.0 which depends on xml-apis 1.4.01 which includes org/w3c/dom/ElementTraversal.

xml-apis 1.3.0 does not include org/w3c/dom/ElementTraversal.

Xerces 2.9.1 depends on xml-apis 1.3.0.

What might well work is using Xerces 2.9.1 with Jena. I don't think we have any specific requirement to use use Xerces 2.10.0 but Xerces and xml-pais must move in-step.

(versions of Xerces have been a perennial problems - various systems, esp containers, require or even force specific versions, but there is no 'right' choice for every thing).

        Andy


On 28/08/12 19:55, Bart van Leeuwen wrote:
Okay

I decided to completely give up on this for now, instead I implemented a
very simple Sparql11 update function which uses HttpUrlConnection to do
the Post.

It seems that the standard environment shipped with the Jena binary
doesn't really match that what is supplied with Geronimo.
Is there a solution for this ? building it from source with the libs from
Geronimo ?

Any advice would be greatly appreciated.

Met Vriendelijke Groet / With Kind Regards
Bart van Leeuwen
@semanticfire

##############################################################
# netage.nl
# http://netage.nl
# Enschedepad 76
# 1324 GJ Almere
# The Netherlands
# tel. +31(0)36-5347479
##############################################################



From:   Milorad Tosic <[email protected]>
To:     "[email protected]" <[email protected]>,
Date:   28-08-2012 12:01
Subject:        Re: Sparql 11 Remote Update Query in J2EE container



I'm not familiar with Geronimo. However, the settings could be applied at
container level but also at application level, if that helps you at all?
That would be my best guess where to target efforts...


Milorad




________________________________
From: Bart van Leeuwen <[email protected]>
To: [email protected]
Sent: Tuesday, August 28, 2012 11:39 AM
Subject: Re: Sparql 11 Remote Update Query in J2EE container

Hi Milorad,

This sounds like something that could work, however geronimo doesn't
accept this in the deployment plan.
I'm a bit reluctant to set this system wide. any other ideas ?


Met Vriendelijke Groet / With Kind Regards
Bart van Leeuwen
@semanticfire

##############################################################
# netage.nl
# http://netage.nl
# Enschedepad 76
# 1324 GJ Almere
# The Netherlands
# tel. +31(0)36-5347479
##############################################################



From:   Milorad Tosic <[email protected]>
To:     "[email protected]" <[email protected]>,
Date:   28-08-2012 11:17
Subject:        Re: Sparql 11 Remote Update Query in J2EE container



Hi,

I have had a similar problem some time ago and it turned to be XML
compiler issue that is solved if the container is directed to use
appropriate version of XML compiler. What worked for me is the following
settings in web.xml:

  <system-property javax.xml.parsers.DocumentBuilderFactory=

"com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"/>
  <system-property javax.xml.parsers.SAXParserFactory=

"com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl"/>


regards,
Milorad




________________________________
From: Bart van Leeuwen <[email protected]>
To: [email protected]
Sent: Tuesday, August 28, 2012 11:02 AM
Subject: Sparql 11 Remote Update Query in J2EE container

Hi List,

I'm having a issue with Jena Update in a J2EE deployed servlet
1) J2EE container is geronimo v3
2) Jena is version 2.7.3

I like to have a servlet do a Sparql11 update request to a remote 1.1
store.

When I create a standalone java application and run the code it works
fine, when I use the same code in a servlet I run into a class not found

exception
The package deployed to the server does contain all the right jars.

I'm not sure if this is a Jena or Geronimo issue.

Code:

UpdateRequest update = UpdateFactory.create("insert data { GRAPH <
http://example.com> { <http://example/book1>  <http://blah>  42 }
}",Syntax.syntaxSPARQL_11);
UpdateProcessRemote firebrary = (UpdateProcessRemote)
UpdateExecutionFactory.createRemote(update, "
http://localhost:3030/firebrary/update";);
firebrary.execute();

Exception:

com.hp.hpl.jena.query.QueryParseException: org/w3c/dom/ElementTraversal

com.hp.hpl.jena.sparql.lang.ParserARQUpdate._parse(ParserARQUpdate.java:86)

com.hp.hpl.jena.sparql.lang.ParserARQUpdate.parse$(ParserARQUpdate.java:41)
com.hp.hpl.jena.sparql.lang.UpdateParser.parse(UpdateParser.java:42)
        com.hp.hpl.jena.update.UpdateFactory.make(UpdateFactory.java:84)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:75)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:53)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:43)
        tester.Tester.go(Tester.java:26)
        info.resc.sandbox.GenericTest.doGet(GenericTest.java:43)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:668)

root cause

java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
        java.lang.ClassLoader.defineClass1(Native Method)
        java.lang.ClassLoader.defineClass(ClassLoader.java:791)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.defineClass(GeronimoClassLoader.java:213)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:601)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:567)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:490)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:478)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:458)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.findLocalClass(GeronimoClassLoader.java:237)

org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)

org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.loadClass(GeronimoClassLoader.java:85)
        java.lang.ClassLoader.loadClass(ClassLoader.java:356)

org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown

Source)
        org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown

Source)

org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown

Source)
org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown
Source)
        org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
        org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
        java.util.XMLUtils.getLoadingDoc(XMLUtils.java:102)
        java.util.XMLUtils.load(XMLUtils.java:74)
        java.util.Properties.loadFromXML(Properties.java:868)
        com.hp.hpl.jena.util.Metadata.read(Metadata.java:80)
        com.hp.hpl.jena.util.Metadata.addMetadata(Metadata.java:54)
        com.hp.hpl.jena.util.Metadata.<init>(Metadata.java:48)
        com.hp.hpl.jena.JenaRuntime.<clinit>(JenaRuntime.java:37)

com.hp.hpl.jena.rdf.model.impl.RDFReaderFImpl.<clinit>(RDFReaderFImpl.java:74)

com.hp.hpl.jena.rdf.model.impl.ModelCom.<clinit>(ModelCom.java:54)

com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:142)

com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:136)
        com.hp.hpl.jena.vocabulary.OWL.<clinit>(OWL.java:37)

com.hp.hpl.jena.sparql.graph.NodeConst.<clinit>(NodeConst.java:41)

com.hp.hpl.jena.sparql.lang.ParserBase.<init>(ParserBase.java:55)

com.hp.hpl.jena.sparql.lang.ParserQueryBase.<init>(ParserQueryBase.java:39)

com.hp.hpl.jena.sparql.lang.arq.ARQParserBase.<init>(ARQParserBase.java:26)
com.hp.hpl.jena.sparql.lang.arq.ARQParser.<init>(ARQParser.java:6613)

com.hp.hpl.jena.sparql.lang.ParserARQUpdate._parse(ParserARQUpdate.java:62)

com.hp.hpl.jena.sparql.lang.ParserARQUpdate.parse$(ParserARQUpdate.java:41)
com.hp.hpl.jena.sparql.lang.UpdateParser.parse(UpdateParser.java:42)
        com.hp.hpl.jena.update.UpdateFactory.make(UpdateFactory.java:84)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:75)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:53)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:43)
        tester.Tester.go(Tester.java:26)
        info.resc.sandbox.GenericTest.doGet(GenericTest.java:43)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:668)

root cause

java.lang.ClassNotFoundException: org.w3c.dom.ElementTraversal

org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:467)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.loadClass(GeronimoClassLoader.java:85)
        java.lang.ClassLoader.loadClass(ClassLoader.java:356)
        java.lang.ClassLoader.defineClass1(Native Method)
        java.lang.ClassLoader.defineClass(ClassLoader.java:791)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.defineClass(GeronimoClassLoader.java:213)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:601)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:567)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:490)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:478)

org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:458)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.findLocalClass(GeronimoClassLoader.java:237)

org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)

org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)

org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)

org.apache.geronimo.hook.equinox.GeronimoClassLoader.loadClass(GeronimoClassLoader.java:85)
        java.lang.ClassLoader.loadClass(ClassLoader.java:356)

org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown

Source)
        org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown

Source)

org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown

Source)
org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown
Source)
        org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
        org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
        java.util.XMLUtils.getLoadingDoc(XMLUtils.java:102)
        java.util.XMLUtils.load(XMLUtils.java:74)
        java.util.Properties.loadFromXML(Properties.java:868)
        com.hp.hpl.jena.util.Metadata.read(Metadata.java:80)
        com.hp.hpl.jena.util.Metadata.addMetadata(Metadata.java:54)
        com.hp.hpl.jena.util.Metadata.<init>(Metadata.java:48)
        com.hp.hpl.jena.JenaRuntime.<clinit>(JenaRuntime.java:37)

com.hp.hpl.jena.rdf.model.impl.RDFReaderFImpl.<clinit>(RDFReaderFImpl.java:74)

com.hp.hpl.jena.rdf.model.impl.ModelCom.<clinit>(ModelCom.java:54)

com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:142)

com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:136)
        com.hp.hpl.jena.vocabulary.OWL.<clinit>(OWL.java:37)

com.hp.hpl.jena.sparql.graph.NodeConst.<clinit>(NodeConst.java:41)

com.hp.hpl.jena.sparql.lang.ParserBase.<init>(ParserBase.java:55)

com.hp.hpl.jena.sparql.lang.ParserQueryBase.<init>(ParserQueryBase.java:39)

com.hp.hpl.jena.sparql.lang.arq.ARQParserBase.<init>(ARQParserBase.java:26)
com.hp.hpl.jena.sparql.lang.arq.ARQParser.<init>(ARQParser.java:6613)

com.hp.hpl.jena.sparql.lang.ParserARQUpdate._parse(ParserARQUpdate.java:62)

com.hp.hpl.jena.sparql.lang.ParserARQUpdate.parse$(ParserARQUpdate.java:41)
com.hp.hpl.jena.sparql.lang.UpdateParser.parse(UpdateParser.java:42)
        com.hp.hpl.jena.update.UpdateFactory.make(UpdateFactory.java:84)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:75)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:53)

com.hp.hpl.jena.update.UpdateFactory.create(UpdateFactory.java:43)
        tester.Tester.go(Tester.java:26)
        info.resc.sandbox.GenericTest.doGet(GenericTest.java:43)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:668)

Met Vriendelijke Groet / With Kind Regards
Bart van Leeuwen
@semanticfire

##############################################################
# netage.nl
# http://netage.nl
# Enschedepad 76
# 1324 GJ Almere
# The Netherlands
# tel. +31(0)36-5347479
##############################################################







Reply via email to