[
https://issues.apache.org/jira/browse/JENA-940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14541916#comment-14541916
]
Rob Vesse commented on JENA-940:
--------------------------------
On SO there is an [answer|http://stackoverflow.com/a/10729375/107591] to
someone having a similar problem which implies that the bug is actually in the
JDK.
The implication is that the JDK is providing its own version of Xerces which is
being used instead of the version Jena depends on and so you get old broken
Xerces rather than current XML 1.1 supporting Xerces.
What JDK are you using?
> SPARQL SERVICE Query against dbpedia.org doesnt work
> ----------------------------------------------------
>
> Key: JENA-940
> URL: https://issues.apache.org/jira/browse/JENA-940
> Project: Apache Jena
> Issue Type: Bug
> Affects Versions: Jena 2.11.0, Jena 2.13.0
> Reporter: Robert Mercer
>
> I've specified Affects versions against the version of Jena that I've tested,
> although it looks like it affects all versions of Jena.
> Basically it boils down to this, if you specify dbpedia.org in a SERVICE
> query now you receive an error message with the following stack trace:
> {noformat}
> com.hp.hpl.jena.sparql.resultset.ResultSetException: Failed when initializing
> the StAX parsing engine
> at com.hp.hpl.jena.sparql.resultset.XMLInputStAX.<init>(XMLInputStAX.java:118)
> at com.hp.hpl.jena.sparql.resultset.XMLInput.make(XMLInput.java:73)
> at com.hp.hpl.jena.sparql.resultset.XMLInput.fromXML(XMLInput.java:42)
> at com.hp.hpl.jena.sparql.resultset.XMLInput.fromXML(XMLInput.java:37)
> at com.hp.hpl.jena.query.ResultSetFactory.fromXML(ResultSetFactory.java:321)
> at com.hp.hpl.jena.sparql.engine.http.Service.exec(Service.java:117)
> at
> com.hp.hpl.jena.sparql.engine.main.iterator.QueryIterService.nextStage(QueryIterService.java:51)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:113)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:108)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIterConvert.hasNextBinding(QueryIterConvert.java:59)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:108)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:40)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:108)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:40)
> at
> com.hp.hpl.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:108)
> at
> com.hp.hpl.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:72)
> at
> org.topbraidcomposer.sparql.view.SPARQLView$8.handleResultSet(SPARQLView.java:371)
> at
> org.topbraidcomposer.sparql.view.SPARQLView$10.runSelectOrDescribe(SPARQLView.java:470)
> at org.topbraidcomposer.sparql.view.SPARQLView$10.run(SPARQLView.java:439)
> at org.topbraidcomposer.core.util.ThreadUtil$1$1.run(ThreadUtil.java:64)
> at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.NullPointerException
> at
> com.sun.org.apache.xerces.internal.impl.XML11NSDocumentScannerImpl.scanStartElement(Unknown
> Source)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown
> Source)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown
> Source)
> at
> com.sun.org.apache.xerces.internal.impl.XML11NSDocumentScannerImpl.next(Unknown
> Source)
> at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(Unknown
> Source)
> at
> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.processHead(XMLInputStAX.java:387)
> at
> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.init(XMLInputStAX.java:197)
> at
> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.<init>(XMLInputStAX.java:189)
> at com.hp.hpl.jena.sparql.resultset.XMLInputStAX.worker(XMLInputStAX.java:148)
> at com.hp.hpl.jena.sparql.resultset.XMLInputStAX.<init>(XMLInputStAX.java:111)
> ... 21 more
> {noformat}
> This is because dbpedia.org recently upgraded to XML 1.1 from 1.0 and
> apparently the XercesImpl that is packaged with Jena doesnt support this,
> which is the core issue.
> Case 1. Here's a query using SERVICE against the normal DBpedia endpoint. It
> fails with the StAX exception. (empty.ttl is an empty file.)
> {noformat}
> sparql --data empty.ttl "SELECT * { SERVICE <http://dbpedia.org/sparql> { ?s
> ?p ?o } } LIMIT 1"
> {noformat}
> Case 2. Here's a remote SPARQL query against the normal endpoint (so Jena
> doesn't evaluate the query at all, but sends the complete query to the
> endpoint, and only parses the results). It succeeds.
> {noformat}
> rsparql --service=http://dbpedia.org/sparql "SELECT * { ?s ?p ?o } LIMIT 1"
> {noformat}
> So it looks like Jena is doing something differently between cases 1 and 2 in
> the way it sends the query or handles the results.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)