Hi Wan, See the comments below,
Wan Luo wrote: >Hi, > >I am trying to integrate Axis with an existing webapp. What I am planning to >do is remove the AxisServlet and wrapping the AxisEngine in my own servlet. >My servlet detects the web service the user is trying to hit from the URL, >so I have no need for dispatch to find the service, as I can handle it in my >own servlet. > > >In short, I really only need to process the SOAP message and extract the >parameters. > > The outcomes of the dispatching handlers are AxisOperation and AxisService. If you can provide them to the messageContext yourself, then that's it. If you do this in your servlet itself (which seems bit weird, but never mind), then the default dispatching handlers that are in the engine will fall through. This technique, you can do with the current release. >The Architecture guide says that "there is a special case of using the two >way transport where the first four phases in the In-Phase most likely to do >nothing." > >Another option I was considering is overwriting the dispatch handler by >using a custom handler, but I have not seen any documentation on how to >override behaviour in the pre-defined phases. Any input is appreciated. > > Well, for the time being user is not allowed to add handlers to the pre-defined phases. But since people like you are continously wanting to add handlers to those phases for various use cases, we thought of removing that restriction. When this restriction is lifted, you can write your own dispatcher, which can run, before any of the dispatchers. We had a thread going to decide whether to allow users to remove even the default dispatching handlers. I can't exactly remember the outcome of that, but in that case, having written you our dispatcher you can remove the other default dispatchers if you want. For you to execute these techniques you need to build an axis jar against the current source tree.
