see HandlerChainImpl -- dims
--- Ian Springer <[EMAIL PROTECTED]> wrote: > Leonardo Campanale wrote: > > > Finally I was able to write a class (handler) able to intercept the > > call and reroute the message to a final destination. > > To do this I wrote the handleRequest where I had to call the service > > through the To field of the ws-a headers and I had to save the > > response in some way (in a map) > > On the return path toward the client I had to intercept the response > > message (handleResponse) and I substituted the message with the saved > > value. > > What happens now is that in my handleRequest I forward the message to > > the desided address, but the call continues also to be sent to the > > TargetEndpointAddress specified in the client call. As a consequence > > of this behavior sometimes this second call fails (for example bacause > > of different signatures between the desired service and the endpoint > > service ). To face this scenario I had to override also the > > handleFault method in my handler. > > So the problem is now that, on the handleRequest, it would be better > > to stop the message path on the server and use this handler as a > > pivot, in order to avoid that the original service is called. > > How is it possible? > > JAX-RPC says that handleRequest() can return false to short-circuit > further processing of the handler chain, as well as prevent dispatching > to the target endpoint - see section 12.2.2 of the JAX-RPC 1.1 spec. > Unfortunately, looking at org.apache.axis.handlers.JAXRPCHandler, it > doesn't look to me as if Axis complies with this part of the spec. > > Ian > > Davanum Srinivas - http://webservices.apache.org/~dims/ __________________________________ Do you Yahoo!? Yahoo! Small Business - Try our new resources site! http://smallbusiness.yahoo.com/resources/
