In the Axis Architecture Guide (http://ws.apache.org/axis/java/architecture-guide.html) the behaviour you describe is explained to be intended.
(Beside points 3 and 7, which are not explained).
Imho the figures show very well, why there's a different order of chains on server and client side.
cheers, Christoph
Thilo Frotscher wrote:
Hi!
Browsing the source code of Axis 1.2 alpha I found out, that the order in which handlers are called on the client side is as follows:
1) Service Specific Request Chain 2) Global Request Chain 3) JAX-RPC Handlers 4) Transport Specific Request Chain 5) Send SOAP message to service 6) Transport Specific Response Chain 7) JAX-RPC Handlers 8) Global Response Chain 9) Service specific Response Chain
Question: why are JAX-RPC handlers called between global chain and transport specific chain? Shouldn't they be called between service specific chain and global chain? After all, the JAX-RPC-handler chain is service specific and therefore configures inside a service configuration.
On the server side, the order is like I would have expected it:
1) Transport Specific Request Chain 2) Global Request Chain 3) JAX-RPC Handlers 4) Service Specific Request Chain 5) invoke web service 6) Service specific Response Chain 7) JAX-RPC Handlers 8) Global Response Chain 9) Transport Specific Response Chain
Is the behaviour on the client a bug?
Thanks, Thilo