OK, I'll take that into account.

Thanks,
James

There might be another issue in the MAPAggregator as well. The messageIds field has two issues:

1) It's not thread safe. Probably change to ConcurrentHashMap or use a synchronized map.

2) There is a put, but I don't see any removes anywhere. That concerns me.

Dan


On Wednesday 07 November 2007, James Mao wrote:
Thanks Jim,

There's couple ways to enable the ws-a, and it's in
MAPAggregator.usingAddressing, i guess you probably saw the code
already.

James

Hi ,

It seems do not work even I  explicitly set UsingAddressingAdvisory
to true.  This is an issue in the WSAddressingFeature.

The only way I can get it working is add wsdl url , service name and
endpoint name to JaxWsProxyFactoryBean :

       factory.setServiceName(SERVICE_NAME);
       factory.setEndpointName(PORT_NAME);
       factory.setWsdlURL(wsdl.toURL().toString());

And MAPAggregator can get the UsingAdressing information through
wsdl .

Regards

Jim

James,

This is one of the things of the ws-addressing feature that I
personally think is totally broken.
If you do:

WSAddressingFeature feature = new WSAddressingFeature();
feature.setUsingAddressingAdvisory(true);
factory.getFeatures().add(feature);

it probably will work.   IMO, the "true" flag should be the DEFAULT
when using the WSAddressingFeature.

Dan

On Wednesday 07 November 2007, James Mao wrote:
Hi,

I'm trying to enable the ws-a through the API approach which
described in the doc [1], but the message i captured told me that
the ws-a is definitely not working.

Client side code:

        JaxWsProxyFactoryBean factory = new
JaxWsProxyFactoryBean(); factory.setServiceClass(Greeter.class);

factory.setAddress("http://localhost:8080/SoapContext/SoapPort";);
factory.getFeatures().add(new WSAddressingFeature()); Greeter port
= (Greeter) factory.create();

Service side code:

        EndpointImpl ep = (EndpointImpl)
Endpoint.create(implementor); ep.getFeatures().add(new
WSAddressingFeature());
        ep.publish(address);

Am I miss anything?

Or

We have to use the Spring config to enable to ws-a?


Thanks in advance!
James



[1]http://cwiki.apache.org/CXF20DOC/ws-addressing.html



Reply via email to