atom feed9 messages in net.java.dev.metro.usersRe: Cannot find dispatch method for X...
FromSent OnAttachments
Farrukh NajmiAug 13, 2007 4:24 pm 
Farrukh NajmiAug 14, 2007 5:47 am 
Farrukh NajmiAug 14, 2007 7:05 am 
Vivek PandeyAug 14, 2007 8:53 am 
Kohsuke KawaguchiAug 14, 2007 9:28 am 
Farrukh NajmiAug 14, 2007 9:50 am 
Kohsuke KawaguchiAug 14, 2007 11:03 am 
Farrukh NajmiAug 14, 2007 1:58 pm 
Vivek PandeyAug 14, 2007 2:10 pm 
Subject:Re: Cannot find dispatch method for XXX using "Payload QName-based Dispatcher"
From:Vivek Pandey (Vive@Sun.COM)
Date:Aug 14, 2007 2:10:27 pm
List:net.java.dev.metro.users

Farrukh,

So that we can track please report an issue on JAX-WS RI.

thanks,

-vivek.

Farrukh Najmi wrote:

Vivek Pandey wrote:

Hi Farrukh,

JAX-WS runtime does dispatching based on either QName or SOAPAction value. From the stack trace it looks like there are more than one operation which reference the global element {http://www.a.net/x/y/z}SomeClass. The runtime does not know which one to dispatch.

Basically in a WSDL you can have the operations either pointing to a unique global element or have unique value of SOAPAction on wsdl:binding/wsdl:operation element in the WSDL.

To find out which JAX-WS runtime is being used, there are 2 ways: see the deployed WSDL, you should see JAX-WS RI version number there or capture the SOAP message trace, HTTP header User-Agent will tell which version of JAX-WS RI you are using.

OK the cause for this problem has been found. Thanks Vivek and Kohsuke for their help. Vivek suggested I comment out in WSDL all but the offending endpoint. When I did I got a 404 error on client when invoking endpoint.

The cause was that I was incorrectly setting endpoint URL for port X to that of endpoint URL for port Y. Things worked on Port Y invocation (obviously) and not for port X invocation (obviously).

I suggest improving the "Cannot find dispatch method for XXX" error to include endpoint URL and suggest:

"Please check that the endpoint URL is correct for the endpoint you are invoking"

Above would save a lot of grief.

Thanks again for the terrific help and sorry for the false alarm.