dev@jax-ws.java.net

BindingProvider.getEndpointReference(...)

From: Kohsuke Kawaguchi <Kohsuke.Kawaguchi_at_Sun.COM>
Date: Mon, 09 Oct 2006 11:38:00 -0700

Maybe I'm speaking too late, but BindingProvider has the following method:

     public <T extends EndpointReference> T getEndpointReference(
       Class<T> clazz, Element... referenceParameters);

... but I don't understand the semantics of this. Specifically the
reference parameters.

The reference parameters are what the service gives to clients. From
client's point of view, it's really just a cookie that doesn't make any
sense. It's only understood by the service when it sends them to the
service.

As I understand it, BindingProvider is a client-side interface. It's the
base interface for dispatches and proxies. So as a client programmer, I
don't understand why I'm asked to pass in reference parameters, which is
something only the server knows (If this is a server-side interface, I
could see why.)

This is a method that a developer uses to check what this proxy/dispatch
is talking to, right? It should be just:

     public EndpointReference getEndpointReference();
     public <T extends EPR> T getEndpointReference(Class<T>);

-- 
Kohsuke Kawaguchi
Sun Microsystems                   kohsuke.kawaguchi_at_sun.com