Hi Willem,
The point that I was making is that EndpointImpl.stop() only seems to 
deactivate an endpoint as opposed to shutting it down. It seems like when a the 
jaxws:endpoint bean is destroyed, the endpoint should be completely shutdown.
Regards,
Seumas

-----Original Message-----
From: Willem Jiang [mailto:[EMAIL PROTECTED]
Sent: Thursday, May 17, 2007 12:16 AM
To: [email protected]
Subject: Re: Proper destroy() method for jaxws:endpoint


Hi Seumas,

Soltysik, Seumas wrote:
> The current designated destroy method for the jaxws:endpoint spring bean is 
> EndpointImpl.stop(). The effect of calling this stop() method is to remove 
> the endpoint from an endpoints list. 
>
>         if (mo instanceof MultipleEndpointObserver) {
>             ((MultipleEndpointObserver) mo).getEndpoints().remove(endpoint);
>         } else {
>             getDestination().setMessageObserver(null);
>         }
>
> However, it does not actually shutdown/deactive the associated Destination it 
> only diables the endpoint. I am not sure that this makes sense to me. When 
> the destroy method is called on the jaxws:endpoint bean, should the endpoint 
> simply be made unavailable or should the infrastructure for that endpoint be 
> torn down?
>
>   
Maybe DanD can answer this question.
I just checked out the change log of MultipleEndpointObserver
MutlipleEndpointObserver. If multiple a user attempts to register 
multiple endpoints on the same address, this observer will be created. 
Various binding interceptors and routing interceptors will be added to it.

Does it mean that the endpoints within the MultipleEndpointObserver 
could still listen to the other address?
> Should the EndpointImpl.stop() method be changed to deactivate the 
> Destination or does it need to keep the same behavior per the JAX-WS spec? Do 
> we need to add a special EndpointImpl.shutdown() method and use this as the 
> jaxws:endpoint destroy() method?
>
> Regards,
> Seumas
>
>   

Cheers,
Willem.

Reply via email to