You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Javier Gonzalez <ja...@gmail.com> on 2005/08/25 21:41:43 UTC

Axis 1.2.1 not calling my class!

Hi,

I have a message service over axis 1.2.1, java 1.5, tomcat 5.5.

But it seems like it isn't calling my published class at all - thus my
code that marks mustUnderstand=1 HeaderElements as processed never
gets executed, and the message is rejected with "didn't understand
MustUnderstand headers".

The service is published like this:

 <service name="MessageService" provider="java:MSG" style="message"
use="literal">
  <parameter name="scope" value="request"/>
  <parameter name="className"
value="my.package.mms.mm7receiver.MessageService"/>
  <parameter name="allowedMethods" value="echoElements"/>
  <... class' own parameters ...>
 </service>

How do I tell Axis that I understand the mustUnderstand header so it
will let the message through?

-- 
Javier Gonzalez Nicolini

Re: Axis 1.2.1 not calling my class!

Posted by Javier Gonzalez <ja...@gmail.com>.
Jeff,

thank you very much! Turns out that my handler was ok, but I wasn't
doing the configuration part right. Once I properly inserted the
handler in the request flow it worked.

Thanks again,

Javier.

On 8/25/05, Jeff Greif <jg...@alumni.princeton.edu> wrote:
> Read the user guide.  It explains how to put the handler in the "request
> flow" using the deployment descriptor (in a .wsdd file).
> 
> Jeff
> 
> Javier Gonzalez wrote:
> 
> >Jeff,
> >
> >thanks for your reply. I was thinking that I needed a Handler, too,
> >but when it comes to handlers the documentation is pretty scant.
> >
> >Do you know how to put the handler before the axis engine drops my
> >message as "not understood"?
> >
> >thanks again
> >
> >On 8/25/05, Jeff Greif <jg...@alumni.princeton.edu> wrote:
> >
> >
> >>I believe, but am not certain, that some Handler must remove any headers
> >>marked "mustUnderstand=1".  This may have to be done before the pivot
> >>(that is before the implementation method is called in the server).  I
> >>am not aware of any way to mark a header element as processed (but such
> >>a way might exist nonetheless).
> >>
> >>Jeff
> >>
> >>Javier Gonzalez wrote:
> >>
> >>
> >>
> >>>Hi,
> >>>
> >>>I have a message service over axis 1.2.1, java 1.5, tomcat 5.5.
> >>>
> >>>But it seems like it isn't calling my published class at all - thus my
> >>>code that marks mustUnderstand=1 HeaderElements as processed never
> >>>gets executed, and the message is rejected with "didn't understand
> >>>MustUnderstand headers".
> >>>
> >>>The service is published like this:
> >>>
> >>><service name="MessageService" provider="java:MSG" style="message"
> >>>use="literal">
> >>> <parameter name="scope" value="request"/>
> >>> <parameter name="className"
> >>>value="my.package.mms.mm7receiver.MessageService"/>
> >>> <parameter name="allowedMethods" value="echoElements"/>
> >>> <... class' own parameters ...>
> >>></service>
> >>>
> >>>How do I tell Axis that I understand the mustUnderstand header so it
> >>>will let the message through?
> >>>
> >>>
> >>>
> >>>
> >>>
> >>
> >>
> >
> >
> >
> >
> 
> 


-- 
Javier Gonzalez Nicolini

Re: Axis 1.2.1 not calling my class!

Posted by Jeff Greif <jg...@alumni.princeton.edu>.
Read the user guide.  It explains how to put the handler in the "request 
flow" using the deployment descriptor (in a .wsdd file).

Jeff

Javier Gonzalez wrote:

