使用JAX-WS和自定義WSDL,有沒有一種方法可以獲取將發送到Web服務而不實際調用服務的消息?我需要生成符合WSDL的soap消息,但是soap消息實際上嵌入到另一個消息中。我想我可以創建一個本地Web服務,它只是迴應消息,但似乎應該有一種方式,而不是使用處理鏈,或者當它發送消息時無關緊要。JAX-WS在沒有實際發送到Web服務的情況下獲得肥皂
也許最簡單的事情就是手動生成肥皂?
使用JAX-WS和自定義WSDL,有沒有一種方法可以獲取將發送到Web服務而不實際調用服務的消息?我需要生成符合WSDL的soap消息,但是soap消息實際上嵌入到另一個消息中。我想我可以創建一個本地Web服務,它只是迴應消息,但似乎應該有一種方式,而不是使用處理鏈,或者當它發送消息時無關緊要。JAX-WS在沒有實際發送到Web服務的情況下獲得肥皂
也許最簡單的事情就是手動生成肥皂?
也許這個例子有助於(從瞭解Web服務,第1部分:SOAP,IBM開發的作品,第21頁):
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage message = messageFactory.createMessage();
SOAPPart SOAPPart = message.getSOAPPart();
SOAPEnvelope envelope = SOAPPart.getEnvelope();
SOAPBody body = envelope.getBody();
SOAPElement bodyElement = body.addChildElement(envelope.createName("echo", "req", "http://localhost:8080/axis2/services/MyService/"));
bodyElement.addChildElement("category").addTextNode("classifieds");
message.saveChanges();
SOAPPart SOAPpartbefore = message.getSOAPPart();
SOAPEnvelope reqenv = SOAPpartbefore.getEnvelope();
System.out.println(reqenv.toString());
我希望這有助於:
http://www.java-tips.org/java-ee-tips/java-api-for-xml-web-services/writing-a-handler-in-jax-ws.html
你可以在發送之前攔截消息,獲取主體,獲取標題,使用SAML或任何您想要的標記它,然後將其發送到服務器。
JAX-WS只是一個API ......你正在使用哪個實現? – skaffman 2010-01-30 20:32:35
您是否找到解決您的問題的方法?如果是這樣,請分享回答你自己的問題。我很想知道如何做到這一點。 – 2010-06-16 20:42:30