Hello Razvan,

I have not looked at the user guides Robert pointed out to you, but I previously posted the following about registering handlers:

Refer to the JAX-RPC1.1 spec to see how to use a client handler in a portable way. I believe it goes something like this:

  sf = javax.xml.rpc.ServiceFactory.newInstance();
  SEIService si = (SEIService)sf.loadService(SEIService.class);

  // register client handler
  javax.xml.rpc.handler.HandlerRegistry hr = si.getHandlerRegistry();
  java.util.List hl = new java.util.ArrayList();
hl.add(new javax.xml.rpc.handler.HandlerInfo(YourHandler.class,null,null));
  hr.setHandlerChain(new QName("http://localhost/xxx/","yourPort";),hl);

  SEI sei = si.getSEIPort();

((javax.xml.rpc.Stub)sei)._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, url);

YourHandler should implement javax.xml.rpc.handler.Handler.

Good luck!
Dies


Razvan Dani wrote:
Hi Xinjun

Thank you very much for your useful intervention.

Could either you or otherwise another Axis guru maybe present me a brief example of how a Handler can be inserted in the request flow (which translates into: i don't know how that could be done).

Again i would like to remind that i am using WSDL2Java to generate classes for a given WSDL and then i am sending SOAP messages via the generated stub (so i am not constructing anything manually).

Regards,
   Razvan

Xinjun Chen wrote:
Hi Razvan,
What I can think of is to insert a Handler in the request flow. Inside the Handler, you can modify the message. If you are using Axis2, you can write a module or a handler to do that. I believe this will be much easier than customize Axis or Axis2.
Axis gurus, please correct me if I am not correct.
Regards,
Xinjun
On 5/22/06, *Razvan Dani* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Hi

thank you for your suggestion. if i reach desperation i will certainly
    customize axis for my own use, but i'd certainly like to stick to the
    "standard axis" if at all possible. otherwise when i want to
    switch to a
    new version of axis latter on, i would be loosing by custom changes.

    what i am ideally looking for is a way to "plug" (or whatever
    other term
    you prefer) an extra thing that would change axis behaviour without
    modifying Axis source and making my personal axis.jar. I would be
    perfectly able to do that if it's the only solution...

    I think this is an interesting challenge to people with Axis
    experience,
    so i'd be more than happy to hear more opinions :) .

    Regards,
       Razvan

    Davanum Srinivas wrote:
    > easier would be to edit axiom source
    > (
http://svn.apache.org/repos/asf/webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/SOAPConstants.java)
    >
    >
    > and build a jar for your own use.
    >
    > -- dims
    >
    > On 5/22/06, Razvan Dani < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>> wrote:
    >>
    >>  Hi Anne
    >>
    >>  Thank you for your suggestions. However as a person that only
    found
    >> Axis
    >> few days ago, i am not sure how would i go about inserting and
    >> intermediary
    >> into my message path to transform the message (i.e. replace
    >> occurences of
    >> soapenv with soap-env).
    >>
    >>  I would appreciate a lot if could could just point me to a sample
    >> code or
    >> to some documentation where that is explained.
    >>
    >>  Regards,
    >>      Razvan
    >>
    >>
    >>
    >>  Anne Thomas Manes wrote:
    >> Axis does not provide this type of configuration option. Either
    >> construct
    >> the message programmatically using JAXP or insert an intermediary
    >> into your
    >> message path to transform the message.
    >>
    >>  Anne
    >>
    >>
    >> On 5/22/06, Razvan Dani <[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>> wrote:
    >> > Hi
    >> >
>> > I am not sure if this is the right place to address this, but i'd
    >> > appreciate some feedback if possible, because i already made
    lots of
    >> > queries on the internet about this issue with no success.
    >> >
    >> > My problem is the following:
    >> > - i am using WSDL to Java ant task to generate classes
    against a WSDL.
    >> > - when i make a method call on the generated Stub (so notice
    that i am
    >> > not constructing the envelope by hand neither i use the Call
    class
    >> > directly), Axis is constructing the envelope as this:
    >> > <soapenv:Envelope
    >> >
    >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";....
    >> >
    >> > This works just fine for many Web Services, but in my
    particular case,
    >> > the Web Service implementation on the server side is
    "hardcoded" to
    >> only
    >> > be able to accept
    >> > <soap-env:Envelope
    >> > xmlns:soap-env=" http://schemas.xmlsoap.org/soap/envelope/
    >> "
    >> >
    >> > I know this is an issue that should be fixed on the server
    part since
    >> > the Web Service specs is flexible to allow any prefix for the
    envelope
    >> > as long as the name space URL is correct. But i don't have
    control on
    >> > the server part and thus i would like to know if this issue
    can be
    >> > tackled from Axis.
    >> >
    >> > So the question is whether it is possible to make some
    >> configuration in
    >> > Axis so that i can specify at runtime what prefix should be used
    >> for the
    >> > envelope (e.g. soap-env instead of soapenv)?
    >> >
    >> > Many thanks in advance if i receive any answer to this issue.
    >> >
    >> > Regards,
    >> >    Razvan


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to