You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Martin Landua <ma...@union-investment.de> on 2006/12/12 07:56:54 UTC

Problem? WebService returning void

Hi,

I have tried to invoke an axis2 web service (using soap11, I must admit). I
simply picked the AddressBook example from the axis2 installation. Now, the
web service returns just nothing when invoking the addEntry method (which is
correct since the function is void).

However, ServiceMix, i.e. xfire, obviously cannot deal with the empty
response and throws an "Unexpected EOF in prolog" exception.

What should we do?

Best regards
Martin
-- 
View this message in context: http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7828279
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem? WebService returning void

Posted by Martin Landua <ma...@union-investment.de>.
Well, the idea was reading a document from somewhere, say, a file, and call a
webservice, and write the response to somewhere. That would be an InOnly
exchange, and the pipeline was supposed to call the webservice using an
InOut exchange. However, since you can't tell what method to invoke, you
would not know whether it returns something.

Anyway, you're right, we could add a router.

Regards
Martin



gnodet wrote:
> 
> Looking at the code, support for RobustInOnly is missing .... :(
> 
> Anyway, if there is no response, there is no need to use a
> pipeline at all.  You should just remove it, or bypass it using
> a router if you need to deal with different meps.
> What's your need for a pipeline in this case ?
> 
> On 12/13/06, Martin Landua <ma...@union-investment.de> wrote:
>>
>> Yes, I dived a little more into it. From what I can tell from the
>> sources, an
>> InOptionalOut exchange would deal correctly with void methods since it
>> checks whether the resonse length is 0.
>>
>> Now, in the example I was talking about, the method was called by a
>> pipeline
>> EIP component. Unfortunately, the EIP component always creates an InOut
>> message. There is no way of making it create an InOptionalOut exchange.
>>
>> Maybe it would be preferrable to add a configuration option to the EIP to
>> specify a MEP. Otherwise, there is no action required so far.
>>
>> Thanks
>> Martin
>>
>>
>>
>> gnodet wrote:
>> >
>> > Are you sure that the exchange send to the http provider endpoint is
>> > an InOnly ?  If you send an InOut, i think you would have the
>> > described behavior.
>> >
>> > On 12/12/06, Martin Landua <ma...@union-investment.de> wrote:
>> >>
>> >> Hi,
>> >>
>> >> I have tried to invoke an axis2 web service (using soap11, I must
>> admit).
>> >> I
>> >> simply picked the AddressBook example from the axis2 installation.
>> Now,
>> >> the
>> >> web service returns just nothing when invoking the addEntry method
>> (which
>> >> is
>> >> correct since the function is void).
>> >>
>> >> However, ServiceMix, i.e. xfire, obviously cannot deal with the empty
>> >> response and throws an "Unexpected EOF in prolog" exception.
>> >>
>> >> What should we do?
>> >>
>> >> Best regards
>> >> Martin
>> >> --
>> >> View this message in context:
>> >>
>> http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7828279
>> >> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7857322
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7859952
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem? WebService returning void

Posted by Guillaume Nodet <gn...@gmail.com>.
Looking at the code, support for RobustInOnly is missing .... :(

Anyway, if there is no response, there is no need to use a
pipeline at all.  You should just remove it, or bypass it using
a router if you need to deal with different meps.
What's your need for a pipeline in this case ?

On 12/13/06, Martin Landua <ma...@union-investment.de> wrote:
>
> Yes, I dived a little more into it. From what I can tell from the sources, an
> InOptionalOut exchange would deal correctly with void methods since it
> checks whether the resonse length is 0.
>
> Now, in the example I was talking about, the method was called by a pipeline
> EIP component. Unfortunately, the EIP component always creates an InOut
> message. There is no way of making it create an InOptionalOut exchange.
>
> Maybe it would be preferrable to add a configuration option to the EIP to
> specify a MEP. Otherwise, there is no action required so far.
>
> Thanks
> Martin
>
>
>
> gnodet wrote:
> >
> > Are you sure that the exchange send to the http provider endpoint is
> > an InOnly ?  If you send an InOut, i think you would have the
> > described behavior.
> >
> > On 12/12/06, Martin Landua <ma...@union-investment.de> wrote:
> >>
> >> Hi,
> >>
> >> I have tried to invoke an axis2 web service (using soap11, I must admit).
> >> I
> >> simply picked the AddressBook example from the axis2 installation. Now,
> >> the
> >> web service returns just nothing when invoking the addEntry method (which
> >> is
> >> correct since the function is void).
> >>
> >> However, ServiceMix, i.e. xfire, obviously cannot deal with the empty
> >> response and throws an "Unexpected EOF in prolog" exception.
> >>
> >> What should we do?
> >>
> >> Best regards
> >> Martin
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7828279
> >> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> >
> >
>
> --
> View this message in context: http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7857322
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Cheers,
Guillaume Nodet

Re: Problem? WebService returning void

Posted by Martin Landua <ma...@union-investment.de>.
Yes, I dived a little more into it. From what I can tell from the sources, an
InOptionalOut exchange would deal correctly with void methods since it
checks whether the resonse length is 0.

Now, in the example I was talking about, the method was called by a pipeline
EIP component. Unfortunately, the EIP component always creates an InOut
message. There is no way of making it create an InOptionalOut exchange.

Maybe it would be preferrable to add a configuration option to the EIP to
specify a MEP. Otherwise, there is no action required so far.

Thanks
Martin



gnodet wrote:
> 
> Are you sure that the exchange send to the http provider endpoint is
> an InOnly ?  If you send an InOut, i think you would have the
> described behavior.
> 
> On 12/12/06, Martin Landua <ma...@union-investment.de> wrote:
>>
>> Hi,
>>
>> I have tried to invoke an axis2 web service (using soap11, I must admit).
>> I
>> simply picked the AddressBook example from the axis2 installation. Now,
>> the
>> web service returns just nothing when invoking the addEntry method (which
>> is
>> correct since the function is void).
>>
>> However, ServiceMix, i.e. xfire, obviously cannot deal with the empty
>> response and throws an "Unexpected EOF in prolog" exception.
>>
>> What should we do?
>>
>> Best regards
>> Martin
>> --
>> View this message in context:
>> http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7828279
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7857322
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem? WebService returning void

Posted by Guillaume Nodet <gn...@gmail.com>.
Are you sure that the exchange send to the http provider endpoint is
an InOnly ?  If you send an InOut, i think you would have the
described behavior.

On 12/12/06, Martin Landua <ma...@union-investment.de> wrote:
>
> Hi,
>
> I have tried to invoke an axis2 web service (using soap11, I must admit). I
> simply picked the AddressBook example from the axis2 installation. Now, the
> web service returns just nothing when invoking the addEntry method (which is
> correct since the function is void).
>
> However, ServiceMix, i.e. xfire, obviously cannot deal with the empty
> response and throws an "Unexpected EOF in prolog" exception.
>
> What should we do?
>
> Best regards
> Martin
> --
> View this message in context: http://www.nabble.com/Problem--WebService-returning-void-tf2805862s12049.html#a7828279
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Cheers,
Guillaume Nodet