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?
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