> What version of woodstox? 3.2.9 and 4.1.1 I believe.
Simon > On Tue, Feb 8, 2011 at 8:37 AM, Andy Seaborne > <[email protected]> wrote: >> Simon, >> >> Thanks for a complete, minimal example. I get the same error. >> >> I suspect it's not woodstox per se, but a lower level networking issue >> because I can get things to work by reading the data as fast as possible. >> Maybe woodstow's use of the inputstream is seeing the connection close flag >> without making sure there isn't more data to read. >> >> The code in ARQ SVN has a workaround for this - it slurps up the network >> bytes as fast as possible, then passes them to woodstox; woodstox is not >> then working over the network input stream but instead a >> ByteArrayInputStream. >> >> (An alternative, I tried was adding a buffering layer to the input stream >> but that didn't work). >> >> Andy >> >> On 07/02/11 23:09, Simon Wibberley wrote: >>> >>> Hi there, >>> >>> I'm trying to query dbpedia for a list of company names. I'm >>> inconsistently getting WstxEOFException's caught by jena, which then >>> raises a ResultSetException. This happens after some data has been read >>> successfully. Following the tcp stream in wireshark shows a complete >>> response from the dbpedia server. >>> >>> Is this a bug in woodstox? I've tried replacing the libs with wstx4 and >>> stax2, but same error occurred. Is there anything I'm doing wrong/badly >>> with jena/sparql? (I'm relatively new to this). The minimal test case >>> below seems to reproduce the error (output also below) reliably. I've >>> tried this on both windows7 and OS X 10.6 from different locations. >>> Could you check to see if you get the same error? >>> >>> Any ideas? >>> >>> Many thanks, >>> >>> Simon Wibberley >>> >>> import com.hp.hpl.jena.query.Query; >>> import com.hp.hpl.jena.query.QueryExecution; >>> import com.hp.hpl.jena.query.QueryExecutionFactory; >>> import com.hp.hpl.jena.query.QueryFactory; >>> import com.hp.hpl.jena.query.QuerySolution; >>> import com.hp.hpl.jena.query.ResultSet; >>> import com.hp.hpl.jena.rdf.model.RDFNode; >>> >>> public class TestJena { >>> public static void main(String[] args) { >>> >>> String queryString = "PREFIX rdf: >>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#>" >>> + "PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>" >>> + "SELECT ?var " >>> + "WHERE { ?var rdf:type dbpedia-owl:Company . }"; >>> >>> Query query = QueryFactory.create(queryString); >>> >>> QueryExecution qexec = QueryExecutionFactory.sparqlService( >>> "http://dbpedia.org/sparql", query); >>> ResultSet rs = null; >>> >>> rs = qexec.execSelect(); >>> qexec.close(); >>> >>> while(rs.hasNext()) { >>> QuerySolution sqs = rs.next(); >>> RDFNode node = sqs.get("var"); >>> System.out.println(node); >>> } >>> } >>> >>> >>> } >>> >>> com.ctc.wstx.exc.WstxEOFException: Unexpected EOF; was expecting a close >>> tag for element <uri> >>> at [row,col {unknown-source}]: [106,47] >>> at >>> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2730) >>> at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.getElementText(BasicStreamReader.java:669) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.getOneSolution(XMLInputStAX.java:480) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.hasNext(XMLInputStAX.java:216) >>> >>> at sw206.TestJena.main(TestJena.java:31) >>> Exception in thread "main" >>> com.hp.hpl.jena.sparql.resultset.ResultSetException: XMLStreamException: >>> Unexpected EOF; was expecting a close tag for element <uri> >>> at [row,col {unknown-source}]: [106,47] >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.staxError(XMLInputStAX.java:510) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.hasNext(XMLInputStAX.java:220) >>> >>> at sw206.TestJena.main(TestJena.java:31) >>> Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF; was >>> expecting a close tag for element <uri> >>> at [row,col {unknown-source}]: [106,47] >>> at >>> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2730) >>> at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.getElementText(BasicStreamReader.java:669) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.getOneSolution(XMLInputStAX.java:480) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.hasNext(XMLInputStAX.java:216) >>> >>> ... 1 more >>> 22:59:25,250 WARN XMLInputStAX$ResultSetStAX:73 - StAX error: >>> XMLStreamException: Unexpected EOF; was expecting a close tag for >>> element <uri> >>> at [row,col {unknown-source}]: [106,47] >>> com.ctc.wstx.exc.WstxEOFException: Unexpected EOF; was expecting a close >>> tag for element <uri> >>> at [row,col {unknown-source}]: [106,47] >>> at >>> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2730) >>> at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019) >>> at >>> >>> com.ctc.wstx.sr.BasicStreamReader.getElementText(BasicStreamReader.java:669) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.getOneSolution(XMLInputStAX.java:480) >>> >>> at >>> >>> com.hp.hpl.jena.sparql.resultset.XMLInputStAX$ResultSetStAX.hasNext(XMLInputStAX.java:216) >>> >>> at sw206.TestJena.main(TestJena.java:31) >>> >>> >>> >>> >> -- Simon Wibberley DPhil Student Machine Learning and Computational Linguistics Chichester 1, R203 Informatics University of Sussex Brighton, UK [email protected]