>Jeff,
>
>thanks for your reply. I was thinking that I needed a Handler, too,
>but when it comes to handlers the documentation is pretty scant.
>
>Do you know how to put the handler before the axis engine drops my
>message as "not understood"?
>
>thanks again
>
>On 8/25/05, Jeff Greif <jg...@alumni.princeton.edu> wrote:
>  
>
>>I believe, but am not certain, that some Handler must remove any headers
>>marked "mustUnderstand=1".  This may have to be done before the pivot
>>(that is before the implementation method is called in the server).  I
>>am not aware of any way to mark a header element as processed (but such
>>a way might exist nonetheless).
>>
>>Jeff
>>
>>Javier Gonzalez wrote:
>>
>>    
>>
>>>Hi,
>>>
>>>I have a message service over axis 1.2.1, java 1.5, tomcat 5.5.
>>>
>>>But it seems like it isn't calling my published class at all - thus my
>>>code that marks mustUnderstand=1 HeaderElements as processed never
>>>gets executed, and the message is rejected with "didn't understand
>>>MustUnderstand headers".
>>>
>>>The service is published like this:
>>>
>>><service name="MessageService" provider="java:MSG" style="message"
>>>use="literal">
>>> <parameter name="scope" value="request"/>
>>> <parameter name="className"
>>>value="my.package.mms.mm7receiver.MessageService"/>
>>> <parameter name="allowedMethods" value="echoElements"/>
>>> <... class' own parameters ...>
>>></service>
>>>
>>>How do I tell Axis that I understand the mustUnderstand header so it
>>>will let the message through?
>>>
>>>
>>>
>>>      
>>>
>>    
>>
>
>
>  
>


Re: Axis 1.2.1 not calling my class!

Posted by Javier Gonzalez <ja...@gmail.com>.
Jeff,

thanks for your reply. I was thinking that I needed a Handler, too,
but when it comes to handlers the documentation is pretty scant.

Do you know how to put the handler before the axis engine drops my
message as "not understood"?

thanks again

On 8/25/05, Jeff Greif <jg...@alumni.princeton.edu> wrote:
> I believe, but am not certain, that some Handler must remove any headers
> marked "mustUnderstand=1".  This may have to be done before the pivot
> (that is before the implementation method is called in the server).  I
> am not aware of any way to mark a header element as processed (but such
> a way might exist nonetheless).
> 
> Jeff
> 
> Javier Gonzalez wrote:
> 
> >Hi,
> >
> >I have a message service over axis 1.2.1, java 1.5, tomcat 5.5.
> >
> >But it seems like it isn't calling my published class at all - thus my
> >code that marks mustUnderstand=1 HeaderElements as processed never
> >gets executed, and the message is rejected with "didn't understand
> >MustUnderstand headers".
> >
> >The service is published like this:
> >
> > <service name="MessageService" provider="java:MSG" style="message"
> >use="literal">
> >  <parameter name="scope" value="request"/>
> >  <parameter name="className"
> >value="my.package.mms.mm7receiver.MessageService"/>
> >  <parameter name="allowedMethods" value="echoElements"/>
> >  <... class' own parameters ...>
> > </service>
> >
> >How do I tell Axis that I understand the mustUnderstand header so it
> >will let the message through?
> >
> >
> >
> 
> 


-- 
Javier Gonzalez Nicolini

Re: Axis 1.2.1 not calling my class!

Posted by Jeff Greif <jg...@alumni.princeton.edu>.
I believe, but am not certain, that some Handler must remove any headers 
marked "mustUnderstand=1".  This may have to be done before the pivot 
(that is before the implementation method is called in the server).  I 
am not aware of any way to mark a header element as processed (but such 
a way might exist nonetheless).

Jeff

Javier Gonzalez wrote:

>Hi,
>
>I have a message service over axis 1.2.1, java 1.5, tomcat 5.5.
>
>But it seems like it isn't calling my published class at all - thus my
>code that marks mustUnderstand=1 HeaderElements as processed never
>gets executed, and the message is rejected with "didn't understand
>MustUnderstand headers".
>
>The service is published like this:
>
> <service name="MessageService" provider="java:MSG" style="message"
>use="literal">
>  <parameter name="scope" value="request"/>
>  <parameter name="className"
>value="my.package.mms.mm7receiver.MessageService"/>
>  <parameter name="allowedMethods" value="echoElements"/>
>  <... class' own parameters ...>
> </service>
>
>How do I tell Axis that I understand the mustUnderstand header so it
>will let the message through?
>
>  
>