[WebLab-User] Créer un nouveau service web.
jetsadabodin.pintong at st-cyr.terre-net.defense.gouv.fr
jetsadabodin.pintong at st-cyr.terre-net.defense.gouv.fr
Fri Nov 4 16:20:13 CET 2011
Bonjour,
merci pour vos réponses.
D?après vos conseilles, j?ai écrit le code :
private ResultSet constructAndAnnotateResultSet(StringQuery ftQuery, int nbResults, int offset) {
String uuid = UUID.randomUUID().toString();
// Construit le ResultSet et le POK
ResultSet resultSet = ResourceFactory.createResource("appoline", "resultSet/" + uuid, ResultSet.class);
PieceOfKnowledge resPOK = ResourceFactory.createResource("appoline", "Pok/" + uuid, PieceOfKnowledge.class);
resultSet.setPok(resPOK);
PoKHelper h = RDFHelperFactory.getPoKHelper(resPOK);
h.setAutoCommitMode(false);
// Construit les propiétés du ResultSet, du POK et de la Query
h.createResStat(ftQuery.getUri(), RDF.TYPE, WebLab.getUriFromClass(StringQuery.class));
h.createLitStat(resultSet.getUri(), WebLabProcessing.IS_PRODUCED_BY, this.getClass().getName());
h.createResStat(resultSet.getUri(), RDF.TYPE, WebLab.getUriFromClass(ResultSet.class));
h.createResStat(resultSet.getUri(), WebLabRetrieval.IS_RESULT_OF, ftQuery.getUri());
h.createResStat(resultSet.getUri(), WebLab.HAS_POK_RESULT, resPOK.getUri());
h.createResStat(resPOK.getUri(), WebLab.IN_RESULT_SET_POK, resultSet.getUri());
h.createLitStat(resultSet.getUri(), WebLabRetrieval.HAS_EXPECTED_OFFSET, String.valueOf(offset));
h.createLitStat(resultSet.getUri(), WebLabRetrieval.HAS_EXPECTED_LIMIT, String.valueOf(limit));
h.commit();
return resultSet;
}
private ResultSet fillResultSetWithAppolineObject(ResultSet rs, List<AppolineObject> hits, StringQuery query, int nbResults) throws URISyntaxException{
String uuid = UUID.randomUUID().toString();
PoKHelper h = RDFHelperFactory.getPoKHelper(rs.getPok());
h.setAutoCommitMode(false);
int i=0;
for(AppolineObject aObject : hits) {
String huri = "weblab://appoline/hit/" + uuid + "/"+ i;
// Creates hit properties
h.createResStat(huri, RDF.TYPE, WebLab.RETRIEVAL_PROPERTY_NAMESPACE+"Hit");
h.createLitStat(huri, WebLabRetrieval.HAS_RANK, Integer.toString(i+1));
h.createLitStat(huri, WebLabRetrieval.HAS_SCORE, String.valueOf(aObject.getPertinence()));
h.createResStat(huri, WebLabRetrieval.IS_LINKED_TO, String.valueOf(aObject.getAnoID()));
System.out.println("Aonid="+aObject.getAnoID());
i++;
}
h.createLitStat(rs.getUri(),WebLabRetrieval.HAS_NUMBER_OF_RESULTS,String.valueOf( hits.size()));
h.commit();
return rs;
}
}
_ _
_Je l?ai appelé avec un search-portlet et j?ai obtenu cette erreur dans Tomcat au niveau de h.commit() :_Nov 4, 2011 12:21:54 PM com.sun.xml.ws.server.sei.EndpointMethodHandler invoke
SEVERE: Serialisation of Jena model failed. RDF/XMLstring appears to be invalid: <rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dct="http://purl.org/dc/terms/"
xmlns:wlp="http://weblab.ow2.org/core/1.2/ontology/processing#"
xmlns:wlr="http://weblab.ow2.org/core/1.2/ontology/retrieval#"
xmlns:j.0="http://weblab.ow2.org/core/1.2/ontology/model#" >
<rdf:Description rdf:about="weblab://appoline/hit/4e1dcaac-1115-489b-bd6b-c72bf2fbef74/5">
<wlr:isLinkedTo
org.ow2.weblab.utils.RDFHelperException: Serialisation of Jena model failed. RDF/XMLstring appears to be invalid: <rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dct="http://purl.org/dc/terms/"
xmlns:wlp="http://weblab.ow2.org/core/1.2/ontology/processing#"
xmlns:wlr="http://weblab.ow2.org/core/1.2/ontology/retrieval#"
xmlns:j.0="http://weblab.ow2.org/core/1.2/ontology/model#" >
<rdf:Description rdf:about="weblab://appoline/hit/4e1dcaac-1115-489b-bd6b-c72bf2fbef74/5">
<wlr:isLinkedTo
at org.ow2.weblab.utils.BackEndJenaHelper.getRdfXml(BackEndJenaHelper.java:1895)
at org.ow2.weblab.core.helper.impl.JenaPoKHelper.getRdfXml(JenaPoKHelper.java:261)
at org.ow2.weblab.core.helper.impl.JenaPoKHelper.commit(JenaPoKHelper.java:276)
at org.appoline.test.itimplsearcher6.ITImplSearcher6.fillResultSetWithAppolineObject(ITImplSearcher6.java:681)
at org.appoline.test.itimplsearcher6.ITImplSearcher6.search(ITImplSearcher6.java:234)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.xml.ws.api.server.InstanceResolver$1.invoke(InstanceResolver.java:246)
at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:146)
at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:257)
at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:95)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:629)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:588)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:573)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:470)
at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:295)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:519)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:288)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:143)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:155)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:189)
at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: com.hp.hpl.jena.shared.BadURIException: Only well-formed absolute URIrefs can be included in RDF/XML output: <22366> Code: 57/REQUIRED_COMPONENT_MISSING in SCHEME: A component that is required by the scheme is missing.
at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.checkURI(BaseXMLWriter.java:829)
at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.relativize(BaseXMLWriter.java:806)
at com.hp.hpl.jena.xmloutput.impl.Basic.writeResourceReference(Basic.java:148)
at com.hp.hpl.jena.xmloutput.impl.Basic.writePredicate(Basic.java:101)
at com.hp.hpl.jena.xmloutput.impl.Basic.writeRDFStatements(Basic.java:77)
at com.hp.hpl.jena.xmloutput.impl.Basic.writeRDFStatements(Basic.java:66)
at com.hp.hpl.jena.xmloutput.impl.Basic.writeBody(Basic.java:40)
at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.writeXMLBody(BaseXMLWriter.java:500)
at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.write(BaseXMLWriter.java:472)
at com.hp.hpl.jena.rdf.model.impl.ModelCom.write(ModelCom.java:259)
at org.ow2.weblab.utils.BackEndJenaHelper.getRdfXml(BackEndJenaHelper.java:1893)
... 37 more
Nov 4, 2011 12:21:54 PM com.sun.xml.ws.transport.http.servlet.WSServletDelegate doGet
SEVERE: caught throwable
java.lang.NullPointerException
at org.apache.xml.serializer.OutputPropertiesFactory.getDefaultMethodProperties(OutputPropertiesFactory.java:260)
at org.apache.xalan.templates.OutputProperties.<init>(OutputProperties.java:83)
at org.apache.xalan.transformer.TransformerIdentityImpl.<init>(TransformerIdentityImpl.java:88)
at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:823)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.createTransformer(JAXBContextImpl.java:730)
at com.sun.xml.bind.v2.runtime.XMLSerializer.getIdentityTransformer(XMLSerializer.java:813)
at com.sun.xml.bind.v2.runtime.XMLSerializer.writeDom(XMLSerializer.java:805)
at com.sun.xml.bind.v2.runtime.property.ArrayReferenceNodeProperty.serializeListBody(ArrayReferenceNodeProperty.java:112)
at com.sun.xml.bind.v2.runtime.property.ArrayERProperty.serializeBody(ArrayERProperty.java:155)
at com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:340)
at com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:696)
at com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.serializeBody(SingleElementNodeProperty.java:152)
at com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:340)
at com.sun.xml.bind.v2.runtime.XMLSerializer.childAsSoleContent(XMLSerializer.java:593)
at com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot(ClassBeanInfoImpl.java:324)
at com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:494)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:315)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:172)
at com.sun.xml.ws.message.jaxb.MarshallerBridge.marshal(MarshallerBridge.java:71)
at com.sun.xml.bind.api.Bridge.marshal(Bridge.java:107)
at com.sun.xml.ws.message.jaxb.JAXBMessage.writePayloadTo(JAXBMessage.java:319)
at com.sun.xml.ws.message.AbstractMessageImpl.writeTo(AbstractMessageImpl.java:142)
at com.sun.xml.ws.api.message.FilterMessageImpl.writeTo(FilterMessageImpl.java:157)
at com.sun.xml.ws.encoding.StreamSOAPCodec.encode(StreamSOAPCodec.java:109)
at com.sun.xml.ws.encoding.SOAPBindingCodec.encode(SOAPBindingCodec.java:278)
at com.sun.xml.ws.transport.http.HttpAdapter.encodePacket(HttpAdapter.java:383)
at com.sun.xml.ws.transport.http.HttpAdapter.access$100(HttpAdapter.java:93)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:529)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:288)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:143)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:155)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:189)
at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
__
Cordialement
SLT PINTONG
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://weblab-project.org/pipermail/user_weblab-project.org/attachments/20111104/b0b9862a/attachment-0001.html>
More information about the User
mailing list