[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