I sent an earlier query about adding WS-Addressing to a message sent by
a generated client and received no response, so I kept digging.
I discovered the AddressingOutHandler, and added it to my outgoing
handler list, but that did not work.
By adding debugging and recompiling XFire 1.2.5, I can see that the
handler is being called, but no headers are being added because the
"OperationInfo" does not have a "AddressingOperationInfo" object
associated with it.
How can I make sure that tan operation generated by "wsgen" has
"AddressingOperationInfo" set?
The relevant WSDL snippet is:
<wsdl:operation name="Subscribe">
<wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
message="eb:SubscribeMsg"
wsaw:Action="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe"/>
<wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
message="eb:SubscribeResponseMsg"/>
</wsdl:operation>
The relevant code is:
EventBrokerClient ebClient = new EventBrokerClient();
EventBrokerPortType eventBroker =
ebClient.getEventBrokerSOAP11port_http(LOCALHOST_URL);
Client client = ((XFireProxy)
Proxy.getInvocationHandler(eventBroker)).getClient();
client.addOutHandler(new DOMOutHandler());
client.addOutHandler(new AddressingOutHandler());
...
eventBroker.subscribe(subscribeMsg);
Thanks in advance for any help.
- Eric
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email