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 "S.Oliver" <ol...@cimt-ag.de> on 2009/01/11 19:54:14 UTC

Re: can not generate async server sode code

Hi,

I am not able to find the right place to add the <parameter
name="messageReceiver.invokeOnSeparateThread">true</parameter> to a
service.xml. Could you please tell me, where to put (servicegroup, service,
messagereceivers,messagereceiver,...) into?

The only way to get it working was to override the receive-method in my
MessageReceiverInOut like:

	@Override
	public void receive(MessageContext arg0) throws AxisFault {
		arg0.setProperty(DO_ASYNC,"true");
		super.receive(arg0);
	}

Thanks for help!

Best regards,

Oliver


Damin wrote:
> 
> Amila,
> 
> I tested it and found that messageCtx.getParameter(DO_ASYNC).getValue()
> just returns an empty string.
> 
> In fact, I found in Axis2 library class
> org.apache.axis2.receivers.AbstractMessageReceiver, the method receive
> uses messageCtx.isPropertyTrue(DO_ASYNC) to make the decision.
> 
> I am wondering if there is another place in the service code we can set
> this property.
> 
> Thanks!
> 
> Damin
> 
> 
> Amila Suriarachchi wrote:
>> 
>> On Tue, Sep 9, 2008 at 12:39 AM, Damin <da...@hotmail.com> wrote:
>> 
>>>
>>> Hi Amila,
>>>
>>> I add the following line to services.xml file:
>>>
>>> <parameter name="messageReceiver.invokeOnSeparateThread" value="true" />
>>>
>>> For your reference, the file is shown below (I use Springframework):
>>>
>>> <serviceGroup>
>>>    <service name="Kiosk" class="pax.ge.config.SpringInit">
>>>                <!-- need the TCCL param when using spring inside the AAR
>>> -->
>>>                <parameter name="ServiceTCCL">composite</parameter>
>>>                <parameter
>>>
>>> name="ServiceObjectSupplier">org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier</parameter>
>>>                <parameter
>>> name="SpringBeanName">pax.ge.axis2.http.inbound.KioskSkeleton</parameter>
>>>                <parameter
>>> name="messageReceiver.invokeOnSeparateThread">true</parameter>
>>>        <operation name="sendVerifyData"
>>> mep="http://www.w3.org/ns/wsdl/in-out"
>>> namespace="http://test.com/Kiosk/">
>>>                <messageReceiver
>>> class="pax.ge.axis2.http.inbound.KioskMessageReceiverInOut"/>
>>>
>>> <actionMapping>http://test.com/Kiosk/sendVerifyData</actionMapping>
>>>
>>> <outputActionMapping>http://test.com/Kiosk/Kiosk/sendVerifyDataResponse
>>> </outputActionMapping>
>>>            <faultActionMapping
>>> faultName="VerifyDataException">
>>> http://test.com/Kiosk/sendVerifyData/Fault/VerifyDataException
>>> </faultActionMapping>
>>>            <faultActionMapping
>>>
>>> faultName="VerifyDataFaultMessage">urn:sendVerifyDataVerifyDataFaultMessage</faultActionMapping>
>>>        </operation>
>>>    </service>
>>> </serviceGroup>
>>>
>>> Then I added this line in my KioskMessageReceiverInOut.java class to
>>> test:
>>>
>>> System.out.println("is Asynch? " + msgContext.isPropertyTrue(DO_ASYNC));
>> 
>> use parameter instead of property.
>> messageCtx.getParameter(DO_ASYNC).getValue()
>> 
>> thanks,
>> Amila.
>> 
>> 
>>>
>>>
>>> Unfortunately, it seems no effect - when I start the server and got this
>>> console message:
>>>
>>> is Asynch? false
>>>
>>> Would you please let me know what I may be missing?
>>>
>>> Thanks!
>>>
>>> Damin
>>>
>>>
>>> Amila Suriarachchi wrote:
>>> >
>>> > On Fri, Aug 29, 2008 at 6:20 PM, Damin <da...@hotmail.com>
>>> wrote:
>>> >
>>> >>
>>> >> I am trying to generate asynchronous server side code with the
>>> following
>>> >> ant
>>> >> script:
>>> >>
>>> >> ...
>>> >>
>>> >>                <java classname="org.apache.axis2.wsdl.WSDL2Java">
>>> >>                        <arg value="-uri" />
>>> >>                        <arg value="${basedir}/resources/Kiosk.wsdl"
>>> />
>>> >>                        <arg value="-a" />
>>> >>                        <arg value="-ss" />
>>> >>                        <arg value="-ap" />
>>> >>                        <arg value="-sd" />
>>> >>                        <arg value="-p" />
>>> >>                        <arg value="pax.ge.axis2.http.inbound" />
>>> >>                        <arg value="-o" />
>>> >>                        <arg value="${service.dir}" />
>>> >>                        <classpath refid="class.path" />
>>> >>                </java>
>>> >> ...
>>> >>
>>> >> I expect to get the generated class like:
>>> >>
>>> >>  public class KioskMessageReceiverInOut extends
>> 
>>> >> org.apache.axis2.receivers.AbstractInOutAsyncMessageReceiver {
>>> >
>>> >
>>> > this is an Depricated class. you can not generate a AsyncMessage
>>> receiver.
>>> > set the messageReceiver.invokeOnSeparateThread parameter in the
>>> > services.xml
>>> > file.
>>> >
>>> > thanks,
>>> > Amila.
>>> >
>>> >>
>>> >>
>>> >> However, I still got the class like:
>>> >>
>>> >>  public class KioskMessageReceiverInOut extends
>>> >> org.apache.axis2.receivers.AbstractInOutMessageReceiver{
>>> >>
>>> >> That is, the -a option has no effect to the code gegeration result.
>>> >>
>>> >> Could any one give me a solution?
>>> >>
>>> >> Thanks a lot!
>>> >>
>>> >> -Damin
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> View this message in context:
>>> >>
>>> http://www.nabble.com/can-not-generate-async-server-sode-code-tp19219233p19219233.html
>>> >> Sent from the Axis - User mailing list archive at Nabble.com.
>>> >>
>>> >>
>>> >> ---------------------------------------------------------------------
>>> >> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>>> >> For additional commands, e-mail: axis-user-help@ws.apache.org
>>> >>
>>> >>
>>> >
>>> >
>>> > --
>>> > Amila Suriarachchi,
>>> > WSO2 Inc.
>>> >
>>> >
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/can-not-generate-async-server-sode-code-tp19219233p19379008.html
>>> Sent from the Axis - User mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>>> For additional commands, e-mail: axis-user-help@ws.apache.org
>>>
>>>
>> 
>> 
>> -- 
>> Amila Suriarachchi,
>> WSO2 Inc.
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/can-not-generate-async-server-sode-code-tp19219233p21402582.html
Sent from the Axis - User mailing list archive at Nabble.com.