Jax-ws : Java SAVON exception :MustUnderstand en-têtes:[{http://www.w3.org/2005/08/addressing}Action

Je suis à l'aide de Jax-ws pour mettre en oeuvre application client pour la caméra IP Onvif, je suis en envoyant une demande à l'appareil photo pour créer PullPointSubscription ,Il semble que la caméra comprend la demande et des processus de la demande et l'envoi de la réponse correcte , mais le client jax-ws code déclenche une exception

MustUnderstand headers:[{http://www.w3.org/2005/08/addressing}Action] are not understood

Je ne comprends pas quel est le problème exactement? N'importe qui peut expliquer quel est le problème et comment le résoudre?

Les détails de l'exception

an 29, 2012 11:43:48 AM com.sun.xml.ws.protocol.soap.MUTube getMisUnderstoodHeaders
INFO: Element not understood={http://www.w3.org/2005/08/addressing}Action
javax.xml.ws.soap.SOAPFaultException: MustUnderstand headers:[{http://www.w3.org/2005/08/addressing}Action] are not understood
at com.sun.xml.ws.protocol.soap.MUTube.createMUSOAPFaultException(MUTube.java:148)
at com.sun.xml.ws.protocol.soap.ClientMUTube.processResponse(ClientMUTube.java:109)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:651)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482)
at com.sun.xml.ws.client.Stub.process(Stub.java:323)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:161)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:113)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:93)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:144)
at $Proxy46.createPullPointSubscription(Unknown Source)
at Test.SubInEventLast(Test.java:173)
at Test.main(Test.java:139)

La demande de message soap est

<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://www.w3.org/2003/05/soap-envelope">
<S:Body>
<ns6:CreatePullPointSubscription xmlns:ns2="http://www.w3.org/2005/08/addressing" 
xmlns:ns3="http://docs.oasis-open.org/wsn/b-2" 
xmlns:ns4="http://docs.oasis-open.org/wsrf/bf-2" 
xmlns:ns5="http://docs.oasis-open.org/wsn/t-1" 
xmlns:ns6="http://www.onvif.org/ver10/events/wsdl" 
xmlns:ns7="http://www.onvif.org/ver10/schema" 
xmlns:xmime="http://www.w3.org/2005/05/xmlmime" 
xmlns:ns9="http://www.w3.org/2004/08/xop/include" 
xmlns:ns10="http://docs.oasis-open.org/wsrf/r-2">
<ns6:Filter>
<ns3:TopicExpression xmlns="http://docs.oasis-open.org/wsn/b-2" 
xmlns:tns1="http://www.onvif.org/ver10/topics" 
Dialect="http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet">
tns1:Device
</ns3:TopicExpression>
</ns6:Filter>
<ns3:InitialTerminationTime>PT1M</ns3:InitialTerminationTime>
</ns6:CreatePullPointSubscription>
</S:Body>
</S:Envelope>

et c'est la réponse soap

              <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" 
xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" 
xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" 
xmlns:wsa5="http://www.w3.org/2005/08/addressing" 
xmlns:xmime5="http://www.w3.org/2005/05/xmlmime" 
xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2" 
xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" 
xmlns:tt="http://www.onvif.org/ver10/schema" 
xmlns:wsrf-r="http://docs.oasis-open.org/wsrf/r-2" 
xmlns:tan1="http://www.onvif.org/ver10/analytics/wsdl/RuleEngineBinding" 
xmlns:tan="http://www.onvif.org/ver10/analytics/wsdl" 
xmlns:tan2="http://www.onvif.org/ver10/analytics/wsdl/AnalyticsEngineBinding" 
xmlns:tds="http://www.onvif.org/ver10/device/wsdl" 
xmlns:tev1="http://www.onvif.org/ver10/events/wsdl/NotificationProducerBinding" 
xmlns:tev2="http://www.onvif.org/ver10/events/wsdl/EventBinding" 
xmlns:tev3="http://www.onvif.org/ver10/events/wsdl/SubscriptionManagerBinding" 
xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" 
xmlns:tev4="http://www.onvif.org/ver10/events/wsdl/PullPointSubscriptionBinding" 
xmlns:tev="http://www.onvif.org/ver10/events/wsdl" 
xmlns:timg="http://www.onvif.org/ver10/imaging/wsdl" 
xmlns:tptz="http://www.onvif.org/ver10/ptz/wsdl" 
xmlns:trt="http://www.onvif.org/ver10/media/wsdl"
xmlns:ter="http://www.onvif.org/ver10/error" 
xmlns:tns1="http://www.onvif.org/ver10/topics" 
xmlns:tnsaxis="http://www.axis.com/2009/event/topics">
<SOAP-ENV:Header>
<wsa5:Action SOAP-ENV:mustUnderstand="true">http://docs.oasis-open.org/wsn/bw-2/SubscriptionManager/CreatePullPointSubscriptionResponse</wsa5:Action>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<tev:CreatePullPointSubscriptionResponse>
<tev:SubscriptionReference>
<wsa5:Address>http://192.168.0.151/onvif/services</wsa5:Address>
<wsa5:ReferenceParameters><dom0:SubscriptionId xmlns:dom0="http://www.axis.com/2009/event">3</dom0:SubscriptionId>
</wsa5:ReferenceParameters>
</tev:SubscriptionReference>
<wsnt:CurrentTime>2010-10-27T09:11:42Z</wsnt:CurrentTime>
<wsnt:TerminationTime>2010-11-24T09:11:42Z</wsnt:TerminationTime></tev:CreatePullPointSubscriptionResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
J'ai peur que l'espace de noms à vous reporter à (WS-Addressing 1.0) n'est pas pris en charge par JAX-WS. Y avait-il des mises en garde par wsimport lorsque vous avez généré votre JAX-WS artefacts?
Je vais avoir le même problème. Quand j'ai fini wsimport, l'avertissement suivant est affiché: inconnu extensibilité de l'élément ou de l'attribut "EndpointReference" (dans l'espace de noms "w3.org/2005/08/addressing")

OriginalL'auteur Mike Albren | 2012-01-29