You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by si...@alice.it on 2008/03/28 09:40:07 UTC

Spring Pojo return

Hi guys,
    I observe a strange thing using my developed work:
I create a WebService from a Spring Pojo bean and I developed it on ServiceMix using servicemix-jsr181 component. 
The strangers come using it: in fact I invoke it using sendsoap an a message that agree with the wsdl, for example:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" >
  <SOAP-ENV:Body>
    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
        <c>3</c>
    </ns1:cccheck>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

and  my return is:

<?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><cccheckResponse xmlns="http://localhost:8080/CCCheck"><out xmlns="http://localhost:8080/CCCheck">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>

That disagrees with the wsdl in fact I was waiting for a <app> tag into <cccheckResponse> one: here is the wsdl

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
		  xmlns="http://schemas.xmlsoap.org/wsdl/" 
		 xmlns:smix="http://servicemix.org/wsdl/jbi/" 
		 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
		 xmlns:tns="http://localhost:8080/CCCheck"
		 xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
		 xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
		 targetNamespace="http://localhost:8080/CCCheck">

	<wsdl:message name="cccheckRequestMessage">
		<wsdl:part name="c" type="xsd:integer"/>
	</wsdl:message>

	<wsdl:message name="cccheckResponseMessage">
		<wsdl:part name="app" type="xsd:boolean"/>
	</wsdl:message>

	<wsdl:portType name="cccheckPortType">
		<wsdl:operation name="cccheck">
			<wsdl:input message="tns:cccheckRequestMessage" name="cccheckRequest"/>
			<wsdl:output message="tns:cccheckResponseMessage" name="cccheckResponse"/>
		</wsdl:operation>
	</wsdl:portType>

	<wsdl:binding name="cccheckSOAPBinding" type="tns:cccheckPortType"><soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="cccheck">
			<soap:operation name="cccheck" soapAction="" style="rpc"/>
			<wsdl:input>
				<soap:body namespace="http://localhost:8080/CCCheck" use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body namespace="http://localhost:8080/CCCheck" use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>

	<wsdl:service name="CCCheckService">
		<wsdl:port binding="tns:cccheckSOAPBinding" name="cccheckPort">
			<soap:address location="http://localhost:8080/CCCheck"/>
			<smix:endpoint defaultMep="in-out" role="consumer"/>
		</wsdl:port>
	</wsdl:service>

	<plnk:partnerLinkType name="CCCheckPartnerLinkType">
		<plnk:role name="CCCheckRole" portType="tns:cccheckPortType"/>
	</plnk:partnerLinkType>
</wsdl:definitions>


Using it directly may seems a silliness but I invoke this ws from a BPEL and reading the response fails for this problem!!!
To be clearest I attach here the xbean.xml too:

<?xml version="1.0" encoding="UTF-8" standalone="no"?><beans xmlns:aop="http://www.springframework.org/schema/aop" xmlns:jsr181="http://servicemix.apache.org/jsr181/1.0" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:wsdl="http://localhost:8080/CCCheck">
	<jsr181:endpoint annotations="none" service="wsdl:CCCheckService" serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
		<jsr181:pojo>
			<bean class="CCCheck" id="cccheckService"/>
			<tx:advice id="txAdvice">
				<tx:attributes>
					<tx:method name="cccheck" readOnly="true"/>
				</tx:attributes>
			</tx:advice>
			<aop:config>
				<aop:pointcut expression="excecution(*CCCheck.*(...))" id="cccheckServiceOperation"/>
				<aop:advisor advice-ref="txAdvice" pointcut-ref="cccheckServiceOperation"/>
			</aop:config>
		</jsr181:pojo>
	</jsr181:endpoint>
</beans>

There is someone may give me an explanation and a way to bypass this problem?
Thank you all in advance guys,
regards

Simone

Re: R: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
Hi Guillaume,
    I try to annotate my Java class with jsr181 script type and it works 
fine!!!
Thank you for the idea looking at xfire package.
Now I'm trying to return a complex object but always I get back an empty 
message.
This is my code:

@WebMethod
@WebReturn(name="resp")
public static EchoReturnObject((@WebParam name="in")String in)
{
        EchoReturnObject o = new EchoReturnObject();
        o.resp=in;
        o.i=0;
}

[..]

class EchoReturnObject
{
    String resp;
    int i;
}

How you may see this class is simply a testing one.
Have you got any idea how to hang complex object returns?
In the example it returns a Collection object and all works fine so I don't 
understand why I got an empty.
Thank you very much,  Simone




----- Original Message ----- 
From: "Guillaume Nodet" <gn...@gmail.com>
To: <us...@servicemix.apache.org>
Sent: Monday, March 31, 2008 1:18 PM
Subject: Re: R: Spring Pojo return


> You said your problem was that the WSDL and the response of the component
> are not consistent, so do not configure the wsdl on the jsr181 endpoint 
> and
> let the component generate it for you.   You can retrieve it using a JMX
> console by browsing the mbean associated with the endpoint and you'll see 
> a
> method to retrieve the wsdl.  You can also put the log level to debug and
> IIRC, the wsdl should be printed somewhere.  Then, use that one in your 
> BPEL
> instead of your current one.
>
> On Mon, Mar 31, 2008 at 1:12 PM, Simone Maletta <si...@alice.it>
> wrote:
>
>> May you be clearest??
>> here is the wsdl I'm using:
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>>     <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>                 xmlns="http://schemas.xmlsoap.org/wsdl/"
>>                xmlns:smix="http://servicemix.org/wsdl/jbi/"
>>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>                 xmlns:tns="http://localhost:8080/CCCheck"
>>                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>  xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>                targetNamespace="http://localhost:8080/CCCheck ">
>>
>>        <wsdl:message name="cccheckRequestMessage">
>>                <wsdl:part name="in0" type="xsd:integer"/>
>>         </wsdl:message>
>>
>>        <wsdl:message name="cccheckResponseMessage">
>>                <wsdl:part name="out" type="xsd:boolean"/>
>>         </wsdl:message>
>>       <wsdl:portType name="cccheckPortType">
>>                <wsdl:operation name="cccheck">
>>                        <wsdl:input message="tns:cccheckRequestMessage"
>> name="cccheckRequest"/>
>>                       <wsdl:output  message="tns:cccheckResponseMessage"
>> name="cccheckResponse"/>
>>                </wsdl:operation>
>>      </wsdl:portType>
>>
>>       <wsdl:binding name="cccheckSOAPBinding"
>> type="tns:cccheckPortType"><soap:binding style="rpc"  transport="
>> http://schemas.xmlsoap.org/soap/http"/>
>>              <wsdl:operation name="cccheck">
>>                        <soap:operation name="cccheck" soapAction=""
>> style="rpc"/>
>>                        <wsdl:input>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:input>
>>                        <wsdl:output>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:output>
>>                </wsdl:operation>
>>       </wsdl:binding>
>>
>>        <wsdl:service name="CCCheckService">
>>               <wsdl:port binding="tns:cccheckSOAPBinding"
>>  name="cccheckPort">
>>                       <soap:address location="
>> http://localhost:8080/CCCheck"/>
>>                        <smix:endpoint defaultMep="in-out"
>> role="consumer"/>
>>                </wsdl:port>
>>       </wsdl:service>
>>
>>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>>                <plnk:role name="CCCheckRole"
>> portType="tns:cccheckPortType"/>
>>        </plnk:partnerLinkType>
>> </wsdl:definitions>
>>
>> ----- Original Message -----
>> From: "Guillaume Nodet" <gn...@gmail.com>
>> To: <us...@servicemix.apache.org>
>> Sent: Monday, March 31, 2008 1:07 PM
>> Subject: Re: R: Spring Pojo return
>>
>>
>> > Why don't you adjust the WSDL to reflect what the component really send
>> ?
>> >
>> > On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta 
>> > <si...@alice.it>
>> > wrote:
>> >
>> >> Hi Guillaume,
>> >>    I've to be true: I have no time studing another component; i tried
>> to
>> >> adeguate my wsdl but I'm having always the same problem: a selection
>> >> failure
>> >> in my bpel process reading the response coming from my pojo.
>> >> I do in a sequence two operations: a sync invoke and an assign
>> operation
>> >> but
>> >> I've got a fault assignement: here is my bpel code:
>> >>
>> >> <invoke inputVariable="requestInvokeCCCheckMessage"
>>  operation="cccheck"
>> >> outputVariable="replyInvokeCCCheckMessage" [...]/>
>> >> <assign>
>> >>    <copy>
>> >>        <from part="out" variable="replyInvokeCCCheckMessage"/>
>> >>        <to variable="approvedVariable">
>> >>
>> >> and the assign falut; all I read on the monitor is
>> >> ASSIGN Fault.
>> >> Have you got any idea??
>> >> Tahnk you, regards, Simone
>> >>
>> >> ----- Original Message -----
>> >> From: "Guillaume Nodet" <gn...@gmail.com>
>> >> To: <us...@servicemix.apache.org>
>> >> Sent: Monday, March 31, 2008 10:00 AM
>> >> Subject: Re: R: Spring Pojo return
>> >>
>> >>
>> >> > You can't really keep both the WSDL and the java class.  If you use
>> >> JAXWS,
>> >> > you need to start from either the WSDL or the java interface and
>> >> generate
>> >> > the other using the provided tool.  If you go that way, I would
>> >> recommand
>> >> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
>> >> > compliant
>> >> > and XFire (hence servivemix-jsr181) is not.
>> >> > You can have a look at the cxf-wsdl-first example which shows the 
>> >> > use
>> >> > of
>> >> > the
>> >> > CXF based components with a WSDL-first approach.
>> >> >
>> >> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta
>> >> > <si...@alice.it>
>> >> > wrote:
>> >> >
>> >> >> Hi Guillaume,
>> >> >>    what should I change in my class if I wish use JAX-WS 
>> >> >> annotation?
>> >> >> The fact is that the WSDL and the class are auto-generated from a
>> user
>> >> >> description than I need to preseve, or better I prefer, preserves
>> >> >> names
>> >> >> given by the user.
>> >> >> I try to understand it from examples or from internet tutorials, 
>> >> >> but
>> >> >> having
>> >> >> not much time carry me to understand less tha I need.
>> >> >> Thank you very much,  regards
>> >> >> Simone
>> >> >>
>> >> >>
>> >> >> ----- Original Message -----
>> >> >> From: "Guillaume Nodet" <gn...@gmail.com>
>> >> >> To: <us...@servicemix.apache.org>
>> >> >> Sent: Monday, March 31, 2008 9:06 AM
>> >> >> Subject: Re: R: Spring Pojo return
>> >> >>
>> >> >>
>> >> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no 
>> >> >> > way
>> >> for
>> >> >> you
>> >> >> > to control the exact schema in an RPC mode.  So I would suggest 
>> >> >> > to
>> >> make
>> >> >> > sure
>> >> >> > your WSDL generator create a WSDL that is compatible  with what
>> >> >> > XFire
>> >> >> > expects.  You could also just use the one generated by the
>> >> >> > servicemix-jsr181
>> >> >> > component which should be ok.
>> >> >> >
>> >> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
>> >> >> >
>> >> >> >> Hi Guillaume,
>> >> >> >>    I generate the wsdl with my own Java program from an XML
>> >> >> >> description
>> >> >> >> as
>> >> >> >> I do with the Java class because I found some problems with the
>> >> >> >> tool
>> >> >> >> in
>> >> >> >> axis2 and I prefer  create it from the scratch, using my class.
>> >> >> >> If there is a simple way to correct the error using jsr181 
>> >> >> >> please
>> >> tell
>> >> >> >> me,
>> >> >> >> instead I've to change something more  in my thesis, in fact it
>> >> >> generate,
>> >> >> >> starting from an XML description the SA in an automatic way.
>> >> >> >> I add: my POJO is not annotated.
>> >> >> >> Thank you very much, regards
>> >> >> >> Simone
>> >> >> >>
>> >> >> >>
>> >> >> >> -----Messaggio originale-----
>> >> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
>> >> >> >> Inviato: sab 29/03/2008 7.59
>> >> >> >> A: users@servicemix.apache.org
>> >> >> >> Oggetto: Re: Spring Pojo return
>> >> >> >>
>> >> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
>> >> component
>> >> >> >> from
>> >> >> >> the java pojo ?
>> >> >> >> It seems just a problem in the wsdl generation.   Anyway, xfire,
>> >> which
>> >> >> is
>> >> >> >> used internally in jsr181 is not developped anymore so if would
>> >> advise
>> >> >> to
>> >> >> >> use the servicemix-cxf-se instead.
>> >> >> >>
>> >> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
>> >> >> simonemaletta@alice.it>
>> >> >> >> wrote:
>> >> >> >>
>> >> >> >> >
>> >> >> >> > Hi Guillaume,
>> >> >> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
>> >> >> >> CCCheck.wsdl
>> >> >> >> > "
>> >> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
>> >> servicemix
>> >> >> >> > console:
>> >> >> >> >
>> >> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
>> >> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not
>> exist!
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> >> RPCBinding.java
>> >> >> >> > :87)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> >> > SoapBodyHandler.java:42)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> >> HandlerPipeline.java
>> >> >> >> > :131)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> >> > DefaultEndpoint.java:64)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> >> AbstractChannel.java
>> >> >> >> > :38)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
>> (
>> >> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> >> > BaseLifeCycle.java:46)
>> >> >> >> >        at
>> >> >> >> >
>> >> >>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> >> > AbstractFlow.java:174)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> >> SedaFlow.java
>> >> >> >> > :176)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> >> SedaQueue.java
>> >> >> >> > :134)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > and here the fault message I receive in the invoking console:
>> >> >> >> >
>> >> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
>> >> >> >> > c does not
>> >> >> >> > exist!</faultstring><detail><stack>
>> >> >> org.codehaus.xfire.fault.XFireFault:
>> >> >> >> > Parameter c does not exist!
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> >> RPCBinding.java
>> >> >> >> > :87)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> >> > SoapBodyHandler.java:42)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> >> HandlerPipeline.java
>> >> >> >> > :131)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> >> > DefaultEndpoint.java:64)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> >> AbstractChannel.java
>> >> >> >> > :38)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
>> (
>> >> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> >> > BaseLifeCycle.java:46)
>> >> >> >> >        at
>> >> >> >> >
>> >> >>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> >> > AbstractFlow.java:174)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> >> SedaFlow.java
>> >> >> >> > :176)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> >> SedaQueue.java
>> >> >> >> > :134)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >> >
>> >> >>
>> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> >> >
>> >> >> >> > but now with my browser I may read the wsdl I wrote.
>> >> >> >> > Here is the package file:
>> >> >> >> >
>> >> >> >> > --CCCheck-sa.jar
>> >> >> >> > |
>> >> >> >> > |------CCCheck-http-su.jar
>> >> >> >> > |    |
>> >> >> >> > |    |------CCCheck.wsdl
>> >> >> >> > |    \
>> >> >> >> > |
>> >> >> >> > |-------CCCheck-jsr181-su.jar
>> >> >> >> > |       |
>> >> >> >> > |       |-----*.class
>> >> >> >> > |       |-----CCCheck.wsdl
>> >> >> >> > |       |-----xbean.xml
>> >> >> >> > |       \
>> >> >> >> > \
>> >> >> >> >
>> >> >> >> > Have you got any idea?? Please help me!!!
>> >> >> >> > Thank you very much, regards
>> >> >> >> >
>> >> >> >> > Simone
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > gnodet wrote:
>> >> >> >> > >
>> >> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
>> >> element
>> >> >> >> > > ?
>> >> >> >> > >
>> >> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it>
>> >> >> >> > > wrote:
>> >> >> >> > >
>> >> >> >> > >> Hi guys,
>> >> >> >> > >>    I observe a strange thing using my developed work:
>> >> >> >> > >> I create a WebService from a Spring Pojo bean and I
>> developed
>> >> it
>> >> >> on
>> >> >> >> > >> ServiceMix using servicemix-jsr181 component.
>> >> >> >> > >> The strangers come using it: in fact I invoke it using
>> >> >> >> > >> sendsoap
>> >> >> >> > >> an
>> >> >> a
>> >> >> >> > >> message that agree with the wsdl, for example:
>> >> >> >> > >>
>> >> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
>> >> >> >> > >>  <SOAP-ENV:Body>
>> >> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>> >> >> >> > >>        <c>3</c>
>> >> >> >> > >>    </ns1:cccheck>
>> >> >> >> > >>  </SOAP-ENV:Body>
>> >> >> >> > >> </SOAP-ENV:Envelope>
>> >> >> >> > >>
>> >> >> >> > >> and  my return is:
>> >> >> >> > >>
>> >> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> >> > xmlns:SOAP-ENV="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
>> >> >> >> > "><SOAP-ENV:Body><cccheckResponse
>> >> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> >> >> >> > >> http://localhost:8080/CCCheck
>> >> >> >> > >>
>> >> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> >> > >>
>> >> >> >> > >> That disagrees with the wsdl in fact I was waiting for a
>> <app>
>> >> >> >> > >> tag
>> >> >> >> into
>> >> >> >> > >> <cccheckResponse> one: here is the wsdl
>> >> >> >> > >>
>> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> >> >> >> > >> <wsdl:definitions
>> >> >> >> > >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> >> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>> >> >> >> > >> 
>> >> >> >> > >> xmlns:smix="http://servicemix.org/wsdl/jbi/"
>> >> >> >> > >>
>> >> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> >> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
>> >> >> >> > >> 
>> >> >> >> > >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> >> >> >> > >>
>> >> >> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> >> >> >> > >> "
>> >> >> >> > >>                 targetNamespace="
>> http://localhost:8080/CCCheck
>> >> ">
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
>> >> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
>> >> >> >> > >>        </wsdl:message>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
>> >> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
>> >> >> >> > >>        </wsdl:message>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:portType name="cccheckPortType">
>> >> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> >> > >>                        <wsdl:input
>> >> >> >> message="tns:cccheckRequestMessage"
>> >> >> >> > >> name="cccheckRequest"/>
>> >> >> >> > >>                        <wsdl:output
>> >> >> >> > message="tns:cccheckResponseMessage"
>> >> >> >> > >> name="cccheckResponse"/>
>> >> >> >> > >>                </wsdl:operation>
>> >> >> >> > >>        </wsdl:portType>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
>> >> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
>> >> transport="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
>> >> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> >> > >>                        <soap:operation name="cccheck"
>> >> >> soapAction=""
>> >> >> >> > >> style="rpc"/>
>> >> >> >> > >>                        <wsdl:input>
>> >> >> >> > >>                                <soap:body namespace="
>> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> >> > >>                        </wsdl:input>
>> >> >> >> > >>                        <wsdl:output>
>> >> >> >> > >>                                <soap:body namespace="
>> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> >> > >>                        </wsdl:output>
>> >> >> >> > >>                </wsdl:operation>
>> >> >> >> > >>        </wsdl:binding>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:service name="CCCheckService">
>> >> >> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> >> >> >> > >> name="cccheckPort">
>> >> >> >> > >>                        <soap:address location="
>> >> >> >> > >> http://localhost:8080/CCCheck"/>
>> >> >> >> > >>                        <smix:endpoint defaultMep="in-out"
>> >> >> >> > >> role="consumer"/>
>> >> >> >> > >>                </wsdl:port>
>> >> >> >> > >>        </wsdl:service>
>> >> >> >> > >>
>> >> >> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>> >> >> >> > >>                <plnk:role name="CCCheckRole"
>> >> >> >> > >> portType="tns:cccheckPortType"/>
>> >> >> >> > >>        </plnk:partnerLinkType>
>> >> >> >> > >> </wsdl:definitions>
>> >> >> >> > >>
>> >> >> >> > >>
>> >> >> >> > >> Using it directly may seems a silliness but I invoke this 
>> >> >> >> > >> ws
>> >> from
>> >> >> a
>> >> >> >> > BPEL
>> >> >> >> > >> and reading the response fails for this problem!!!
>> >> >> >> > >> To be clearest I attach here the xbean.xml too:
>> >> >> >> > >>
>> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" 
>> >> >> >> > >> standalone="no"?><beans
>> >> >> >> > xmlns:aop="
>> >> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> >> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> >> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> >> >> >> > >> http://localhost:8080/CCCheck">
>> >> >> >> > >>        <jsr181:endpoint annotations="none"
>> >> >> >> > service="wsdl:CCCheckService"
>> >> >> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>> >> >> >> > >>                <jsr181:pojo>
>> >> >> >> > >>                        <bean class="CCCheck"
>> >> >> >> > >> id="cccheckService"/>
>> >> >> >> > >>                        <tx:advice id="txAdvice">
>> >> >> >> > >>                                <tx:attributes>
>> >> >> >> > >>                                        <tx:method
>> >> name="cccheck"
>> >> >> >> > >> readOnly="true"/>
>> >> >> >> > >>                                </tx:attributes>
>> >> >> >> > >>                        </tx:advice>
>> >> >> >> > >>                        <aop:config>
>> >> >> >> > >>                                <aop:pointcut
>> >> >> >> > >> expression="excecution(*CCCheck.*(...))"
>> >> >> >> id="cccheckServiceOperation"/>
>> >> >> >> > >>                                <aop:advisor
>> >> advice-ref="txAdvice"
>> >> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
>> >> >> >> > >>                        </aop:config>
>> >> >> >> > >>                </jsr181:pojo>
>> >> >> >> > >>        </jsr181:endpoint>
>> >> >> >> > >> </beans>
>> >> >> >> > >>
>> >> >> >> > >> There is someone may give me an explanation and a way to
>> >> >> >> > >> bypass
>> >> >> this
>> >> >> >> > >> problem?
>> >> >> >> > >> Thank you all in advance guys,
>> >> >> >> > >> regards
>> >> >> >> > >>
>> >> >> >> > >> Simone
>> >> >> >> > >>
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> > > --
>> >> >> >> > > Cheers,
>> >> >> >> > > Guillaume Nodet
>> >> >> >> > > ------------------------
>> >> >> >> > > Blog: http://gnodet.blogspot.com/
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> >
>> >> >> >> > --
>> >> >> >> > View this message in context:
>> >> >> >> >
>> >> >>
>> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
>> >> >> >> > Sent from the ServiceMix - User mailing list archive at
>> >> >> >> > Nabble.com
>> >> .
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> Cheers,
>> >> >> >> Guillaume Nodet
>> >> >> >> ------------------------
>> >> >> >> Blog: http://gnodet.blogspot.com/
>> >> >> >>
>> >> >> >>
>> >> >> >
>> >> >> >
>> >> >> > --
>> >> >> > Cheers,
>> >> >> > Guillaume Nodet
>> >> >> > ------------------------
>> >> >> > Blog: http://gnodet.blogspot.com/
>> >> >> >
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >> > --
>> >> > Cheers,
>> >> > Guillaume Nodet
>> >> > ------------------------
>> >> > Blog: http://gnodet.blogspot.com/
>> >> >
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> > ------------------------
>> > Blog: http://gnodet.blogspot.com/
>> >
>>
>>
>
>
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 


Re: R: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
Use xfire java2wsdl tool and feed it with the pojo.

On Mon, Mar 31, 2008 at 1:22 PM, Simone Maletta <si...@alice.it>
wrote:

> This may be true if I wrote my BPEL by hand, but I wrote the BPEL in an
> automatic way, then it has to refers to parts an variable in a parametric
> way, I can't deploy the pojo, get the wsdl and then run the BPEL builder.
> I
> need an automatic procedure.
> Any Idea?
> Thank you, Simone
>
>
> ----- Original Message -----
> From: "Guillaume Nodet" <gn...@gmail.com>
> To: <us...@servicemix.apache.org>
> Sent: Monday, March 31, 2008 1:18 PM
> Subject: Re: R: Spring Pojo return
>
>
> > You said your problem was that the WSDL and the response of the
> component
> > are not consistent, so do not configure the wsdl on the jsr181 endpoint
> > and
> > let the component generate it for you.   You can retrieve it using a JMX
> > console by browsing the mbean associated with the endpoint and you'll
> see
> > a
> > method to retrieve the wsdl.  You can also put the log level to debug
> and
> > IIRC, the wsdl should be printed somewhere.  Then, use that one in your
> > BPEL
> > instead of your current one.
> >
> > On Mon, Mar 31, 2008 at 1:12 PM, Simone Maletta <si...@alice.it>
> > wrote:
> >
> >> May you be clearest??
> >> here is the wsdl I'm using:
> >>
> >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >>     <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >>                 xmlns="http://schemas.xmlsoap.org/wsdl/"
> >>                xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >>                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >>  xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
> >>                targetNamespace="http://localhost:8080/CCCheck ">
> >>
> >>        <wsdl:message name="cccheckRequestMessage">
> >>                <wsdl:part name="in0" type="xsd:integer"/>
> >>         </wsdl:message>
> >>
> >>        <wsdl:message name="cccheckResponseMessage">
> >>                <wsdl:part name="out" type="xsd:boolean"/>
> >>         </wsdl:message>
> >>       <wsdl:portType name="cccheckPortType">
> >>                <wsdl:operation name="cccheck">
> >>                        <wsdl:input message="tns:cccheckRequestMessage"
> >> name="cccheckRequest"/>
> >>                       <wsdl:output
>  message="tns:cccheckResponseMessage"
> >> name="cccheckResponse"/>
> >>                </wsdl:operation>
> >>      </wsdl:portType>
> >>
> >>       <wsdl:binding name="cccheckSOAPBinding"
> >> type="tns:cccheckPortType"><soap:binding style="rpc"  transport="
> >> http://schemas.xmlsoap.org/soap/http"/>
> >>              <wsdl:operation name="cccheck">
> >>                        <soap:operation name="cccheck" soapAction=""
> >> style="rpc"/>
> >>                        <wsdl:input>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:input>
> >>                        <wsdl:output>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:output>
> >>                </wsdl:operation>
> >>       </wsdl:binding>
> >>
> >>        <wsdl:service name="CCCheckService">
> >>               <wsdl:port binding="tns:cccheckSOAPBinding"
> >>  name="cccheckPort">
> >>                       <soap:address location="
> >> http://localhost:8080/CCCheck"/>
> >>                        <smix:endpoint defaultMep="in-out"
> >> role="consumer"/>
> >>                </wsdl:port>
> >>       </wsdl:service>
> >>
> >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >>                <plnk:role name="CCCheckRole"
> >> portType="tns:cccheckPortType"/>
> >>        </plnk:partnerLinkType>
> >> </wsdl:definitions>
> >>
> >> ----- Original Message -----
> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> To: <us...@servicemix.apache.org>
> >> Sent: Monday, March 31, 2008 1:07 PM
> >> Subject: Re: R: Spring Pojo return
> >>
> >>
> >> > Why don't you adjust the WSDL to reflect what the component really
> send
> >> ?
> >> >
> >> > On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta
> >> > <si...@alice.it>
> >> > wrote:
> >> >
> >> >> Hi Guillaume,
> >> >>    I've to be true: I have no time studing another component; i
> tried
> >> to
> >> >> adeguate my wsdl but I'm having always the same problem: a selection
> >> >> failure
> >> >> in my bpel process reading the response coming from my pojo.
> >> >> I do in a sequence two operations: a sync invoke and an assign
> >> operation
> >> >> but
> >> >> I've got a fault assignement: here is my bpel code:
> >> >>
> >> >> <invoke inputVariable="requestInvokeCCCheckMessage"
> >>  operation="cccheck"
> >> >> outputVariable="replyInvokeCCCheckMessage" [...]/>
> >> >> <assign>
> >> >>    <copy>
> >> >>        <from part="out" variable="replyInvokeCCCheckMessage"/>
> >> >>        <to variable="approvedVariable">
> >> >>
> >> >> and the assign falut; all I read on the monitor is
> >> >> ASSIGN Fault.
> >> >> Have you got any idea??
> >> >> Tahnk you, regards, Simone
> >> >>
> >> >> ----- Original Message -----
> >> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> >> To: <us...@servicemix.apache.org>
> >> >> Sent: Monday, March 31, 2008 10:00 AM
> >> >> Subject: Re: R: Spring Pojo return
> >> >>
> >> >>
> >> >> > You can't really keep both the WSDL and the java class.  If you
> use
> >> >> JAXWS,
> >> >> > you need to start from either the WSDL or the java interface and
> >> >> generate
> >> >> > the other using the provided tool.  If you go that way, I would
> >> >> recommand
> >> >> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
> >> >> > compliant
> >> >> > and XFire (hence servivemix-jsr181) is not.
> >> >> > You can have a look at the cxf-wsdl-first example which shows the
> >> >> > use
> >> >> > of
> >> >> > the
> >> >> > CXF based components with a WSDL-first approach.
> >> >> >
> >> >> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta
> >> >> > <si...@alice.it>
> >> >> > wrote:
> >> >> >
> >> >> >> Hi Guillaume,
> >> >> >>    what should I change in my class if I wish use JAX-WS
> >> >> >> annotation?
> >> >> >> The fact is that the WSDL and the class are auto-generated from a
> >> user
> >> >> >> description than I need to preseve, or better I prefer, preserves
> >> >> >> names
> >> >> >> given by the user.
> >> >> >> I try to understand it from examples or from internet tutorials,
> >> >> >> but
> >> >> >> having
> >> >> >> not much time carry me to understand less tha I need.
> >> >> >> Thank you very much,  regards
> >> >> >> Simone
> >> >> >>
> >> >> >>
> >> >> >> ----- Original Message -----
> >> >> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> >> >> To: <us...@servicemix.apache.org>
> >> >> >> Sent: Monday, March 31, 2008 9:06 AM
> >> >> >> Subject: Re: R: Spring Pojo return
> >> >> >>
> >> >> >>
> >> >> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no
> >> >> >> > way
> >> >> for
> >> >> >> you
> >> >> >> > to control the exact schema in an RPC mode.  So I would suggest
> >> >> >> > to
> >> >> make
> >> >> >> > sure
> >> >> >> > your WSDL generator create a WSDL that is compatible  with what
> >> >> >> > XFire
> >> >> >> > expects.  You could also just use the one generated by the
> >> >> >> > servicemix-jsr181
> >> >> >> > component which should be ok.
> >> >> >> >
> >> >> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it>
> wrote:
> >> >> >> >
> >> >> >> >> Hi Guillaume,
> >> >> >> >>    I generate the wsdl with my own Java program from an XML
> >> >> >> >> description
> >> >> >> >> as
> >> >> >> >> I do with the Java class because I found some problems with
> the
> >> >> >> >> tool
> >> >> >> >> in
> >> >> >> >> axis2 and I prefer  create it from the scratch, using my
> class.
> >> >> >> >> If there is a simple way to correct the error using jsr181
> >> >> >> >> please
> >> >> tell
> >> >> >> >> me,
> >> >> >> >> instead I've to change something more  in my thesis, in fact
> it
> >> >> >> generate,
> >> >> >> >> starting from an XML description the SA in an automatic way.
> >> >> >> >> I add: my POJO is not annotated.
> >> >> >> >> Thank you very much, regards
> >> >> >> >> Simone
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> -----Messaggio originale-----
> >> >> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
> >> >> >> >> Inviato: sab 29/03/2008 7.59
> >> >> >> >> A: users@servicemix.apache.org
> >> >> >> >> Oggetto: Re: Spring Pojo return
> >> >> >> >>
> >> >> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
> >> >> component
> >> >> >> >> from
> >> >> >> >> the java pojo ?
> >> >> >> >> It seems just a problem in the wsdl generation.   Anyway,
> xfire,
> >> >> which
> >> >> >> is
> >> >> >> >> used internally in jsr181 is not developped anymore so if
> would
> >> >> advise
> >> >> >> to
> >> >> >> >> use the servicemix-cxf-se instead.
> >> >> >> >>
> >> >> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
> >> >> >> simonemaletta@alice.it>
> >> >> >> >> wrote:
> >> >> >> >>
> >> >> >> >> >
> >> >> >> >> > Hi Guillaume,
> >> >> >> >> >   I try to add style="rpc" and to add
> wsdlResource="classpath:
> >> >> >> >> CCCheck.wsdl
> >> >> >> >> > "
> >> >> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
> >> >> servicemix
> >> >> >> >> > console:
> >> >> >> >> >
> >> >> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
> >> >> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not
> >> exist!
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> >> >> RPCBinding.java
> >> >> >> >> > :87)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> >> >> > SoapBodyHandler.java:42)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> >> >> HandlerPipeline.java
> >> >> >> >> > :131)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> >> >> > DefaultEndpoint.java:64)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> >> >> AbstractChannel.java
> >> >> >> >> > :38)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process
> (
> >> >> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >> >> >        at
> >> >> >> >> >
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
> >> (
> >> >> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange
> (
> >> >> >> >> > BaseLifeCycle.java:46)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >>
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> >> >> > DeliveryChannelImpl.java:595)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> >> >> > AbstractFlow.java:174)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> >> >> SedaFlow.java
> >> >> >> >> > :176)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> >> >> SedaQueue.java
> >> >> >> >> > :134)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >> > and here the fault message I receive in the invoking
> console:
> >> >> >> >> >
> >> >> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> >> >> >> >> >
> >> >> >> >>
> >> >> >>
> >> >>
> >>
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> >> >> >> >> > c does not
> >> >> >> >> > exist!</faultstring><detail><stack>
> >> >> >> org.codehaus.xfire.fault.XFireFault:
> >> >> >> >> > Parameter c does not exist!
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> >> >> RPCBinding.java
> >> >> >> >> > :87)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> >> >> > SoapBodyHandler.java:42)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> >> >> HandlerPipeline.java
> >> >> >> >> > :131)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> >> >> > DefaultEndpoint.java:64)
> >> >> >> >> >        at
> >> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> >> >> AbstractChannel.java
> >> >> >> >> > :38)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process
> (
> >> >> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >> >> >        at
> >> >> >> >> >
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
> >> (
> >> >> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange
> (
> >> >> >> >> > BaseLifeCycle.java:46)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >>
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> >> >> > DeliveryChannelImpl.java:595)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> >> >> > AbstractFlow.java:174)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> >> >> SedaFlow.java
> >> >> >> >> > :176)
> >> >> >> >> >        at
> >> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> >> >> SedaQueue.java
> >> >> >> >> > :134)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >> >> >        at
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >> >> >
> >> >> >>
> >> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> >> >> >
> >> >> >> >> > but now with my browser I may read the wsdl I wrote.
> >> >> >> >> > Here is the package file:
> >> >> >> >> >
> >> >> >> >> > --CCCheck-sa.jar
> >> >> >> >> > |
> >> >> >> >> > |------CCCheck-http-su.jar
> >> >> >> >> > |    |
> >> >> >> >> > |    |------CCCheck.wsdl
> >> >> >> >> > |    \
> >> >> >> >> > |
> >> >> >> >> > |-------CCCheck-jsr181-su.jar
> >> >> >> >> > |       |
> >> >> >> >> > |       |-----*.class
> >> >> >> >> > |       |-----CCCheck.wsdl
> >> >> >> >> > |       |-----xbean.xml
> >> >> >> >> > |       \
> >> >> >> >> > \
> >> >> >> >> >
> >> >> >> >> > Have you got any idea?? Please help me!!!
> >> >> >> >> > Thank you very much, regards
> >> >> >> >> >
> >> >> >> >> > Simone
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >> > gnodet wrote:
> >> >> >> >> > >
> >> >> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
> >> >> element
> >> >> >> >> > > ?
> >> >> >> >> > >
> >> >> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it>
> >> >> >> >> > > wrote:
> >> >> >> >> > >
> >> >> >> >> > >> Hi guys,
> >> >> >> >> > >>    I observe a strange thing using my developed work:
> >> >> >> >> > >> I create a WebService from a Spring Pojo bean and I
> >> developed
> >> >> it
> >> >> >> on
> >> >> >> >> > >> ServiceMix using servicemix-jsr181 component.
> >> >> >> >> > >> The strangers come using it: in fact I invoke it using
> >> >> >> >> > >> sendsoap
> >> >> >> >> > >> an
> >> >> >> a
> >> >> >> >> > >> message that agree with the wsdl, for example:
> >> >> >> >> > >>
> >> >> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
> >> >> >> >> > >>  <SOAP-ENV:Body>
> >> >> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck
> ">
> >> >> >> >> > >>        <c>3</c>
> >> >> >> >> > >>    </ns1:cccheck>
> >> >> >> >> > >>  </SOAP-ENV:Body>
> >> >> >> >> > >> </SOAP-ENV:Envelope>
> >> >> >> >> > >>
> >> >> >> >> > >> and  my return is:
> >> >> >> >> > >>
> >> >> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> >> >> > xmlns:SOAP-ENV="
> >> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
> >> >> >> >> > "><SOAP-ENV:Body><cccheckResponse
> >> >> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> >> >> >> > >> http://localhost:8080/CCCheck
> >> >> >> >> > >>
> >> >> >>
> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> >> >> > >>
> >> >> >> >> > >> That disagrees with the wsdl in fact I was waiting for a
> >> <app>
> >> >> >> >> > >> tag
> >> >> >> >> into
> >> >> >> >> > >> <cccheckResponse> one: here is the wsdl
> >> >> >> >> > >>
> >> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> >> >> >> > >> <wsdl:definitions
> >> >> >> >> > >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >> >> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >> >> >> >> > >>
> >> >> >> >> > >> xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >> >> >> >> > >>
> >> >> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >> >> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >> >> >> >> > >>
> >> >> >> >> > >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >> >> >> >> > >>
> >> >> >> >> > >> xmlns:plnk="
> http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> >> >> >> > >> "
> >> >> >> >> > >>                 targetNamespace="
> >> http://localhost:8080/CCCheck
> >> >> ">
> >> >> >> >> > >>
> >> >> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
> >> >> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
> >> >> >> >> > >>        </wsdl:message>
> >> >> >> >> > >>
> >> >> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
> >> >> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
> >> >> >> >> > >>        </wsdl:message>
> >> >> >> >> > >>
> >> >> >> >> > >>        <wsdl:portType name="cccheckPortType">
> >> >> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> >> >> > >>                        <wsdl:input
> >> >> >> >> message="tns:cccheckRequestMessage"
> >> >> >> >> > >> name="cccheckRequest"/>
> >> >> >> >> > >>                        <wsdl:output
> >> >> >> >> > message="tns:cccheckResponseMessage"
> >> >> >> >> > >> name="cccheckResponse"/>
> >> >> >> >> > >>                </wsdl:operation>
> >> >> >> >> > >>        </wsdl:portType>
> >> >> >> >> > >>
> >> >> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
> >> >> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
> >> >> transport="
> >> >> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
> >> >> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> >> >> > >>                        <soap:operation name="cccheck"
> >> >> >> soapAction=""
> >> >> >> >> > >> style="rpc"/>
> >> >> >> >> > >>                        <wsdl:input>
> >> >> >> >> > >>                                <soap:body namespace="
> >> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> >> >> > >>                        </wsdl:input>
> >> >> >> >> > >>                        <wsdl:output>
> >> >> >> >> > >>                                <soap:body namespace="
> >> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> >> >> > >>                        </wsdl:output>
> >> >> >> >> > >>                </wsdl:operation>
> >> >> >> >> > >>        </wsdl:binding>
> >> >> >> >> > >>
> >> >> >> >> > >>        <wsdl:service name="CCCheckService">
> >> >> >> >> > >>                <wsdl:port
> binding="tns:cccheckSOAPBinding"
> >> >> >> >> > >> name="cccheckPort">
> >> >> >> >> > >>                        <soap:address location="
> >> >> >> >> > >> http://localhost:8080/CCCheck"/>
> >> >> >> >> > >>                        <smix:endpoint defaultMep="in-out"
> >> >> >> >> > >> role="consumer"/>
> >> >> >> >> > >>                </wsdl:port>
> >> >> >> >> > >>        </wsdl:service>
> >> >> >> >> > >>
> >> >> >> >> > >>        <plnk:partnerLinkType
> name="CCCheckPartnerLinkType">
> >> >> >> >> > >>                <plnk:role name="CCCheckRole"
> >> >> >> >> > >> portType="tns:cccheckPortType"/>
> >> >> >> >> > >>        </plnk:partnerLinkType>
> >> >> >> >> > >> </wsdl:definitions>
> >> >> >> >> > >>
> >> >> >> >> > >>
> >> >> >> >> > >> Using it directly may seems a silliness but I invoke this
> >> >> >> >> > >> ws
> >> >> from
> >> >> >> a
> >> >> >> >> > BPEL
> >> >> >> >> > >> and reading the response fails for this problem!!!
> >> >> >> >> > >> To be clearest I attach here the xbean.xml too:
> >> >> >> >> > >>
> >> >> >> >> > >> <?xml version="1.0" encoding="UTF-8"
> >> >> >> >> > >> standalone="no"?><beans
> >> >> >> >> > xmlns:aop="
> >> >> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> >> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> >> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> >> >> >> > >> http://localhost:8080/CCCheck">
> >> >> >> >> > >>        <jsr181:endpoint annotations="none"
> >> >> >> >> > service="wsdl:CCCheckService"
> >> >> >> >> > >> serviceInterface="CCCheckInterface"
> endpoint="CCCheckPort">
> >> >> >> >> > >>                <jsr181:pojo>
> >> >> >> >> > >>                        <bean class="CCCheck"
> >> >> >> >> > >> id="cccheckService"/>
> >> >> >> >> > >>                        <tx:advice id="txAdvice">
> >> >> >> >> > >>                                <tx:attributes>
> >> >> >> >> > >>                                        <tx:method
> >> >> name="cccheck"
> >> >> >> >> > >> readOnly="true"/>
> >> >> >> >> > >>                                </tx:attributes>
> >> >> >> >> > >>                        </tx:advice>
> >> >> >> >> > >>                        <aop:config>
> >> >> >> >> > >>                                <aop:pointcut
> >> >> >> >> > >> expression="excecution(*CCCheck.*(...))"
> >> >> >> >> id="cccheckServiceOperation"/>
> >> >> >> >> > >>                                <aop:advisor
> >> >> advice-ref="txAdvice"
> >> >> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
> >> >> >> >> > >>                        </aop:config>
> >> >> >> >> > >>                </jsr181:pojo>
> >> >> >> >> > >>        </jsr181:endpoint>
> >> >> >> >> > >> </beans>
> >> >> >> >> > >>
> >> >> >> >> > >> There is someone may give me an explanation and a way to
> >> >> >> >> > >> bypass
> >> >> >> this
> >> >> >> >> > >> problem?
> >> >> >> >> > >> Thank you all in advance guys,
> >> >> >> >> > >> regards
> >> >> >> >> > >>
> >> >> >> >> > >> Simone
> >> >> >> >> > >>
> >> >> >> >> > >
> >> >> >> >> > >
> >> >> >> >> > >
> >> >> >> >> > > --
> >> >> >> >> > > Cheers,
> >> >> >> >> > > Guillaume Nodet
> >> >> >> >> > > ------------------------
> >> >> >> >> > > Blog: http://gnodet.blogspot.com/
> >> >> >> >> > >
> >> >> >> >> > >
> >> >> >> >> >
> >> >> >> >> > --
> >> >> >> >> > View this message in context:
> >> >> >> >> >
> >> >> >>
> >> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> >> >> >> >> > Sent from the ServiceMix - User mailing list archive at
> >> >> >> >> > Nabble.com
> >> >> .
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> Cheers,
> >> >> >> >> Guillaume Nodet
> >> >> >> >> ------------------------
> >> >> >> >> Blog: http://gnodet.blogspot.com/
> >> >> >> >>
> >> >> >> >>
> >> >> >> >
> >> >> >> >
> >> >> >> > --
> >> >> >> > Cheers,
> >> >> >> > Guillaume Nodet
> >> >> >> > ------------------------
> >> >> >> > Blog: http://gnodet.blogspot.com/
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >
> >> >> >
> >> >> > --
> >> >> > Cheers,
> >> >> > Guillaume Nodet
> >> >> > ------------------------
> >> >> > Blog: http://gnodet.blogspot.com/
> >> >> >
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Cheers,
> >> > Guillaume Nodet
> >> > ------------------------
> >> > Blog: http://gnodet.blogspot.com/
> >> >
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: R: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
This may be true if I wrote my BPEL by hand, but I wrote the BPEL in an 
automatic way, then it has to refers to parts an variable in a parametric 
way, I can't deploy the pojo, get the wsdl and then run the BPEL builder. I 
need an automatic procedure.
Any Idea?
Thank you, Simone


----- Original Message ----- 
From: "Guillaume Nodet" <gn...@gmail.com>
To: <us...@servicemix.apache.org>
Sent: Monday, March 31, 2008 1:18 PM
Subject: Re: R: Spring Pojo return


> You said your problem was that the WSDL and the response of the component
> are not consistent, so do not configure the wsdl on the jsr181 endpoint 
> and
> let the component generate it for you.   You can retrieve it using a JMX
> console by browsing the mbean associated with the endpoint and you'll see 
> a
> method to retrieve the wsdl.  You can also put the log level to debug and
> IIRC, the wsdl should be printed somewhere.  Then, use that one in your 
> BPEL
> instead of your current one.
>
> On Mon, Mar 31, 2008 at 1:12 PM, Simone Maletta <si...@alice.it>
> wrote:
>
>> May you be clearest??
>> here is the wsdl I'm using:
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>>     <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>                 xmlns="http://schemas.xmlsoap.org/wsdl/"
>>                xmlns:smix="http://servicemix.org/wsdl/jbi/"
>>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>                 xmlns:tns="http://localhost:8080/CCCheck"
>>                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>  xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>                targetNamespace="http://localhost:8080/CCCheck ">
>>
>>        <wsdl:message name="cccheckRequestMessage">
>>                <wsdl:part name="in0" type="xsd:integer"/>
>>         </wsdl:message>
>>
>>        <wsdl:message name="cccheckResponseMessage">
>>                <wsdl:part name="out" type="xsd:boolean"/>
>>         </wsdl:message>
>>       <wsdl:portType name="cccheckPortType">
>>                <wsdl:operation name="cccheck">
>>                        <wsdl:input message="tns:cccheckRequestMessage"
>> name="cccheckRequest"/>
>>                       <wsdl:output  message="tns:cccheckResponseMessage"
>> name="cccheckResponse"/>
>>                </wsdl:operation>
>>      </wsdl:portType>
>>
>>       <wsdl:binding name="cccheckSOAPBinding"
>> type="tns:cccheckPortType"><soap:binding style="rpc"  transport="
>> http://schemas.xmlsoap.org/soap/http"/>
>>              <wsdl:operation name="cccheck">
>>                        <soap:operation name="cccheck" soapAction=""
>> style="rpc"/>
>>                        <wsdl:input>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:input>
>>                        <wsdl:output>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:output>
>>                </wsdl:operation>
>>       </wsdl:binding>
>>
>>        <wsdl:service name="CCCheckService">
>>               <wsdl:port binding="tns:cccheckSOAPBinding"
>>  name="cccheckPort">
>>                       <soap:address location="
>> http://localhost:8080/CCCheck"/>
>>                        <smix:endpoint defaultMep="in-out"
>> role="consumer"/>
>>                </wsdl:port>
>>       </wsdl:service>
>>
>>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>>                <plnk:role name="CCCheckRole"
>> portType="tns:cccheckPortType"/>
>>        </plnk:partnerLinkType>
>> </wsdl:definitions>
>>
>> ----- Original Message -----
>> From: "Guillaume Nodet" <gn...@gmail.com>
>> To: <us...@servicemix.apache.org>
>> Sent: Monday, March 31, 2008 1:07 PM
>> Subject: Re: R: Spring Pojo return
>>
>>
>> > Why don't you adjust the WSDL to reflect what the component really send
>> ?
>> >
>> > On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta 
>> > <si...@alice.it>
>> > wrote:
>> >
>> >> Hi Guillaume,
>> >>    I've to be true: I have no time studing another component; i tried
>> to
>> >> adeguate my wsdl but I'm having always the same problem: a selection
>> >> failure
>> >> in my bpel process reading the response coming from my pojo.
>> >> I do in a sequence two operations: a sync invoke and an assign
>> operation
>> >> but
>> >> I've got a fault assignement: here is my bpel code:
>> >>
>> >> <invoke inputVariable="requestInvokeCCCheckMessage"
>>  operation="cccheck"
>> >> outputVariable="replyInvokeCCCheckMessage" [...]/>
>> >> <assign>
>> >>    <copy>
>> >>        <from part="out" variable="replyInvokeCCCheckMessage"/>
>> >>        <to variable="approvedVariable">
>> >>
>> >> and the assign falut; all I read on the monitor is
>> >> ASSIGN Fault.
>> >> Have you got any idea??
>> >> Tahnk you, regards, Simone
>> >>
>> >> ----- Original Message -----
>> >> From: "Guillaume Nodet" <gn...@gmail.com>
>> >> To: <us...@servicemix.apache.org>
>> >> Sent: Monday, March 31, 2008 10:00 AM
>> >> Subject: Re: R: Spring Pojo return
>> >>
>> >>
>> >> > You can't really keep both the WSDL and the java class.  If you use
>> >> JAXWS,
>> >> > you need to start from either the WSDL or the java interface and
>> >> generate
>> >> > the other using the provided tool.  If you go that way, I would
>> >> recommand
>> >> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
>> >> > compliant
>> >> > and XFire (hence servivemix-jsr181) is not.
>> >> > You can have a look at the cxf-wsdl-first example which shows the 
>> >> > use
>> >> > of
>> >> > the
>> >> > CXF based components with a WSDL-first approach.
>> >> >
>> >> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta
>> >> > <si...@alice.it>
>> >> > wrote:
>> >> >
>> >> >> Hi Guillaume,
>> >> >>    what should I change in my class if I wish use JAX-WS 
>> >> >> annotation?
>> >> >> The fact is that the WSDL and the class are auto-generated from a
>> user
>> >> >> description than I need to preseve, or better I prefer, preserves
>> >> >> names
>> >> >> given by the user.
>> >> >> I try to understand it from examples or from internet tutorials, 
>> >> >> but
>> >> >> having
>> >> >> not much time carry me to understand less tha I need.
>> >> >> Thank you very much,  regards
>> >> >> Simone
>> >> >>
>> >> >>
>> >> >> ----- Original Message -----
>> >> >> From: "Guillaume Nodet" <gn...@gmail.com>
>> >> >> To: <us...@servicemix.apache.org>
>> >> >> Sent: Monday, March 31, 2008 9:06 AM
>> >> >> Subject: Re: R: Spring Pojo return
>> >> >>
>> >> >>
>> >> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no 
>> >> >> > way
>> >> for
>> >> >> you
>> >> >> > to control the exact schema in an RPC mode.  So I would suggest 
>> >> >> > to
>> >> make
>> >> >> > sure
>> >> >> > your WSDL generator create a WSDL that is compatible  with what
>> >> >> > XFire
>> >> >> > expects.  You could also just use the one generated by the
>> >> >> > servicemix-jsr181
>> >> >> > component which should be ok.
>> >> >> >
>> >> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
>> >> >> >
>> >> >> >> Hi Guillaume,
>> >> >> >>    I generate the wsdl with my own Java program from an XML
>> >> >> >> description
>> >> >> >> as
>> >> >> >> I do with the Java class because I found some problems with the
>> >> >> >> tool
>> >> >> >> in
>> >> >> >> axis2 and I prefer  create it from the scratch, using my class.
>> >> >> >> If there is a simple way to correct the error using jsr181 
>> >> >> >> please
>> >> tell
>> >> >> >> me,
>> >> >> >> instead I've to change something more  in my thesis, in fact it
>> >> >> generate,
>> >> >> >> starting from an XML description the SA in an automatic way.
>> >> >> >> I add: my POJO is not annotated.
>> >> >> >> Thank you very much, regards
>> >> >> >> Simone
>> >> >> >>
>> >> >> >>
>> >> >> >> -----Messaggio originale-----
>> >> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
>> >> >> >> Inviato: sab 29/03/2008 7.59
>> >> >> >> A: users@servicemix.apache.org
>> >> >> >> Oggetto: Re: Spring Pojo return
>> >> >> >>
>> >> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
>> >> component
>> >> >> >> from
>> >> >> >> the java pojo ?
>> >> >> >> It seems just a problem in the wsdl generation.   Anyway, xfire,
>> >> which
>> >> >> is
>> >> >> >> used internally in jsr181 is not developped anymore so if would
>> >> advise
>> >> >> to
>> >> >> >> use the servicemix-cxf-se instead.
>> >> >> >>
>> >> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
>> >> >> simonemaletta@alice.it>
>> >> >> >> wrote:
>> >> >> >>
>> >> >> >> >
>> >> >> >> > Hi Guillaume,
>> >> >> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
>> >> >> >> CCCheck.wsdl
>> >> >> >> > "
>> >> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
>> >> servicemix
>> >> >> >> > console:
>> >> >> >> >
>> >> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
>> >> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not
>> exist!
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> >> RPCBinding.java
>> >> >> >> > :87)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> >> > SoapBodyHandler.java:42)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> >> HandlerPipeline.java
>> >> >> >> > :131)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> >> > DefaultEndpoint.java:64)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> >> AbstractChannel.java
>> >> >> >> > :38)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
>> (
>> >> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> >> > BaseLifeCycle.java:46)
>> >> >> >> >        at
>> >> >> >> >
>> >> >>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> >> > AbstractFlow.java:174)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> >> SedaFlow.java
>> >> >> >> > :176)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> >> SedaQueue.java
>> >> >> >> > :134)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > and here the fault message I receive in the invoking console:
>> >> >> >> >
>> >> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
>> >> >> >> > c does not
>> >> >> >> > exist!</faultstring><detail><stack>
>> >> >> org.codehaus.xfire.fault.XFireFault:
>> >> >> >> > Parameter c does not exist!
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> >> RPCBinding.java
>> >> >> >> > :87)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> >> > SoapBodyHandler.java:42)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> >> HandlerPipeline.java
>> >> >> >> > :131)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> >> > DefaultEndpoint.java:64)
>> >> >> >> >        at
>> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> >> AbstractChannel.java
>> >> >> >> > :38)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
>> (
>> >> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> >> > BaseLifeCycle.java:46)
>> >> >> >> >        at
>> >> >> >> >
>> >> >>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> >> > AbstractFlow.java:174)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> >> SedaFlow.java
>> >> >> >> > :176)
>> >> >> >> >        at
>> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> >> SedaQueue.java
>> >> >> >> > :134)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >> >        at
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >> >
>> >> >>
>> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> >> >
>> >> >> >> > but now with my browser I may read the wsdl I wrote.
>> >> >> >> > Here is the package file:
>> >> >> >> >
>> >> >> >> > --CCCheck-sa.jar
>> >> >> >> > |
>> >> >> >> > |------CCCheck-http-su.jar
>> >> >> >> > |    |
>> >> >> >> > |    |------CCCheck.wsdl
>> >> >> >> > |    \
>> >> >> >> > |
>> >> >> >> > |-------CCCheck-jsr181-su.jar
>> >> >> >> > |       |
>> >> >> >> > |       |-----*.class
>> >> >> >> > |       |-----CCCheck.wsdl
>> >> >> >> > |       |-----xbean.xml
>> >> >> >> > |       \
>> >> >> >> > \
>> >> >> >> >
>> >> >> >> > Have you got any idea?? Please help me!!!
>> >> >> >> > Thank you very much, regards
>> >> >> >> >
>> >> >> >> > Simone
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > gnodet wrote:
>> >> >> >> > >
>> >> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
>> >> element
>> >> >> >> > > ?
>> >> >> >> > >
>> >> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it>
>> >> >> >> > > wrote:
>> >> >> >> > >
>> >> >> >> > >> Hi guys,
>> >> >> >> > >>    I observe a strange thing using my developed work:
>> >> >> >> > >> I create a WebService from a Spring Pojo bean and I
>> developed
>> >> it
>> >> >> on
>> >> >> >> > >> ServiceMix using servicemix-jsr181 component.
>> >> >> >> > >> The strangers come using it: in fact I invoke it using
>> >> >> >> > >> sendsoap
>> >> >> >> > >> an
>> >> >> a
>> >> >> >> > >> message that agree with the wsdl, for example:
>> >> >> >> > >>
>> >> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
>> >> >> >> > >>  <SOAP-ENV:Body>
>> >> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>> >> >> >> > >>        <c>3</c>
>> >> >> >> > >>    </ns1:cccheck>
>> >> >> >> > >>  </SOAP-ENV:Body>
>> >> >> >> > >> </SOAP-ENV:Envelope>
>> >> >> >> > >>
>> >> >> >> > >> and  my return is:
>> >> >> >> > >>
>> >> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> >> > xmlns:SOAP-ENV="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
>> >> >> >> > "><SOAP-ENV:Body><cccheckResponse
>> >> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> >> >> >> > >> http://localhost:8080/CCCheck
>> >> >> >> > >>
>> >> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> >> > >>
>> >> >> >> > >> That disagrees with the wsdl in fact I was waiting for a
>> <app>
>> >> >> >> > >> tag
>> >> >> >> into
>> >> >> >> > >> <cccheckResponse> one: here is the wsdl
>> >> >> >> > >>
>> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> >> >> >> > >> <wsdl:definitions
>> >> >> >> > >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> >> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>> >> >> >> > >> 
>> >> >> >> > >> xmlns:smix="http://servicemix.org/wsdl/jbi/"
>> >> >> >> > >>
>> >> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> >> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
>> >> >> >> > >> 
>> >> >> >> > >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> >> >> >> > >>
>> >> >> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> >> >> >> > >> "
>> >> >> >> > >>                 targetNamespace="
>> http://localhost:8080/CCCheck
>> >> ">
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
>> >> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
>> >> >> >> > >>        </wsdl:message>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
>> >> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
>> >> >> >> > >>        </wsdl:message>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:portType name="cccheckPortType">
>> >> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> >> > >>                        <wsdl:input
>> >> >> >> message="tns:cccheckRequestMessage"
>> >> >> >> > >> name="cccheckRequest"/>
>> >> >> >> > >>                        <wsdl:output
>> >> >> >> > message="tns:cccheckResponseMessage"
>> >> >> >> > >> name="cccheckResponse"/>
>> >> >> >> > >>                </wsdl:operation>
>> >> >> >> > >>        </wsdl:portType>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
>> >> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
>> >> transport="
>> >> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
>> >> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> >> > >>                        <soap:operation name="cccheck"
>> >> >> soapAction=""
>> >> >> >> > >> style="rpc"/>
>> >> >> >> > >>                        <wsdl:input>
>> >> >> >> > >>                                <soap:body namespace="
>> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> >> > >>                        </wsdl:input>
>> >> >> >> > >>                        <wsdl:output>
>> >> >> >> > >>                                <soap:body namespace="
>> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> >> > >>                        </wsdl:output>
>> >> >> >> > >>                </wsdl:operation>
>> >> >> >> > >>        </wsdl:binding>
>> >> >> >> > >>
>> >> >> >> > >>        <wsdl:service name="CCCheckService">
>> >> >> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> >> >> >> > >> name="cccheckPort">
>> >> >> >> > >>                        <soap:address location="
>> >> >> >> > >> http://localhost:8080/CCCheck"/>
>> >> >> >> > >>                        <smix:endpoint defaultMep="in-out"
>> >> >> >> > >> role="consumer"/>
>> >> >> >> > >>                </wsdl:port>
>> >> >> >> > >>        </wsdl:service>
>> >> >> >> > >>
>> >> >> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>> >> >> >> > >>                <plnk:role name="CCCheckRole"
>> >> >> >> > >> portType="tns:cccheckPortType"/>
>> >> >> >> > >>        </plnk:partnerLinkType>
>> >> >> >> > >> </wsdl:definitions>
>> >> >> >> > >>
>> >> >> >> > >>
>> >> >> >> > >> Using it directly may seems a silliness but I invoke this 
>> >> >> >> > >> ws
>> >> from
>> >> >> a
>> >> >> >> > BPEL
>> >> >> >> > >> and reading the response fails for this problem!!!
>> >> >> >> > >> To be clearest I attach here the xbean.xml too:
>> >> >> >> > >>
>> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" 
>> >> >> >> > >> standalone="no"?><beans
>> >> >> >> > xmlns:aop="
>> >> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> >> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> >> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> >> >> >> > >> http://localhost:8080/CCCheck">
>> >> >> >> > >>        <jsr181:endpoint annotations="none"
>> >> >> >> > service="wsdl:CCCheckService"
>> >> >> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>> >> >> >> > >>                <jsr181:pojo>
>> >> >> >> > >>                        <bean class="CCCheck"
>> >> >> >> > >> id="cccheckService"/>
>> >> >> >> > >>                        <tx:advice id="txAdvice">
>> >> >> >> > >>                                <tx:attributes>
>> >> >> >> > >>                                        <tx:method
>> >> name="cccheck"
>> >> >> >> > >> readOnly="true"/>
>> >> >> >> > >>                                </tx:attributes>
>> >> >> >> > >>                        </tx:advice>
>> >> >> >> > >>                        <aop:config>
>> >> >> >> > >>                                <aop:pointcut
>> >> >> >> > >> expression="excecution(*CCCheck.*(...))"
>> >> >> >> id="cccheckServiceOperation"/>
>> >> >> >> > >>                                <aop:advisor
>> >> advice-ref="txAdvice"
>> >> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
>> >> >> >> > >>                        </aop:config>
>> >> >> >> > >>                </jsr181:pojo>
>> >> >> >> > >>        </jsr181:endpoint>
>> >> >> >> > >> </beans>
>> >> >> >> > >>
>> >> >> >> > >> There is someone may give me an explanation and a way to
>> >> >> >> > >> bypass
>> >> >> this
>> >> >> >> > >> problem?
>> >> >> >> > >> Thank you all in advance guys,
>> >> >> >> > >> regards
>> >> >> >> > >>
>> >> >> >> > >> Simone
>> >> >> >> > >>
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> > > --
>> >> >> >> > > Cheers,
>> >> >> >> > > Guillaume Nodet
>> >> >> >> > > ------------------------
>> >> >> >> > > Blog: http://gnodet.blogspot.com/
>> >> >> >> > >
>> >> >> >> > >
>> >> >> >> >
>> >> >> >> > --
>> >> >> >> > View this message in context:
>> >> >> >> >
>> >> >>
>> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
>> >> >> >> > Sent from the ServiceMix - User mailing list archive at
>> >> >> >> > Nabble.com
>> >> .
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> Cheers,
>> >> >> >> Guillaume Nodet
>> >> >> >> ------------------------
>> >> >> >> Blog: http://gnodet.blogspot.com/
>> >> >> >>
>> >> >> >>
>> >> >> >
>> >> >> >
>> >> >> > --
>> >> >> > Cheers,
>> >> >> > Guillaume Nodet
>> >> >> > ------------------------
>> >> >> > Blog: http://gnodet.blogspot.com/
>> >> >> >
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >> > --
>> >> > Cheers,
>> >> > Guillaume Nodet
>> >> > ------------------------
>> >> > Blog: http://gnodet.blogspot.com/
>> >> >
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> > ------------------------
>> > Blog: http://gnodet.blogspot.com/
>> >
>>
>>
>
>
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 


Re: R: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
You said your problem was that the WSDL and the response of the component
are not consistent, so do not configure the wsdl on the jsr181 endpoint and
let the component generate it for you.   You can retrieve it using a JMX
console by browsing the mbean associated with the endpoint and you'll see a
method to retrieve the wsdl.  You can also put the log level to debug and
IIRC, the wsdl should be printed somewhere.  Then, use that one in your BPEL
instead of your current one.

On Mon, Mar 31, 2008 at 1:12 PM, Simone Maletta <si...@alice.it>
wrote:

> May you be clearest??
> here is the wsdl I'm using:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>     <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>                 xmlns="http://schemas.xmlsoap.org/wsdl/"
>                xmlns:smix="http://servicemix.org/wsdl/jbi/"
>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>                 xmlns:tns="http://localhost:8080/CCCheck"
>                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>  xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>                targetNamespace="http://localhost:8080/CCCheck ">
>
>        <wsdl:message name="cccheckRequestMessage">
>                <wsdl:part name="in0" type="xsd:integer"/>
>         </wsdl:message>
>
>        <wsdl:message name="cccheckResponseMessage">
>                <wsdl:part name="out" type="xsd:boolean"/>
>         </wsdl:message>
>       <wsdl:portType name="cccheckPortType">
>                <wsdl:operation name="cccheck">
>                        <wsdl:input message="tns:cccheckRequestMessage"
> name="cccheckRequest"/>
>                       <wsdl:output  message="tns:cccheckResponseMessage"
> name="cccheckResponse"/>
>                </wsdl:operation>
>      </wsdl:portType>
>
>       <wsdl:binding name="cccheckSOAPBinding"
> type="tns:cccheckPortType"><soap:binding style="rpc"  transport="
> http://schemas.xmlsoap.org/soap/http"/>
>              <wsdl:operation name="cccheck">
>                        <soap:operation name="cccheck" soapAction=""
> style="rpc"/>
>                        <wsdl:input>
>                                <soap:body namespace="
> http://localhost:8080/CCCheck" use="literal"/>
>                        </wsdl:input>
>                        <wsdl:output>
>                                <soap:body namespace="
> http://localhost:8080/CCCheck" use="literal"/>
>                        </wsdl:output>
>                </wsdl:operation>
>       </wsdl:binding>
>
>        <wsdl:service name="CCCheckService">
>               <wsdl:port binding="tns:cccheckSOAPBinding"
>  name="cccheckPort">
>                       <soap:address location="
> http://localhost:8080/CCCheck"/>
>                        <smix:endpoint defaultMep="in-out"
> role="consumer"/>
>                </wsdl:port>
>       </wsdl:service>
>
>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>                <plnk:role name="CCCheckRole"
> portType="tns:cccheckPortType"/>
>        </plnk:partnerLinkType>
> </wsdl:definitions>
>
> ----- Original Message -----
> From: "Guillaume Nodet" <gn...@gmail.com>
> To: <us...@servicemix.apache.org>
> Sent: Monday, March 31, 2008 1:07 PM
> Subject: Re: R: Spring Pojo return
>
>
> > Why don't you adjust the WSDL to reflect what the component really send
> ?
> >
> > On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta <si...@alice.it>
> > wrote:
> >
> >> Hi Guillaume,
> >>    I've to be true: I have no time studing another component; i tried
> to
> >> adeguate my wsdl but I'm having always the same problem: a selection
> >> failure
> >> in my bpel process reading the response coming from my pojo.
> >> I do in a sequence two operations: a sync invoke and an assign
> operation
> >> but
> >> I've got a fault assignement: here is my bpel code:
> >>
> >> <invoke inputVariable="requestInvokeCCCheckMessage"
>  operation="cccheck"
> >> outputVariable="replyInvokeCCCheckMessage" [...]/>
> >> <assign>
> >>    <copy>
> >>        <from part="out" variable="replyInvokeCCCheckMessage"/>
> >>        <to variable="approvedVariable">
> >>
> >> and the assign falut; all I read on the monitor is
> >> ASSIGN Fault.
> >> Have you got any idea??
> >> Tahnk you, regards, Simone
> >>
> >> ----- Original Message -----
> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> To: <us...@servicemix.apache.org>
> >> Sent: Monday, March 31, 2008 10:00 AM
> >> Subject: Re: R: Spring Pojo return
> >>
> >>
> >> > You can't really keep both the WSDL and the java class.  If you use
> >> JAXWS,
> >> > you need to start from either the WSDL or the java interface and
> >> generate
> >> > the other using the provided tool.  If you go that way, I would
> >> recommand
> >> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
> >> > compliant
> >> > and XFire (hence servivemix-jsr181) is not.
> >> > You can have a look at the cxf-wsdl-first example which shows the use
> >> > of
> >> > the
> >> > CXF based components with a WSDL-first approach.
> >> >
> >> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta
> >> > <si...@alice.it>
> >> > wrote:
> >> >
> >> >> Hi Guillaume,
> >> >>    what should I change in my class if I wish use JAX-WS annotation?
> >> >> The fact is that the WSDL and the class are auto-generated from a
> user
> >> >> description than I need to preseve, or better I prefer, preserves
> >> >> names
> >> >> given by the user.
> >> >> I try to understand it from examples or from internet tutorials, but
> >> >> having
> >> >> not much time carry me to understand less tha I need.
> >> >> Thank you very much,  regards
> >> >> Simone
> >> >>
> >> >>
> >> >> ----- Original Message -----
> >> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> >> To: <us...@servicemix.apache.org>
> >> >> Sent: Monday, March 31, 2008 9:06 AM
> >> >> Subject: Re: R: Spring Pojo return
> >> >>
> >> >>
> >> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no way
> >> for
> >> >> you
> >> >> > to control the exact schema in an RPC mode.  So I would suggest to
> >> make
> >> >> > sure
> >> >> > your WSDL generator create a WSDL that is compatible  with what
> >> >> > XFire
> >> >> > expects.  You could also just use the one generated by the
> >> >> > servicemix-jsr181
> >> >> > component which should be ok.
> >> >> >
> >> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
> >> >> >
> >> >> >> Hi Guillaume,
> >> >> >>    I generate the wsdl with my own Java program from an XML
> >> >> >> description
> >> >> >> as
> >> >> >> I do with the Java class because I found some problems with the
> >> >> >> tool
> >> >> >> in
> >> >> >> axis2 and I prefer  create it from the scratch, using my class.
> >> >> >> If there is a simple way to correct the error using jsr181 please
> >> tell
> >> >> >> me,
> >> >> >> instead I've to change something more  in my thesis, in fact it
> >> >> generate,
> >> >> >> starting from an XML description the SA in an automatic way.
> >> >> >> I add: my POJO is not annotated.
> >> >> >> Thank you very much, regards
> >> >> >> Simone
> >> >> >>
> >> >> >>
> >> >> >> -----Messaggio originale-----
> >> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
> >> >> >> Inviato: sab 29/03/2008 7.59
> >> >> >> A: users@servicemix.apache.org
> >> >> >> Oggetto: Re: Spring Pojo return
> >> >> >>
> >> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
> >> component
> >> >> >> from
> >> >> >> the java pojo ?
> >> >> >> It seems just a problem in the wsdl generation.   Anyway, xfire,
> >> which
> >> >> is
> >> >> >> used internally in jsr181 is not developped anymore so if would
> >> advise
> >> >> to
> >> >> >> use the servicemix-cxf-se instead.
> >> >> >>
> >> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
> >> >> simonemaletta@alice.it>
> >> >> >> wrote:
> >> >> >>
> >> >> >> >
> >> >> >> > Hi Guillaume,
> >> >> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
> >> >> >> CCCheck.wsdl
> >> >> >> > "
> >> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
> >> servicemix
> >> >> >> > console:
> >> >> >> >
> >> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
> >> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not
> exist!
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> >> RPCBinding.java
> >> >> >> > :87)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> >> > SoapBodyHandler.java:42)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> >> HandlerPipeline.java
> >> >> >> > :131)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> >> > DefaultEndpoint.java:64)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> >> AbstractChannel.java
> >> >> >> > :38)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
> (
> >> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> >> >> > BaseLifeCycle.java:46)
> >> >> >> >        at
> >> >> >> >
> >> >>
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> >> > DeliveryChannelImpl.java:595)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> >> > AbstractFlow.java:174)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> >> SedaFlow.java
> >> >> >> > :176)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> >> SedaQueue.java
> >> >> >> > :134)
> >> >> >> >        at
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >> >        at
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >> >
> >> >> >> >
> >> >> >> > and here the fault message I receive in the invoking console:
> >> >> >> >
> >> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> >> >> >> >
> >> >> >>
> >> >>
> >>
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> >> >> >> > c does not
> >> >> >> > exist!</faultstring><detail><stack>
> >> >> org.codehaus.xfire.fault.XFireFault:
> >> >> >> > Parameter c does not exist!
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> >> RPCBinding.java
> >> >> >> > :87)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> >> > SoapBodyHandler.java:42)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> >> HandlerPipeline.java
> >> >> >> > :131)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> >> > DefaultEndpoint.java:64)
> >> >> >> >        at
> >> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> >> AbstractChannel.java
> >> >> >> > :38)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange
> (
> >> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> >> >> > BaseLifeCycle.java:46)
> >> >> >> >        at
> >> >> >> >
> >> >>
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> >> > DeliveryChannelImpl.java:595)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> >> > AbstractFlow.java:174)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> >> SedaFlow.java
> >> >> >> > :176)
> >> >> >> >        at
> >> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> >> SedaQueue.java
> >> >> >> > :134)
> >> >> >> >        at
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >> >        at
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >> >
> >> >>
> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> >> >
> >> >> >> > but now with my browser I may read the wsdl I wrote.
> >> >> >> > Here is the package file:
> >> >> >> >
> >> >> >> > --CCCheck-sa.jar
> >> >> >> > |
> >> >> >> > |------CCCheck-http-su.jar
> >> >> >> > |    |
> >> >> >> > |    |------CCCheck.wsdl
> >> >> >> > |    \
> >> >> >> > |
> >> >> >> > |-------CCCheck-jsr181-su.jar
> >> >> >> > |       |
> >> >> >> > |       |-----*.class
> >> >> >> > |       |-----CCCheck.wsdl
> >> >> >> > |       |-----xbean.xml
> >> >> >> > |       \
> >> >> >> > \
> >> >> >> >
> >> >> >> > Have you got any idea?? Please help me!!!
> >> >> >> > Thank you very much, regards
> >> >> >> >
> >> >> >> > Simone
> >> >> >> >
> >> >> >> >
> >> >> >> > gnodet wrote:
> >> >> >> > >
> >> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
> >> element
> >> >> >> > > ?
> >> >> >> > >
> >> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it>
> >> >> >> > > wrote:
> >> >> >> > >
> >> >> >> > >> Hi guys,
> >> >> >> > >>    I observe a strange thing using my developed work:
> >> >> >> > >> I create a WebService from a Spring Pojo bean and I
> developed
> >> it
> >> >> on
> >> >> >> > >> ServiceMix using servicemix-jsr181 component.
> >> >> >> > >> The strangers come using it: in fact I invoke it using
> >> >> >> > >> sendsoap
> >> >> >> > >> an
> >> >> a
> >> >> >> > >> message that agree with the wsdl, for example:
> >> >> >> > >>
> >> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
> >> >> >> > >>  <SOAP-ENV:Body>
> >> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> >> >> >> > >>        <c>3</c>
> >> >> >> > >>    </ns1:cccheck>
> >> >> >> > >>  </SOAP-ENV:Body>
> >> >> >> > >> </SOAP-ENV:Envelope>
> >> >> >> > >>
> >> >> >> > >> and  my return is:
> >> >> >> > >>
> >> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> >> > xmlns:SOAP-ENV="
> >> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
> >> >> >> > "><SOAP-ENV:Body><cccheckResponse
> >> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> >> >> > >> http://localhost:8080/CCCheck
> >> >> >> > >>
> >> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> >> > >>
> >> >> >> > >> That disagrees with the wsdl in fact I was waiting for a
> <app>
> >> >> >> > >> tag
> >> >> >> into
> >> >> >> > >> <cccheckResponse> one: here is the wsdl
> >> >> >> > >>
> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> >> >> > >> <wsdl:definitions
> >> >> >> > >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >> >> >> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >> >> >> > >>
> >> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >> >> >> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >> >> >> > >>
> >> >> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> >> >> > >> "
> >> >> >> > >>                 targetNamespace="
> http://localhost:8080/CCCheck
> >> ">
> >> >> >> > >>
> >> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
> >> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
> >> >> >> > >>        </wsdl:message>
> >> >> >> > >>
> >> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
> >> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
> >> >> >> > >>        </wsdl:message>
> >> >> >> > >>
> >> >> >> > >>        <wsdl:portType name="cccheckPortType">
> >> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> >> > >>                        <wsdl:input
> >> >> >> message="tns:cccheckRequestMessage"
> >> >> >> > >> name="cccheckRequest"/>
> >> >> >> > >>                        <wsdl:output
> >> >> >> > message="tns:cccheckResponseMessage"
> >> >> >> > >> name="cccheckResponse"/>
> >> >> >> > >>                </wsdl:operation>
> >> >> >> > >>        </wsdl:portType>
> >> >> >> > >>
> >> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
> >> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
> >> transport="
> >> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
> >> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> >> > >>                        <soap:operation name="cccheck"
> >> >> soapAction=""
> >> >> >> > >> style="rpc"/>
> >> >> >> > >>                        <wsdl:input>
> >> >> >> > >>                                <soap:body namespace="
> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> >> > >>                        </wsdl:input>
> >> >> >> > >>                        <wsdl:output>
> >> >> >> > >>                                <soap:body namespace="
> >> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> >> > >>                        </wsdl:output>
> >> >> >> > >>                </wsdl:operation>
> >> >> >> > >>        </wsdl:binding>
> >> >> >> > >>
> >> >> >> > >>        <wsdl:service name="CCCheckService">
> >> >> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> >> >> >> > >> name="cccheckPort">
> >> >> >> > >>                        <soap:address location="
> >> >> >> > >> http://localhost:8080/CCCheck"/>
> >> >> >> > >>                        <smix:endpoint defaultMep="in-out"
> >> >> >> > >> role="consumer"/>
> >> >> >> > >>                </wsdl:port>
> >> >> >> > >>        </wsdl:service>
> >> >> >> > >>
> >> >> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >> >> >> > >>                <plnk:role name="CCCheckRole"
> >> >> >> > >> portType="tns:cccheckPortType"/>
> >> >> >> > >>        </plnk:partnerLinkType>
> >> >> >> > >> </wsdl:definitions>
> >> >> >> > >>
> >> >> >> > >>
> >> >> >> > >> Using it directly may seems a silliness but I invoke this ws
> >> from
> >> >> a
> >> >> >> > BPEL
> >> >> >> > >> and reading the response fails for this problem!!!
> >> >> >> > >> To be clearest I attach here the xbean.xml too:
> >> >> >> > >>
> >> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> >> >> >> > xmlns:aop="
> >> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> >> >> > >> http://localhost:8080/CCCheck">
> >> >> >> > >>        <jsr181:endpoint annotations="none"
> >> >> >> > service="wsdl:CCCheckService"
> >> >> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> >> >> >> > >>                <jsr181:pojo>
> >> >> >> > >>                        <bean class="CCCheck"
> >> >> >> > >> id="cccheckService"/>
> >> >> >> > >>                        <tx:advice id="txAdvice">
> >> >> >> > >>                                <tx:attributes>
> >> >> >> > >>                                        <tx:method
> >> name="cccheck"
> >> >> >> > >> readOnly="true"/>
> >> >> >> > >>                                </tx:attributes>
> >> >> >> > >>                        </tx:advice>
> >> >> >> > >>                        <aop:config>
> >> >> >> > >>                                <aop:pointcut
> >> >> >> > >> expression="excecution(*CCCheck.*(...))"
> >> >> >> id="cccheckServiceOperation"/>
> >> >> >> > >>                                <aop:advisor
> >> advice-ref="txAdvice"
> >> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
> >> >> >> > >>                        </aop:config>
> >> >> >> > >>                </jsr181:pojo>
> >> >> >> > >>        </jsr181:endpoint>
> >> >> >> > >> </beans>
> >> >> >> > >>
> >> >> >> > >> There is someone may give me an explanation and a way to
> >> >> >> > >> bypass
> >> >> this
> >> >> >> > >> problem?
> >> >> >> > >> Thank you all in advance guys,
> >> >> >> > >> regards
> >> >> >> > >>
> >> >> >> > >> Simone
> >> >> >> > >>
> >> >> >> > >
> >> >> >> > >
> >> >> >> > >
> >> >> >> > > --
> >> >> >> > > Cheers,
> >> >> >> > > Guillaume Nodet
> >> >> >> > > ------------------------
> >> >> >> > > Blog: http://gnodet.blogspot.com/
> >> >> >> > >
> >> >> >> > >
> >> >> >> >
> >> >> >> > --
> >> >> >> > View this message in context:
> >> >> >> >
> >> >>
> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> >> >> >> > Sent from the ServiceMix - User mailing list archive at
> >> >> >> > Nabble.com
> >> .
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> Cheers,
> >> >> >> Guillaume Nodet
> >> >> >> ------------------------
> >> >> >> Blog: http://gnodet.blogspot.com/
> >> >> >>
> >> >> >>
> >> >> >
> >> >> >
> >> >> > --
> >> >> > Cheers,
> >> >> > Guillaume Nodet
> >> >> > ------------------------
> >> >> > Blog: http://gnodet.blogspot.com/
> >> >> >
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Cheers,
> >> > Guillaume Nodet
> >> > ------------------------
> >> > Blog: http://gnodet.blogspot.com/
> >> >
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: R: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
May you be clearest??
here is the wsdl I'm using:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
     <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                 xmlns="http://schemas.xmlsoap.org/wsdl/"
                xmlns:smix="http://servicemix.org/wsdl/jbi/"
 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
                 xmlns:tns="http://localhost:8080/CCCheck"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
                targetNamespace="http://localhost:8080/CCCheck ">

        <wsdl:message name="cccheckRequestMessage">
               <wsdl:part name="in0" type="xsd:integer"/>
        </wsdl:message>

        <wsdl:message name="cccheckResponseMessage">
               <wsdl:part name="out" type="xsd:boolean"/>
        </wsdl:message>
       <wsdl:portType name="cccheckPortType">
                <wsdl:operation name="cccheck">
                        <wsdl:input message="tns:cccheckRequestMessage" 
name="cccheckRequest"/>
                       <wsdl:output  message="tns:cccheckResponseMessage" 
name="cccheckResponse"/>
                </wsdl:operation>
      </wsdl:portType>

       <wsdl:binding name="cccheckSOAPBinding" 
type="tns:cccheckPortType"><soap:binding style="rpc"  transport=" 
http://schemas.xmlsoap.org/soap/http"/>
              <wsdl:operation name="cccheck">
                        <soap:operation name="cccheck" soapAction="" 
style="rpc"/>
                        <wsdl:input>
                                <soap:body namespace=" 
http://localhost:8080/CCCheck" use="literal"/>
                        </wsdl:input>
                        <wsdl:output>
                                <soap:body namespace=" 
http://localhost:8080/CCCheck" use="literal"/>
                        </wsdl:output>
                </wsdl:operation>
       </wsdl:binding>

        <wsdl:service name="CCCheckService">
               <wsdl:port binding="tns:cccheckSOAPBinding"
 name="cccheckPort">
                       <soap:address location=" 
http://localhost:8080/CCCheck"/>
                        <smix:endpoint defaultMep="in-out" role="consumer"/>
                </wsdl:port>
       </wsdl:service>

        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
                <plnk:role name="CCCheckRole" 
portType="tns:cccheckPortType"/>
        </plnk:partnerLinkType>
</wsdl:definitions>

----- Original Message ----- 
From: "Guillaume Nodet" <gn...@gmail.com>
To: <us...@servicemix.apache.org>
Sent: Monday, March 31, 2008 1:07 PM
Subject: Re: R: Spring Pojo return


> Why don't you adjust the WSDL to reflect what the component really send ?
>
> On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta <si...@alice.it>
> wrote:
>
>> Hi Guillaume,
>>    I've to be true: I have no time studing another component; i tried to
>> adeguate my wsdl but I'm having always the same problem: a selection
>> failure
>> in my bpel process reading the response coming from my pojo.
>> I do in a sequence two operations: a sync invoke and an assign operation
>> but
>> I've got a fault assignement: here is my bpel code:
>>
>> <invoke inputVariable="requestInvokeCCCheckMessage"  operation="cccheck"
>> outputVariable="replyInvokeCCCheckMessage" [...]/>
>> <assign>
>>    <copy>
>>        <from part="out" variable="replyInvokeCCCheckMessage"/>
>>        <to variable="approvedVariable">
>>
>> and the assign falut; all I read on the monitor is
>> ASSIGN Fault.
>> Have you got any idea??
>> Tahnk you, regards, Simone
>>
>> ----- Original Message -----
>> From: "Guillaume Nodet" <gn...@gmail.com>
>> To: <us...@servicemix.apache.org>
>> Sent: Monday, March 31, 2008 10:00 AM
>> Subject: Re: R: Spring Pojo return
>>
>>
>> > You can't really keep both the WSDL and the java class.  If you use
>> JAXWS,
>> > you need to start from either the WSDL or the java interface and
>> generate
>> > the other using the provided tool.  If you go that way, I would
>> recommand
>> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
>> > compliant
>> > and XFire (hence servivemix-jsr181) is not.
>> > You can have a look at the cxf-wsdl-first example which shows the use 
>> > of
>> > the
>> > CXF based components with a WSDL-first approach.
>> >
>> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta 
>> > <si...@alice.it>
>> > wrote:
>> >
>> >> Hi Guillaume,
>> >>    what should I change in my class if I wish use JAX-WS annotation?
>> >> The fact is that the WSDL and the class are auto-generated from a user
>> >> description than I need to preseve, or better I prefer, preserves 
>> >> names
>> >> given by the user.
>> >> I try to understand it from examples or from internet tutorials, but
>> >> having
>> >> not much time carry me to understand less tha I need.
>> >> Thank you very much,  regards
>> >> Simone
>> >>
>> >>
>> >> ----- Original Message -----
>> >> From: "Guillaume Nodet" <gn...@gmail.com>
>> >> To: <us...@servicemix.apache.org>
>> >> Sent: Monday, March 31, 2008 9:06 AM
>> >> Subject: Re: R: Spring Pojo return
>> >>
>> >>
>> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no way
>> for
>> >> you
>> >> > to control the exact schema in an RPC mode.  So I would suggest to
>> make
>> >> > sure
>> >> > your WSDL generator create a WSDL that is compatible  with what 
>> >> > XFire
>> >> > expects.  You could also just use the one generated by the
>> >> > servicemix-jsr181
>> >> > component which should be ok.
>> >> >
>> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
>> >> >
>> >> >> Hi Guillaume,
>> >> >>    I generate the wsdl with my own Java program from an XML
>> >> >> description
>> >> >> as
>> >> >> I do with the Java class because I found some problems with the 
>> >> >> tool
>> >> >> in
>> >> >> axis2 and I prefer  create it from the scratch, using my class.
>> >> >> If there is a simple way to correct the error using jsr181 please
>> tell
>> >> >> me,
>> >> >> instead I've to change something more  in my thesis, in fact it
>> >> generate,
>> >> >> starting from an XML description the SA in an automatic way.
>> >> >> I add: my POJO is not annotated.
>> >> >> Thank you very much, regards
>> >> >> Simone
>> >> >>
>> >> >>
>> >> >> -----Messaggio originale-----
>> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
>> >> >> Inviato: sab 29/03/2008 7.59
>> >> >> A: users@servicemix.apache.org
>> >> >> Oggetto: Re: Spring Pojo return
>> >> >>
>> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
>> component
>> >> >> from
>> >> >> the java pojo ?
>> >> >> It seems just a problem in the wsdl generation.   Anyway, xfire,
>> which
>> >> is
>> >> >> used internally in jsr181 is not developped anymore so if would
>> advise
>> >> to
>> >> >> use the servicemix-cxf-se instead.
>> >> >>
>> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
>> >> simonemaletta@alice.it>
>> >> >> wrote:
>> >> >>
>> >> >> >
>> >> >> > Hi Guillaume,
>> >> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
>> >> >> CCCheck.wsdl
>> >> >> > "
>> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
>> servicemix
>> >> >> > console:
>> >> >> >
>> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
>> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
>> >> >> >        at
>> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> RPCBinding.java
>> >> >> > :87)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> > SoapBodyHandler.java:42)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> HandlerPipeline.java
>> >> >> > :131)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> > DefaultEndpoint.java:64)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> AbstractChannel.java
>> >> >> > :38)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> > BaseLifeCycle.java:46)
>> >> >> >        at
>> >> >> >
>> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> > AbstractFlow.java:174)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> SedaFlow.java
>> >> >> > :176)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> SedaQueue.java
>> >> >> > :134)
>> >> >> >        at
>> >> >> >
>> >> >> >
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >        at
>> >> >> >
>> >> >> >
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >
>> >> >> >
>> >> >> > and here the fault message I receive in the invoking console:
>> >> >> >
>> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>> >> >> >
>> >> >>
>> >>
>> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
>> >> >> > c does not
>> >> >> > exist!</faultstring><detail><stack>
>> >> org.codehaus.xfire.fault.XFireFault:
>> >> >> > Parameter c does not exist!
>> >> >> >        at
>> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> >> RPCBinding.java
>> >> >> > :87)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> >> > SoapBodyHandler.java:42)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> >> HandlerPipeline.java
>> >> >> > :131)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> >> > DefaultEndpoint.java:64)
>> >> >> >        at
>> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> >> AbstractChannel.java
>> >> >> > :38)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> >> > Jsr181ExchangeProcessor.java:114)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> >> > AsyncBaseLifeCycle.java:489)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> >> >> > AsyncBaseLifeCycle.java:441)
>> >> >> >        at
>> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> >> > BaseLifeCycle.java:46)
>> >> >> >        at
>> >> >> >
>> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> >> > DeliveryChannelImpl.java:595)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> >> > AbstractFlow.java:174)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> >> SedaFlow.java
>> >> >> > :176)
>> >> >> >        at
>> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> >> SedaQueue.java
>> >> >> > :134)
>> >> >> >        at
>> >> >> >
>> >> >> >
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> >> > (ThreadPoolExecutor.java:665)
>> >> >> >        at
>> >> >> >
>> >> >> >
>> >> >>
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> >> > (ThreadPoolExecutor.java:690)
>> >> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >> >
>> >> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> >
>> >> >> > but now with my browser I may read the wsdl I wrote.
>> >> >> > Here is the package file:
>> >> >> >
>> >> >> > --CCCheck-sa.jar
>> >> >> > |
>> >> >> > |------CCCheck-http-su.jar
>> >> >> > |    |
>> >> >> > |    |------CCCheck.wsdl
>> >> >> > |    \
>> >> >> > |
>> >> >> > |-------CCCheck-jsr181-su.jar
>> >> >> > |       |
>> >> >> > |       |-----*.class
>> >> >> > |       |-----CCCheck.wsdl
>> >> >> > |       |-----xbean.xml
>> >> >> > |       \
>> >> >> > \
>> >> >> >
>> >> >> > Have you got any idea?? Please help me!!!
>> >> >> > Thank you very much, regards
>> >> >> >
>> >> >> > Simone
>> >> >> >
>> >> >> >
>> >> >> > gnodet wrote:
>> >> >> > >
>> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
>> element
>> >> >> > > ?
>> >> >> > >
>> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> 
>> >> >> > > wrote:
>> >> >> > >
>> >> >> > >> Hi guys,
>> >> >> > >>    I observe a strange thing using my developed work:
>> >> >> > >> I create a WebService from a Spring Pojo bean and I developed
>> it
>> >> on
>> >> >> > >> ServiceMix using servicemix-jsr181 component.
>> >> >> > >> The strangers come using it: in fact I invoke it using 
>> >> >> > >> sendsoap
>> >> >> > >> an
>> >> a
>> >> >> > >> message that agree with the wsdl, for example:
>> >> >> > >>
>> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
>> >> >> > >>  <SOAP-ENV:Body>
>> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>> >> >> > >>        <c>3</c>
>> >> >> > >>    </ns1:cccheck>
>> >> >> > >>  </SOAP-ENV:Body>
>> >> >> > >> </SOAP-ENV:Envelope>
>> >> >> > >>
>> >> >> > >> and  my return is:
>> >> >> > >>
>> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> >> > xmlns:SOAP-ENV="
>> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
>> >> >> > "><SOAP-ENV:Body><cccheckResponse
>> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> >> >> > >> http://localhost:8080/CCCheck
>> >> >> > >>
>> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >> > >>
>> >> >> > >> That disagrees with the wsdl in fact I was waiting for a <app>
>> >> >> > >> tag
>> >> >> into
>> >> >> > >> <cccheckResponse> one: here is the wsdl
>> >> >> > >>
>> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> >> >> > >> <wsdl:definitions 
>> >> >> > >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>> >> >> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
>> >> >> > >>
>> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
>> >> >> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> >> >> > >>
>> >> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> >> >> > >> "
>> >> >> > >>                 targetNamespace="http://localhost:8080/CCCheck
>> ">
>> >> >> > >>
>> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
>> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
>> >> >> > >>        </wsdl:message>
>> >> >> > >>
>> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
>> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
>> >> >> > >>        </wsdl:message>
>> >> >> > >>
>> >> >> > >>        <wsdl:portType name="cccheckPortType">
>> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> > >>                        <wsdl:input
>> >> >> message="tns:cccheckRequestMessage"
>> >> >> > >> name="cccheckRequest"/>
>> >> >> > >>                        <wsdl:output
>> >> >> > message="tns:cccheckResponseMessage"
>> >> >> > >> name="cccheckResponse"/>
>> >> >> > >>                </wsdl:operation>
>> >> >> > >>        </wsdl:portType>
>> >> >> > >>
>> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
>> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
>> transport="
>> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
>> >> >> > >>                <wsdl:operation name="cccheck">
>> >> >> > >>                        <soap:operation name="cccheck"
>> >> soapAction=""
>> >> >> > >> style="rpc"/>
>> >> >> > >>                        <wsdl:input>
>> >> >> > >>                                <soap:body namespace="
>> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> > >>                        </wsdl:input>
>> >> >> > >>                        <wsdl:output>
>> >> >> > >>                                <soap:body namespace="
>> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> >> > >>                        </wsdl:output>
>> >> >> > >>                </wsdl:operation>
>> >> >> > >>        </wsdl:binding>
>> >> >> > >>
>> >> >> > >>        <wsdl:service name="CCCheckService">
>> >> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> >> >> > >> name="cccheckPort">
>> >> >> > >>                        <soap:address location="
>> >> >> > >> http://localhost:8080/CCCheck"/>
>> >> >> > >>                        <smix:endpoint defaultMep="in-out"
>> >> >> > >> role="consumer"/>
>> >> >> > >>                </wsdl:port>
>> >> >> > >>        </wsdl:service>
>> >> >> > >>
>> >> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>> >> >> > >>                <plnk:role name="CCCheckRole"
>> >> >> > >> portType="tns:cccheckPortType"/>
>> >> >> > >>        </plnk:partnerLinkType>
>> >> >> > >> </wsdl:definitions>
>> >> >> > >>
>> >> >> > >>
>> >> >> > >> Using it directly may seems a silliness but I invoke this ws
>> from
>> >> a
>> >> >> > BPEL
>> >> >> > >> and reading the response fails for this problem!!!
>> >> >> > >> To be clearest I attach here the xbean.xml too:
>> >> >> > >>
>> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
>> >> >> > xmlns:aop="
>> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> >> >> > >> http://localhost:8080/CCCheck">
>> >> >> > >>        <jsr181:endpoint annotations="none"
>> >> >> > service="wsdl:CCCheckService"
>> >> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>> >> >> > >>                <jsr181:pojo>
>> >> >> > >>                        <bean class="CCCheck"
>> >> >> > >> id="cccheckService"/>
>> >> >> > >>                        <tx:advice id="txAdvice">
>> >> >> > >>                                <tx:attributes>
>> >> >> > >>                                        <tx:method
>> name="cccheck"
>> >> >> > >> readOnly="true"/>
>> >> >> > >>                                </tx:attributes>
>> >> >> > >>                        </tx:advice>
>> >> >> > >>                        <aop:config>
>> >> >> > >>                                <aop:pointcut
>> >> >> > >> expression="excecution(*CCCheck.*(...))"
>> >> >> id="cccheckServiceOperation"/>
>> >> >> > >>                                <aop:advisor
>> advice-ref="txAdvice"
>> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
>> >> >> > >>                        </aop:config>
>> >> >> > >>                </jsr181:pojo>
>> >> >> > >>        </jsr181:endpoint>
>> >> >> > >> </beans>
>> >> >> > >>
>> >> >> > >> There is someone may give me an explanation and a way to 
>> >> >> > >> bypass
>> >> this
>> >> >> > >> problem?
>> >> >> > >> Thank you all in advance guys,
>> >> >> > >> regards
>> >> >> > >>
>> >> >> > >> Simone
>> >> >> > >>
>> >> >> > >
>> >> >> > >
>> >> >> > >
>> >> >> > > --
>> >> >> > > Cheers,
>> >> >> > > Guillaume Nodet
>> >> >> > > ------------------------
>> >> >> > > Blog: http://gnodet.blogspot.com/
>> >> >> > >
>> >> >> > >
>> >> >> >
>> >> >> > --
>> >> >> > View this message in context:
>> >> >> >
>> >> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
>> >> >> > Sent from the ServiceMix - User mailing list archive at 
>> >> >> > Nabble.com
>> .
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Cheers,
>> >> >> Guillaume Nodet
>> >> >> ------------------------
>> >> >> Blog: http://gnodet.blogspot.com/
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >> > --
>> >> > Cheers,
>> >> > Guillaume Nodet
>> >> > ------------------------
>> >> > Blog: http://gnodet.blogspot.com/
>> >> >
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> > ------------------------
>> > Blog: http://gnodet.blogspot.com/
>> >
>>
>>
>
>
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 


Re: R: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
Why don't you adjust the WSDL to reflect what the component really send ?

On Mon, Mar 31, 2008 at 1:04 PM, Simone Maletta <si...@alice.it>
wrote:

> Hi Guillaume,
>    I've to be true: I have no time studing another component; i tried to
> adeguate my wsdl but I'm having always the same problem: a selection
> failure
> in my bpel process reading the response coming from my pojo.
> I do in a sequence two operations: a sync invoke and an assign operation
> but
> I've got a fault assignement: here is my bpel code:
>
> <invoke inputVariable="requestInvokeCCCheckMessage"  operation="cccheck"
> outputVariable="replyInvokeCCCheckMessage" [...]/>
> <assign>
>    <copy>
>        <from part="out" variable="replyInvokeCCCheckMessage"/>
>        <to variable="approvedVariable">
>
> and the assign falut; all I read on the monitor is
> ASSIGN Fault.
> Have you got any idea??
> Tahnk you, regards, Simone
>
> ----- Original Message -----
> From: "Guillaume Nodet" <gn...@gmail.com>
> To: <us...@servicemix.apache.org>
> Sent: Monday, March 31, 2008 10:00 AM
> Subject: Re: R: Spring Pojo return
>
>
> > You can't really keep both the WSDL and the java class.  If you use
> JAXWS,
> > you need to start from either the WSDL or the java interface and
> generate
> > the other using the provided tool.  If you go that way, I would
> recommand
> > using the servicemix-cxfse instead of jsr181, because it is JAXWS
> > compliant
> > and XFire (hence servivemix-jsr181) is not.
> > You can have a look at the cxf-wsdl-first example which shows the use of
> > the
> > CXF based components with a WSDL-first approach.
> >
> > On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta <si...@alice.it>
> > wrote:
> >
> >> Hi Guillaume,
> >>    what should I change in my class if I wish use JAX-WS annotation?
> >> The fact is that the WSDL and the class are auto-generated from a user
> >> description than I need to preseve, or better I prefer, preserves names
> >> given by the user.
> >> I try to understand it from examples or from internet tutorials, but
> >> having
> >> not much time carry me to understand less tha I need.
> >> Thank you very much,  regards
> >> Simone
> >>
> >>
> >> ----- Original Message -----
> >> From: "Guillaume Nodet" <gn...@gmail.com>
> >> To: <us...@servicemix.apache.org>
> >> Sent: Monday, March 31, 2008 9:06 AM
> >> Subject: Re: R: Spring Pojo return
> >>
> >>
> >> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no way
> for
> >> you
> >> > to control the exact schema in an RPC mode.  So I would suggest to
> make
> >> > sure
> >> > your WSDL generator create a WSDL that is compatible  with what XFire
> >> > expects.  You could also just use the one generated by the
> >> > servicemix-jsr181
> >> > component which should be ok.
> >> >
> >> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
> >> >
> >> >> Hi Guillaume,
> >> >>    I generate the wsdl with my own Java program from an XML
> >> >> description
> >> >> as
> >> >> I do with the Java class because I found some problems with the tool
> >> >> in
> >> >> axis2 and I prefer  create it from the scratch, using my class.
> >> >> If there is a simple way to correct the error using jsr181 please
> tell
> >> >> me,
> >> >> instead I've to change something more  in my thesis, in fact it
> >> generate,
> >> >> starting from an XML description the SA in an automatic way.
> >> >> I add: my POJO is not annotated.
> >> >> Thank you very much, regards
> >> >> Simone
> >> >>
> >> >>
> >> >> -----Messaggio originale-----
> >> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
> >> >> Inviato: sab 29/03/2008 7.59
> >> >> A: users@servicemix.apache.org
> >> >> Oggetto: Re: Spring Pojo return
> >> >>
> >> >> Do you use a wsdl2java tool or is the wsdl generated by the
> component
> >> >> from
> >> >> the java pojo ?
> >> >> It seems just a problem in the wsdl generation.   Anyway, xfire,
> which
> >> is
> >> >> used internally in jsr181 is not developped anymore so if would
> advise
> >> to
> >> >> use the servicemix-cxf-se instead.
> >> >>
> >> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
> >> simonemaletta@alice.it>
> >> >> wrote:
> >> >>
> >> >> >
> >> >> > Hi Guillaume,
> >> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
> >> >> CCCheck.wsdl
> >> >> > "
> >> >> > to my own <jsr1181:endpoint/> here is the error I got on
> servicemix
> >> >> > console:
> >> >> >
> >> >> > INFO  - DefaultFaultHandler            - Fault occurred!
> >> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
> >> >> >        at
> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> RPCBinding.java
> >> >> > :87)
> >> >> >        at
> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> > SoapBodyHandler.java:42)
> >> >> >        at
> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> HandlerPipeline.java
> >> >> > :131)
> >> >> >        at
> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> > DefaultEndpoint.java:64)
> >> >> >        at
> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> AbstractChannel.java
> >> >> > :38)
> >> >> >        at
> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >        at
> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >        at
> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >        at
> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> >> > BaseLifeCycle.java:46)
> >> >> >        at
> >> >> >
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> > DeliveryChannelImpl.java:595)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> > AbstractFlow.java:174)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> SedaFlow.java
> >> >> > :176)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> SedaQueue.java
> >> >> > :134)
> >> >> >        at
> >> >> >
> >> >> >
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >        at
> >> >> >
> >> >> >
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >
> >> >> >
> >> >> > and here the fault message I receive in the invoking console:
> >> >> >
> >> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> >> >> >
> >> >>
> >>
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> >> >> > c does not
> >> >> > exist!</faultstring><detail><stack>
> >> org.codehaus.xfire.fault.XFireFault:
> >> >> > Parameter c does not exist!
> >> >> >        at
> >> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> >> RPCBinding.java
> >> >> > :87)
> >> >> >        at
> >> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> >> > SoapBodyHandler.java:42)
> >> >> >        at
> >> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> >> HandlerPipeline.java
> >> >> > :131)
> >> >> >        at
> >> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> >> > DefaultEndpoint.java:64)
> >> >> >        at
> >> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> >> AbstractChannel.java
> >> >> > :38)
> >> >> >        at
> >> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> >> > Jsr181ExchangeProcessor.java:114)
> >> >> >        at
> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> >> > AsyncBaseLifeCycle.java:489)
> >> >> >        at
> >> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> >> >> > AsyncBaseLifeCycle.java:441)
> >> >> >        at
> >> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> >> > BaseLifeCycle.java:46)
> >> >> >        at
> >> >> >
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> >> > DeliveryChannelImpl.java:595)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> >> > AbstractFlow.java:174)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> >> SedaFlow.java
> >> >> > :176)
> >> >> >        at
> >> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> >> SedaQueue.java
> >> >> > :134)
> >> >> >        at
> >> >> >
> >> >> >
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> >> > (ThreadPoolExecutor.java:665)
> >> >> >        at
> >> >> >
> >> >> >
> >> >>
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> >> > (ThreadPoolExecutor.java:690)
> >> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >> >
> >> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> >
> >> >> > but now with my browser I may read the wsdl I wrote.
> >> >> > Here is the package file:
> >> >> >
> >> >> > --CCCheck-sa.jar
> >> >> > |
> >> >> > |------CCCheck-http-su.jar
> >> >> > |    |
> >> >> > |    |------CCCheck.wsdl
> >> >> > |    \
> >> >> > |
> >> >> > |-------CCCheck-jsr181-su.jar
> >> >> > |       |
> >> >> > |       |-----*.class
> >> >> > |       |-----CCCheck.wsdl
> >> >> > |       |-----xbean.xml
> >> >> > |       \
> >> >> > \
> >> >> >
> >> >> > Have you got any idea?? Please help me!!!
> >> >> > Thank you very much, regards
> >> >> >
> >> >> > Simone
> >> >> >
> >> >> >
> >> >> > gnodet wrote:
> >> >> > >
> >> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/>
> element
> >> >> > > ?
> >> >> > >
> >> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> >> >> > >
> >> >> > >> Hi guys,
> >> >> > >>    I observe a strange thing using my developed work:
> >> >> > >> I create a WebService from a Spring Pojo bean and I developed
> it
> >> on
> >> >> > >> ServiceMix using servicemix-jsr181 component.
> >> >> > >> The strangers come using it: in fact I invoke it using sendsoap
> >> >> > >> an
> >> a
> >> >> > >> message that agree with the wsdl, for example:
> >> >> > >>
> >> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
> >> >> > >>  <SOAP-ENV:Body>
> >> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> >> >> > >>        <c>3</c>
> >> >> > >>    </ns1:cccheck>
> >> >> > >>  </SOAP-ENV:Body>
> >> >> > >> </SOAP-ENV:Envelope>
> >> >> > >>
> >> >> > >> and  my return is:
> >> >> > >>
> >> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> >> > xmlns:SOAP-ENV="
> >> >> > >> http://schemas.xmlsoap.org/soap/envelope/
> >> >> > "><SOAP-ENV:Body><cccheckResponse
> >> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> >> > >> http://localhost:8080/CCCheck
> >> >> > >>
> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >> > >>
> >> >> > >> That disagrees with the wsdl in fact I was waiting for a <app>
> >> >> > >> tag
> >> >> into
> >> >> > >> <cccheckResponse> one: here is the wsdl
> >> >> > >>
> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> >> > >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >> >> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >> >> > >>
> >> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >> >> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >> >> > >>
> >> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> >> > >> "
> >> >> > >>                 targetNamespace="http://localhost:8080/CCCheck
> ">
> >> >> > >>
> >> >> > >>        <wsdl:message name="cccheckRequestMessage">
> >> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
> >> >> > >>        </wsdl:message>
> >> >> > >>
> >> >> > >>        <wsdl:message name="cccheckResponseMessage">
> >> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
> >> >> > >>        </wsdl:message>
> >> >> > >>
> >> >> > >>        <wsdl:portType name="cccheckPortType">
> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> > >>                        <wsdl:input
> >> >> message="tns:cccheckRequestMessage"
> >> >> > >> name="cccheckRequest"/>
> >> >> > >>                        <wsdl:output
> >> >> > message="tns:cccheckResponseMessage"
> >> >> > >> name="cccheckResponse"/>
> >> >> > >>                </wsdl:operation>
> >> >> > >>        </wsdl:portType>
> >> >> > >>
> >> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
> >> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc"
> transport="
> >> >> > >> http://schemas.xmlsoap.org/soap/http"/>
> >> >> > >>                <wsdl:operation name="cccheck">
> >> >> > >>                        <soap:operation name="cccheck"
> >> soapAction=""
> >> >> > >> style="rpc"/>
> >> >> > >>                        <wsdl:input>
> >> >> > >>                                <soap:body namespace="
> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> > >>                        </wsdl:input>
> >> >> > >>                        <wsdl:output>
> >> >> > >>                                <soap:body namespace="
> >> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> >> > >>                        </wsdl:output>
> >> >> > >>                </wsdl:operation>
> >> >> > >>        </wsdl:binding>
> >> >> > >>
> >> >> > >>        <wsdl:service name="CCCheckService">
> >> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> >> >> > >> name="cccheckPort">
> >> >> > >>                        <soap:address location="
> >> >> > >> http://localhost:8080/CCCheck"/>
> >> >> > >>                        <smix:endpoint defaultMep="in-out"
> >> >> > >> role="consumer"/>
> >> >> > >>                </wsdl:port>
> >> >> > >>        </wsdl:service>
> >> >> > >>
> >> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >> >> > >>                <plnk:role name="CCCheckRole"
> >> >> > >> portType="tns:cccheckPortType"/>
> >> >> > >>        </plnk:partnerLinkType>
> >> >> > >> </wsdl:definitions>
> >> >> > >>
> >> >> > >>
> >> >> > >> Using it directly may seems a silliness but I invoke this ws
> from
> >> a
> >> >> > BPEL
> >> >> > >> and reading the response fails for this problem!!!
> >> >> > >> To be clearest I attach here the xbean.xml too:
> >> >> > >>
> >> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> >> >> > xmlns:aop="
> >> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> >> > >> http://localhost:8080/CCCheck">
> >> >> > >>        <jsr181:endpoint annotations="none"
> >> >> > service="wsdl:CCCheckService"
> >> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> >> >> > >>                <jsr181:pojo>
> >> >> > >>                        <bean class="CCCheck"
> >> >> > >> id="cccheckService"/>
> >> >> > >>                        <tx:advice id="txAdvice">
> >> >> > >>                                <tx:attributes>
> >> >> > >>                                        <tx:method
> name="cccheck"
> >> >> > >> readOnly="true"/>
> >> >> > >>                                </tx:attributes>
> >> >> > >>                        </tx:advice>
> >> >> > >>                        <aop:config>
> >> >> > >>                                <aop:pointcut
> >> >> > >> expression="excecution(*CCCheck.*(...))"
> >> >> id="cccheckServiceOperation"/>
> >> >> > >>                                <aop:advisor
> advice-ref="txAdvice"
> >> >> > >> pointcut-ref="cccheckServiceOperation"/>
> >> >> > >>                        </aop:config>
> >> >> > >>                </jsr181:pojo>
> >> >> > >>        </jsr181:endpoint>
> >> >> > >> </beans>
> >> >> > >>
> >> >> > >> There is someone may give me an explanation and a way to bypass
> >> this
> >> >> > >> problem?
> >> >> > >> Thank you all in advance guys,
> >> >> > >> regards
> >> >> > >>
> >> >> > >> Simone
> >> >> > >>
> >> >> > >
> >> >> > >
> >> >> > >
> >> >> > > --
> >> >> > > Cheers,
> >> >> > > Guillaume Nodet
> >> >> > > ------------------------
> >> >> > > Blog: http://gnodet.blogspot.com/
> >> >> > >
> >> >> > >
> >> >> >
> >> >> > --
> >> >> > View this message in context:
> >> >> >
> >> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> >> >> > Sent from the ServiceMix - User mailing list archive at Nabble.com
> .
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >> --
> >> >> Cheers,
> >> >> Guillaume Nodet
> >> >> ------------------------
> >> >> Blog: http://gnodet.blogspot.com/
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Cheers,
> >> > Guillaume Nodet
> >> > ------------------------
> >> > Blog: http://gnodet.blogspot.com/
> >> >
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: R: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
Hi Guillaume,
    I've to be true: I have no time studing another component; i tried to 
adeguate my wsdl but I'm having always the same problem: a selection failure 
in my bpel process reading the response coming from my pojo.
I do in a sequence two operations: a sync invoke and an assign operation but 
I've got a fault assignement: here is my bpel code:

<invoke inputVariable="requestInvokeCCCheckMessage"  operation="cccheck" 
outputVariable="replyInvokeCCCheckMessage" [...]/>
<assign>
    <copy>
        <from part="out" variable="replyInvokeCCCheckMessage"/>
        <to variable="approvedVariable">

and the assign falut; all I read on the monitor is
ASSIGN Fault.
Have you got any idea??
Tahnk you, regards, Simone

----- Original Message ----- 
From: "Guillaume Nodet" <gn...@gmail.com>
To: <us...@servicemix.apache.org>
Sent: Monday, March 31, 2008 10:00 AM
Subject: Re: R: Spring Pojo return


> You can't really keep both the WSDL and the java class.  If you use JAXWS,
> you need to start from either the WSDL or the java interface and generate
> the other using the provided tool.  If you go that way, I would recommand
> using the servicemix-cxfse instead of jsr181, because it is JAXWS 
> compliant
> and XFire (hence servivemix-jsr181) is not.
> You can have a look at the cxf-wsdl-first example which shows the use of 
> the
> CXF based components with a WSDL-first approach.
>
> On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta <si...@alice.it>
> wrote:
>
>> Hi Guillaume,
>>    what should I change in my class if I wish use JAX-WS annotation?
>> The fact is that the WSDL and the class are auto-generated from a user
>> description than I need to preseve, or better I prefer, preserves names
>> given by the user.
>> I try to understand it from examples or from internet tutorials, but
>> having
>> not much time carry me to understand less tha I need.
>> Thank you very much,  regards
>> Simone
>>
>>
>> ----- Original Message -----
>> From: "Guillaume Nodet" <gn...@gmail.com>
>> To: <us...@servicemix.apache.org>
>> Sent: Monday, March 31, 2008 9:06 AM
>> Subject: Re: R: Spring Pojo return
>>
>>
>> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no way for
>> you
>> > to control the exact schema in an RPC mode.  So I would suggest to make
>> > sure
>> > your WSDL generator create a WSDL that is compatible  with what XFire
>> > expects.  You could also just use the one generated by the
>> > servicemix-jsr181
>> > component which should be ok.
>> >
>> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
>> >
>> >> Hi Guillaume,
>> >>    I generate the wsdl with my own Java program from an XML 
>> >> description
>> >> as
>> >> I do with the Java class because I found some problems with the tool 
>> >> in
>> >> axis2 and I prefer  create it from the scratch, using my class.
>> >> If there is a simple way to correct the error using jsr181 please tell
>> >> me,
>> >> instead I've to change something more  in my thesis, in fact it
>> generate,
>> >> starting from an XML description the SA in an automatic way.
>> >> I add: my POJO is not annotated.
>> >> Thank you very much, regards
>> >> Simone
>> >>
>> >>
>> >> -----Messaggio originale-----
>> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
>> >> Inviato: sab 29/03/2008 7.59
>> >> A: users@servicemix.apache.org
>> >> Oggetto: Re: Spring Pojo return
>> >>
>> >> Do you use a wsdl2java tool or is the wsdl generated by the component
>> >> from
>> >> the java pojo ?
>> >> It seems just a problem in the wsdl generation.   Anyway, xfire, which
>> is
>> >> used internally in jsr181 is not developped anymore so if would advise
>> to
>> >> use the servicemix-cxf-se instead.
>> >>
>> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
>> simonemaletta@alice.it>
>> >> wrote:
>> >>
>> >> >
>> >> > Hi Guillaume,
>> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
>> >> CCCheck.wsdl
>> >> > "
>> >> > to my own <jsr1181:endpoint/> here is the error I got on servicemix
>> >> > console:
>> >> >
>> >> > INFO  - DefaultFaultHandler            - Fault occurred!
>> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
>> >> >        at
>> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> RPCBinding.java
>> >> > :87)
>> >> >        at
>> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> > SoapBodyHandler.java:42)
>> >> >        at
>> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> HandlerPipeline.java
>> >> > :131)
>> >> >        at
>> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> > DefaultEndpoint.java:64)
>> >> >        at
>> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> AbstractChannel.java
>> >> > :38)
>> >> >        at
>> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> > Jsr181ExchangeProcessor.java:114)
>> >> >        at
>> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> > AsyncBaseLifeCycle.java:489)
>> >> >        at
>> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> >> > AsyncBaseLifeCycle.java:441)
>> >> >        at
>> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> > BaseLifeCycle.java:46)
>> >> >        at
>> >> >
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> > DeliveryChannelImpl.java:595)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> > AbstractFlow.java:174)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> SedaFlow.java
>> >> > :176)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> SedaQueue.java
>> >> > :134)
>> >> >        at
>> >> >
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> > (ThreadPoolExecutor.java:665)
>> >> >        at
>> >> >
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> > (ThreadPoolExecutor.java:690)
>> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >
>> >> >
>> >> > and here the fault message I receive in the invoking console:
>> >> >
>> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>> >> >
>> >>
>> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
>> >> > c does not
>> >> > exist!</faultstring><detail><stack>
>> org.codehaus.xfire.fault.XFireFault:
>> >> > Parameter c does not exist!
>> >> >        at
>> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> >> RPCBinding.java
>> >> > :87)
>> >> >        at
>> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> >> > SoapBodyHandler.java:42)
>> >> >        at
>> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
>> HandlerPipeline.java
>> >> > :131)
>> >> >        at
>> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> >> > DefaultEndpoint.java:64)
>> >> >        at
>> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> >> AbstractChannel.java
>> >> > :38)
>> >> >        at
>> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> >> > Jsr181ExchangeProcessor.java:114)
>> >> >        at
>> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> >> > AsyncBaseLifeCycle.java:489)
>> >> >        at
>> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> >> > AsyncBaseLifeCycle.java:441)
>> >> >        at
>> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> >> > BaseLifeCycle.java:46)
>> >> >        at
>> >> >
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> >> > DeliveryChannelImpl.java:595)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> >> > AbstractFlow.java:174)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
>> SedaFlow.java
>> >> > :176)
>> >> >        at
>> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
>> SedaQueue.java
>> >> > :134)
>> >> >        at
>> >> >
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> >> > (ThreadPoolExecutor.java:665)
>> >> >        at
>> >> >
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> >> > (ThreadPoolExecutor.java:690)
>> >> >        at java.lang.Thread.run(Thread.java:619)
>> >> >
>> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> >
>> >> > but now with my browser I may read the wsdl I wrote.
>> >> > Here is the package file:
>> >> >
>> >> > --CCCheck-sa.jar
>> >> > |
>> >> > |------CCCheck-http-su.jar
>> >> > |    |
>> >> > |    |------CCCheck.wsdl
>> >> > |    \
>> >> > |
>> >> > |-------CCCheck-jsr181-su.jar
>> >> > |       |
>> >> > |       |-----*.class
>> >> > |       |-----CCCheck.wsdl
>> >> > |       |-----xbean.xml
>> >> > |       \
>> >> > \
>> >> >
>> >> > Have you got any idea?? Please help me!!!
>> >> > Thank you very much, regards
>> >> >
>> >> > Simone
>> >> >
>> >> >
>> >> > gnodet wrote:
>> >> > >
>> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/> element 
>> >> > > ?
>> >> > >
>> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
>> >> > >
>> >> > >> Hi guys,
>> >> > >>    I observe a strange thing using my developed work:
>> >> > >> I create a WebService from a Spring Pojo bean and I developed it
>> on
>> >> > >> ServiceMix using servicemix-jsr181 component.
>> >> > >> The strangers come using it: in fact I invoke it using sendsoap 
>> >> > >> an
>> a
>> >> > >> message that agree with the wsdl, for example:
>> >> > >>
>> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
>> >> > >>  <SOAP-ENV:Body>
>> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>> >> > >>        <c>3</c>
>> >> > >>    </ns1:cccheck>
>> >> > >>  </SOAP-ENV:Body>
>> >> > >> </SOAP-ENV:Envelope>
>> >> > >>
>> >> > >> and  my return is:
>> >> > >>
>> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> >> > xmlns:SOAP-ENV="
>> >> > >> http://schemas.xmlsoap.org/soap/envelope/
>> >> > "><SOAP-ENV:Body><cccheckResponse
>> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> >> > >> http://localhost:8080/CCCheck
>> >> > >>
>> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >> > >>
>> >> > >> That disagrees with the wsdl in fact I was waiting for a <app> 
>> >> > >> tag
>> >> into
>> >> > >> <cccheckResponse> one: here is the wsdl
>> >> > >>
>> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> >> > >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>> >> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
>> >> > >> 
>> >> > >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
>> >> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> >> > >>
>> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> >> > >> "
>> >> > >>                 targetNamespace="http://localhost:8080/CCCheck">
>> >> > >>
>> >> > >>        <wsdl:message name="cccheckRequestMessage">
>> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
>> >> > >>        </wsdl:message>
>> >> > >>
>> >> > >>        <wsdl:message name="cccheckResponseMessage">
>> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
>> >> > >>        </wsdl:message>
>> >> > >>
>> >> > >>        <wsdl:portType name="cccheckPortType">
>> >> > >>                <wsdl:operation name="cccheck">
>> >> > >>                        <wsdl:input
>> >> message="tns:cccheckRequestMessage"
>> >> > >> name="cccheckRequest"/>
>> >> > >>                        <wsdl:output
>> >> > message="tns:cccheckResponseMessage"
>> >> > >> name="cccheckResponse"/>
>> >> > >>                </wsdl:operation>
>> >> > >>        </wsdl:portType>
>> >> > >>
>> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
>> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
>> >> > >> http://schemas.xmlsoap.org/soap/http"/>
>> >> > >>                <wsdl:operation name="cccheck">
>> >> > >>                        <soap:operation name="cccheck"
>> soapAction=""
>> >> > >> style="rpc"/>
>> >> > >>                        <wsdl:input>
>> >> > >>                                <soap:body namespace="
>> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> > >>                        </wsdl:input>
>> >> > >>                        <wsdl:output>
>> >> > >>                                <soap:body namespace="
>> >> > >> http://localhost:8080/CCCheck" use="literal"/>
>> >> > >>                        </wsdl:output>
>> >> > >>                </wsdl:operation>
>> >> > >>        </wsdl:binding>
>> >> > >>
>> >> > >>        <wsdl:service name="CCCheckService">
>> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> >> > >> name="cccheckPort">
>> >> > >>                        <soap:address location="
>> >> > >> http://localhost:8080/CCCheck"/>
>> >> > >>                        <smix:endpoint defaultMep="in-out"
>> >> > >> role="consumer"/>
>> >> > >>                </wsdl:port>
>> >> > >>        </wsdl:service>
>> >> > >>
>> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>> >> > >>                <plnk:role name="CCCheckRole"
>> >> > >> portType="tns:cccheckPortType"/>
>> >> > >>        </plnk:partnerLinkType>
>> >> > >> </wsdl:definitions>
>> >> > >>
>> >> > >>
>> >> > >> Using it directly may seems a silliness but I invoke this ws from
>> a
>> >> > BPEL
>> >> > >> and reading the response fails for this problem!!!
>> >> > >> To be clearest I attach here the xbean.xml too:
>> >> > >>
>> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
>> >> > xmlns:aop="
>> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> >> > >> http://localhost:8080/CCCheck">
>> >> > >>        <jsr181:endpoint annotations="none"
>> >> > service="wsdl:CCCheckService"
>> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>> >> > >>                <jsr181:pojo>
>> >> > >>                        <bean class="CCCheck" 
>> >> > >> id="cccheckService"/>
>> >> > >>                        <tx:advice id="txAdvice">
>> >> > >>                                <tx:attributes>
>> >> > >>                                        <tx:method name="cccheck"
>> >> > >> readOnly="true"/>
>> >> > >>                                </tx:attributes>
>> >> > >>                        </tx:advice>
>> >> > >>                        <aop:config>
>> >> > >>                                <aop:pointcut
>> >> > >> expression="excecution(*CCCheck.*(...))"
>> >> id="cccheckServiceOperation"/>
>> >> > >>                                <aop:advisor advice-ref="txAdvice"
>> >> > >> pointcut-ref="cccheckServiceOperation"/>
>> >> > >>                        </aop:config>
>> >> > >>                </jsr181:pojo>
>> >> > >>        </jsr181:endpoint>
>> >> > >> </beans>
>> >> > >>
>> >> > >> There is someone may give me an explanation and a way to bypass
>> this
>> >> > >> problem?
>> >> > >> Thank you all in advance guys,
>> >> > >> regards
>> >> > >>
>> >> > >> Simone
>> >> > >>
>> >> > >
>> >> > >
>> >> > >
>> >> > > --
>> >> > > Cheers,
>> >> > > Guillaume Nodet
>> >> > > ------------------------
>> >> > > Blog: http://gnodet.blogspot.com/
>> >> > >
>> >> > >
>> >> >
>> >> > --
>> >> > View this message in context:
>> >> >
>> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
>> >> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >> >
>> >> >
>> >>
>> >>
>> >> --
>> >> Cheers,
>> >> Guillaume Nodet
>> >> ------------------------
>> >> Blog: http://gnodet.blogspot.com/
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> > ------------------------
>> > Blog: http://gnodet.blogspot.com/
>> >
>>
>>
>
>
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 


Re: R: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
You can't really keep both the WSDL and the java class.  If you use JAXWS,
you need to start from either the WSDL or the java interface and generate
the other using the provided tool.  If you go that way, I would recommand
using the servicemix-cxfse instead of jsr181, because it is JAXWS compliant
and XFire (hence servivemix-jsr181) is not.
You can have a look at the cxf-wsdl-first example which shows the use of the
CXF based components with a WSDL-first approach.

On Mon, Mar 31, 2008 at 8:54 AM, Simone Maletta <si...@alice.it>
wrote:

> Hi Guillaume,
>    what should I change in my class if I wish use JAX-WS annotation?
> The fact is that the WSDL and the class are auto-generated from a user
> description than I need to preseve, or better I prefer, preserves names
> given by the user.
> I try to understand it from examples or from internet tutorials, but
> having
> not much time carry me to understand less tha I need.
> Thank you very much,  regards
> Simone
>
>
> ----- Original Message -----
> From: "Guillaume Nodet" <gn...@gmail.com>
> To: <us...@servicemix.apache.org>
> Sent: Monday, March 31, 2008 9:06 AM
> Subject: Re: R: Spring Pojo return
>
>
> > Well, if you don't use JAXB2 annotations or JAX-WS, there's no way for
> you
> > to control the exact schema in an RPC mode.  So I would suggest to make
> > sure
> > your WSDL generator create a WSDL that is compatible  with what XFire
> > expects.  You could also just use the one generated by the
> > servicemix-jsr181
> > component which should be ok.
> >
> > On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
> >
> >> Hi Guillaume,
> >>    I generate the wsdl with my own Java program from an XML description
> >> as
> >> I do with the Java class because I found some problems with the tool in
> >> axis2 and I prefer  create it from the scratch, using my class.
> >> If there is a simple way to correct the error using jsr181 please tell
> >> me,
> >> instead I've to change something more  in my thesis, in fact it
> generate,
> >> starting from an XML description the SA in an automatic way.
> >> I add: my POJO is not annotated.
> >> Thank you very much, regards
> >> Simone
> >>
> >>
> >> -----Messaggio originale-----
> >> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
> >> Inviato: sab 29/03/2008 7.59
> >> A: users@servicemix.apache.org
> >> Oggetto: Re: Spring Pojo return
> >>
> >> Do you use a wsdl2java tool or is the wsdl generated by the component
> >> from
> >> the java pojo ?
> >> It seems just a problem in the wsdl generation.   Anyway, xfire, which
> is
> >> used internally in jsr181 is not developped anymore so if would advise
> to
> >> use the servicemix-cxf-se instead.
> >>
> >> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <
> simonemaletta@alice.it>
> >> wrote:
> >>
> >> >
> >> > Hi Guillaume,
> >> >   I try to add style="rpc" and to add wsdlResource="classpath:
> >> CCCheck.wsdl
> >> > "
> >> > to my own <jsr1181:endpoint/> here is the error I got on servicemix
> >> > console:
> >> >
> >> > INFO  - DefaultFaultHandler            - Fault occurred!
> >> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
> >> >        at
> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> RPCBinding.java
> >> > :87)
> >> >        at
> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> > SoapBodyHandler.java:42)
> >> >        at
> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> HandlerPipeline.java
> >> > :131)
> >> >        at
> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> > DefaultEndpoint.java:64)
> >> >        at
> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> AbstractChannel.java
> >> > :38)
> >> >        at
> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> > Jsr181ExchangeProcessor.java:114)
> >> >        at
> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> > AsyncBaseLifeCycle.java:489)
> >> >        at
> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> >> > AsyncBaseLifeCycle.java:441)
> >> >        at
> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> > BaseLifeCycle.java:46)
> >> >        at
> >> >
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> > DeliveryChannelImpl.java:595)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> > AbstractFlow.java:174)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> SedaFlow.java
> >> > :176)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> SedaQueue.java
> >> > :134)
> >> >        at
> >> >
> >> >
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> > (ThreadPoolExecutor.java:665)
> >> >        at
> >> >
> >> >
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> > (ThreadPoolExecutor.java:690)
> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >
> >> >
> >> > and here the fault message I receive in the invoking console:
> >> >
> >> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> >> >
> >>
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> >> > c does not
> >> > exist!</faultstring><detail><stack>
> org.codehaus.xfire.fault.XFireFault:
> >> > Parameter c does not exist!
> >> >        at
> >> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> >> RPCBinding.java
> >> > :87)
> >> >        at
> >> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> >> > SoapBodyHandler.java:42)
> >> >        at
> >> > org.codehaus.xfire.handler.HandlerPipeline.invoke(
> HandlerPipeline.java
> >> > :131)
> >> >        at
> >> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> >> > DefaultEndpoint.java:64)
> >> >        at
> >> > org.codehaus.xfire.transport.AbstractChannel.receive(
> >> AbstractChannel.java
> >> > :38)
> >> >        at
> >> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> >> > Jsr181ExchangeProcessor.java:114)
> >> >        at
> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> >> > AsyncBaseLifeCycle.java:489)
> >> >        at
> >> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> >> > AsyncBaseLifeCycle.java:441)
> >> >        at
> >> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> >> > BaseLifeCycle.java:46)
> >> >        at
> >> >
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> >> > DeliveryChannelImpl.java:595)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> >> > AbstractFlow.java:174)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> SedaFlow.java
> >> > :176)
> >> >        at
> >> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(
> SedaQueue.java
> >> > :134)
> >> >        at
> >> >
> >> >
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> >> > (ThreadPoolExecutor.java:665)
> >> >        at
> >> >
> >> >
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> >> > (ThreadPoolExecutor.java:690)
> >> >        at java.lang.Thread.run(Thread.java:619)
> >> >
> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> >
> >> > but now with my browser I may read the wsdl I wrote.
> >> > Here is the package file:
> >> >
> >> > --CCCheck-sa.jar
> >> > |
> >> > |------CCCheck-http-su.jar
> >> > |    |
> >> > |    |------CCCheck.wsdl
> >> > |    \
> >> > |
> >> > |-------CCCheck-jsr181-su.jar
> >> > |       |
> >> > |       |-----*.class
> >> > |       |-----CCCheck.wsdl
> >> > |       |-----xbean.xml
> >> > |       \
> >> > \
> >> >
> >> > Have you got any idea?? Please help me!!!
> >> > Thank you very much, regards
> >> >
> >> > Simone
> >> >
> >> >
> >> > gnodet wrote:
> >> > >
> >> > > Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
> >> > >
> >> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> >> > >
> >> > >> Hi guys,
> >> > >>    I observe a strange thing using my developed work:
> >> > >> I create a WebService from a Spring Pojo bean and I developed it
> on
> >> > >> ServiceMix using servicemix-jsr181 component.
> >> > >> The strangers come using it: in fact I invoke it using sendsoap an
> a
> >> > >> message that agree with the wsdl, for example:
> >> > >>
> >> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> > >> http://schemas.xmlsoap.org/soap/envelope/" >
> >> > >>  <SOAP-ENV:Body>
> >> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> >> > >>        <c>3</c>
> >> > >>    </ns1:cccheck>
> >> > >>  </SOAP-ENV:Body>
> >> > >> </SOAP-ENV:Envelope>
> >> > >>
> >> > >> and  my return is:
> >> > >>
> >> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> >> > xmlns:SOAP-ENV="
> >> > >> http://schemas.xmlsoap.org/soap/envelope/
> >> > "><SOAP-ENV:Body><cccheckResponse
> >> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> > >> http://localhost:8080/CCCheck
> >> > >>
> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >> > >>
> >> > >> That disagrees with the wsdl in fact I was waiting for a <app> tag
> >> into
> >> > >> <cccheckResponse> one: here is the wsdl
> >> > >>
> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> > >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >> > >>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >> > >>
> >> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> > >> "
> >> > >>                 targetNamespace="http://localhost:8080/CCCheck">
> >> > >>
> >> > >>        <wsdl:message name="cccheckRequestMessage">
> >> > >>                <wsdl:part name="c" type="xsd:integer"/>
> >> > >>        </wsdl:message>
> >> > >>
> >> > >>        <wsdl:message name="cccheckResponseMessage">
> >> > >>                <wsdl:part name="app" type="xsd:boolean"/>
> >> > >>        </wsdl:message>
> >> > >>
> >> > >>        <wsdl:portType name="cccheckPortType">
> >> > >>                <wsdl:operation name="cccheck">
> >> > >>                        <wsdl:input
> >> message="tns:cccheckRequestMessage"
> >> > >> name="cccheckRequest"/>
> >> > >>                        <wsdl:output
> >> > message="tns:cccheckResponseMessage"
> >> > >> name="cccheckResponse"/>
> >> > >>                </wsdl:operation>
> >> > >>        </wsdl:portType>
> >> > >>
> >> > >>        <wsdl:binding name="cccheckSOAPBinding"
> >> > >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
> >> > >> http://schemas.xmlsoap.org/soap/http"/>
> >> > >>                <wsdl:operation name="cccheck">
> >> > >>                        <soap:operation name="cccheck"
> soapAction=""
> >> > >> style="rpc"/>
> >> > >>                        <wsdl:input>
> >> > >>                                <soap:body namespace="
> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> > >>                        </wsdl:input>
> >> > >>                        <wsdl:output>
> >> > >>                                <soap:body namespace="
> >> > >> http://localhost:8080/CCCheck" use="literal"/>
> >> > >>                        </wsdl:output>
> >> > >>                </wsdl:operation>
> >> > >>        </wsdl:binding>
> >> > >>
> >> > >>        <wsdl:service name="CCCheckService">
> >> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> >> > >> name="cccheckPort">
> >> > >>                        <soap:address location="
> >> > >> http://localhost:8080/CCCheck"/>
> >> > >>                        <smix:endpoint defaultMep="in-out"
> >> > >> role="consumer"/>
> >> > >>                </wsdl:port>
> >> > >>        </wsdl:service>
> >> > >>
> >> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >> > >>                <plnk:role name="CCCheckRole"
> >> > >> portType="tns:cccheckPortType"/>
> >> > >>        </plnk:partnerLinkType>
> >> > >> </wsdl:definitions>
> >> > >>
> >> > >>
> >> > >> Using it directly may seems a silliness but I invoke this ws from
> a
> >> > BPEL
> >> > >> and reading the response fails for this problem!!!
> >> > >> To be clearest I attach here the xbean.xml too:
> >> > >>
> >> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> >> > xmlns:aop="
> >> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> > >> http://localhost:8080/CCCheck">
> >> > >>        <jsr181:endpoint annotations="none"
> >> > service="wsdl:CCCheckService"
> >> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> >> > >>                <jsr181:pojo>
> >> > >>                        <bean class="CCCheck" id="cccheckService"/>
> >> > >>                        <tx:advice id="txAdvice">
> >> > >>                                <tx:attributes>
> >> > >>                                        <tx:method name="cccheck"
> >> > >> readOnly="true"/>
> >> > >>                                </tx:attributes>
> >> > >>                        </tx:advice>
> >> > >>                        <aop:config>
> >> > >>                                <aop:pointcut
> >> > >> expression="excecution(*CCCheck.*(...))"
> >> id="cccheckServiceOperation"/>
> >> > >>                                <aop:advisor advice-ref="txAdvice"
> >> > >> pointcut-ref="cccheckServiceOperation"/>
> >> > >>                        </aop:config>
> >> > >>                </jsr181:pojo>
> >> > >>        </jsr181:endpoint>
> >> > >> </beans>
> >> > >>
> >> > >> There is someone may give me an explanation and a way to bypass
> this
> >> > >> problem?
> >> > >> Thank you all in advance guys,
> >> > >> regards
> >> > >>
> >> > >> Simone
> >> > >>
> >> > >
> >> > >
> >> > >
> >> > > --
> >> > > Cheers,
> >> > > Guillaume Nodet
> >> > > ------------------------
> >> > > Blog: http://gnodet.blogspot.com/
> >> > >
> >> > >
> >> >
> >> > --
> >> > View this message in context:
> >> >
> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> >> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >> >
> >> >
> >>
> >>
> >> --
> >> Cheers,
> >> Guillaume Nodet
> >> ------------------------
> >> Blog: http://gnodet.blogspot.com/
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: R: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
Hi Guillaume,
    what should I change in my class if I wish use JAX-WS annotation?
The fact is that the WSDL and the class are auto-generated from a user 
description than I need to preseve, or better I prefer, preserves names 
given by the user.
I try to understand it from examples or from internet tutorials, but having 
not much time carry me to understand less tha I need.
Thank you very much,  regards
Simone


----- Original Message ----- 
From: "Guillaume Nodet" <gn...@gmail.com>
To: <us...@servicemix.apache.org>
Sent: Monday, March 31, 2008 9:06 AM
Subject: Re: R: Spring Pojo return


> Well, if you don't use JAXB2 annotations or JAX-WS, there's no way for you
> to control the exact schema in an RPC mode.  So I would suggest to make 
> sure
> your WSDL generator create a WSDL that is compatible  with what XFire
> expects.  You could also just use the one generated by the 
> servicemix-jsr181
> component which should be ok.
>
> On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:
>
>> Hi Guillaume,
>>    I generate the wsdl with my own Java program from an XML description 
>> as
>> I do with the Java class because I found some problems with the tool in
>> axis2 and I prefer  create it from the scratch, using my class.
>> If there is a simple way to correct the error using jsr181 please tell 
>> me,
>> instead I've to change something more  in my thesis, in fact it generate,
>> starting from an XML description the SA in an automatic way.
>> I add: my POJO is not annotated.
>> Thank you very much, regards
>> Simone
>>
>>
>> -----Messaggio originale-----
>> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
>> Inviato: sab 29/03/2008 7.59
>> A: users@servicemix.apache.org
>> Oggetto: Re: Spring Pojo return
>>
>> Do you use a wsdl2java tool or is the wsdl generated by the component 
>> from
>> the java pojo ?
>> It seems just a problem in the wsdl generation.   Anyway, xfire, which is
>> used internally in jsr181 is not developped anymore so if would advise to
>> use the servicemix-cxf-se instead.
>>
>> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <si...@alice.it>
>> wrote:
>>
>> >
>> > Hi Guillaume,
>> >   I try to add style="rpc" and to add wsdlResource="classpath:
>> CCCheck.wsdl
>> > "
>> > to my own <jsr1181:endpoint/> here is the error I got on servicemix
>> > console:
>> >
>> > INFO  - DefaultFaultHandler            - Fault occurred!
>> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
>> >        at
>> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> RPCBinding.java
>> > :87)
>> >        at
>> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> > SoapBodyHandler.java:42)
>> >        at
>> > org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
>> > :131)
>> >        at
>> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> > DefaultEndpoint.java:64)
>> >        at
>> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> AbstractChannel.java
>> > :38)
>> >        at
>> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> > Jsr181ExchangeProcessor.java:114)
>> >        at
>> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> > AsyncBaseLifeCycle.java:489)
>> >        at
>> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> > AsyncBaseLifeCycle.java:441)
>> >        at
>> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> > BaseLifeCycle.java:46)
>> >        at
>> > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> > DeliveryChannelImpl.java:595)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> > AbstractFlow.java:174)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
>> > :176)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
>> > :134)
>> >        at
>> >
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> > (ThreadPoolExecutor.java:665)
>> >        at
>> >
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> > (ThreadPoolExecutor.java:690)
>> >        at java.lang.Thread.run(Thread.java:619)
>> >
>> >
>> > and here the fault message I receive in the invoking console:
>> >
>> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>> >
>> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
>> > c does not
>> > exist!</faultstring><detail><stack>org.codehaus.xfire.fault.XFireFault:
>> > Parameter c does not exist!
>> >        at
>> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
>> RPCBinding.java
>> > :87)
>> >        at
>> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
>> > SoapBodyHandler.java:42)
>> >        at
>> > org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
>> > :131)
>> >        at
>> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
>> > DefaultEndpoint.java:64)
>> >        at
>> > org.codehaus.xfire.transport.AbstractChannel.receive(
>> AbstractChannel.java
>> > :38)
>> >        at
>> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
>> > Jsr181ExchangeProcessor.java:114)
>> >        at
>> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
>> > AsyncBaseLifeCycle.java:489)
>> >        at
>> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
>> > AsyncBaseLifeCycle.java:441)
>> >        at
>> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
>> > BaseLifeCycle.java:46)
>> >        at
>> > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
>> > DeliveryChannelImpl.java:595)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
>> > AbstractFlow.java:174)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
>> > :176)
>> >        at
>> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
>> > :134)
>> >        at
>> >
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
>> > (ThreadPoolExecutor.java:665)
>> >        at
>> >
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
>> > (ThreadPoolExecutor.java:690)
>> >        at java.lang.Thread.run(Thread.java:619)
>> > </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> >
>> > but now with my browser I may read the wsdl I wrote.
>> > Here is the package file:
>> >
>> > --CCCheck-sa.jar
>> > |
>> > |------CCCheck-http-su.jar
>> > |    |
>> > |    |------CCCheck.wsdl
>> > |    \
>> > |
>> > |-------CCCheck-jsr181-su.jar
>> > |       |
>> > |       |-----*.class
>> > |       |-----CCCheck.wsdl
>> > |       |-----xbean.xml
>> > |       \
>> > \
>> >
>> > Have you got any idea?? Please help me!!!
>> > Thank you very much, regards
>> >
>> > Simone
>> >
>> >
>> > gnodet wrote:
>> > >
>> > > Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
>> > >
>> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
>> > >
>> > >> Hi guys,
>> > >>    I observe a strange thing using my developed work:
>> > >> I create a WebService from a Spring Pojo bean and I developed it on
>> > >> ServiceMix using servicemix-jsr181 component.
>> > >> The strangers come using it: in fact I invoke it using sendsoap an a
>> > >> message that agree with the wsdl, for example:
>> > >>
>> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> > >> http://schemas.xmlsoap.org/soap/envelope/" >
>> > >>  <SOAP-ENV:Body>
>> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>> > >>        <c>3</c>
>> > >>    </ns1:cccheck>
>> > >>  </SOAP-ENV:Body>
>> > >> </SOAP-ENV:Envelope>
>> > >>
>> > >> and  my return is:
>> > >>
>> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
>> > xmlns:SOAP-ENV="
>> > >> http://schemas.xmlsoap.org/soap/envelope/
>> > "><SOAP-ENV:Body><cccheckResponse
>> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> > >> http://localhost:8080/CCCheck
>> > >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>> > >>
>> > >> That disagrees with the wsdl in fact I was waiting for a <app> tag
>> into
>> > >> <cccheckResponse> one: here is the wsdl
>> > >>
>> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> > >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
>> > >>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
>> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> > >>
>> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> > >> "
>> > >>                 targetNamespace="http://localhost:8080/CCCheck">
>> > >>
>> > >>        <wsdl:message name="cccheckRequestMessage">
>> > >>                <wsdl:part name="c" type="xsd:integer"/>
>> > >>        </wsdl:message>
>> > >>
>> > >>        <wsdl:message name="cccheckResponseMessage">
>> > >>                <wsdl:part name="app" type="xsd:boolean"/>
>> > >>        </wsdl:message>
>> > >>
>> > >>        <wsdl:portType name="cccheckPortType">
>> > >>                <wsdl:operation name="cccheck">
>> > >>                        <wsdl:input
>> message="tns:cccheckRequestMessage"
>> > >> name="cccheckRequest"/>
>> > >>                        <wsdl:output
>> > message="tns:cccheckResponseMessage"
>> > >> name="cccheckResponse"/>
>> > >>                </wsdl:operation>
>> > >>        </wsdl:portType>
>> > >>
>> > >>        <wsdl:binding name="cccheckSOAPBinding"
>> > >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
>> > >> http://schemas.xmlsoap.org/soap/http"/>
>> > >>                <wsdl:operation name="cccheck">
>> > >>                        <soap:operation name="cccheck" soapAction=""
>> > >> style="rpc"/>
>> > >>                        <wsdl:input>
>> > >>                                <soap:body namespace="
>> > >> http://localhost:8080/CCCheck" use="literal"/>
>> > >>                        </wsdl:input>
>> > >>                        <wsdl:output>
>> > >>                                <soap:body namespace="
>> > >> http://localhost:8080/CCCheck" use="literal"/>
>> > >>                        </wsdl:output>
>> > >>                </wsdl:operation>
>> > >>        </wsdl:binding>
>> > >>
>> > >>        <wsdl:service name="CCCheckService">
>> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> > >> name="cccheckPort">
>> > >>                        <soap:address location="
>> > >> http://localhost:8080/CCCheck"/>
>> > >>                        <smix:endpoint defaultMep="in-out"
>> > >> role="consumer"/>
>> > >>                </wsdl:port>
>> > >>        </wsdl:service>
>> > >>
>> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>> > >>                <plnk:role name="CCCheckRole"
>> > >> portType="tns:cccheckPortType"/>
>> > >>        </plnk:partnerLinkType>
>> > >> </wsdl:definitions>
>> > >>
>> > >>
>> > >> Using it directly may seems a silliness but I invoke this ws from a
>> > BPEL
>> > >> and reading the response fails for this problem!!!
>> > >> To be clearest I attach here the xbean.xml too:
>> > >>
>> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
>> > xmlns:aop="
>> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> > >> http://localhost:8080/CCCheck">
>> > >>        <jsr181:endpoint annotations="none"
>> > service="wsdl:CCCheckService"
>> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>> > >>                <jsr181:pojo>
>> > >>                        <bean class="CCCheck" id="cccheckService"/>
>> > >>                        <tx:advice id="txAdvice">
>> > >>                                <tx:attributes>
>> > >>                                        <tx:method name="cccheck"
>> > >> readOnly="true"/>
>> > >>                                </tx:attributes>
>> > >>                        </tx:advice>
>> > >>                        <aop:config>
>> > >>                                <aop:pointcut
>> > >> expression="excecution(*CCCheck.*(...))"
>> id="cccheckServiceOperation"/>
>> > >>                                <aop:advisor advice-ref="txAdvice"
>> > >> pointcut-ref="cccheckServiceOperation"/>
>> > >>                        </aop:config>
>> > >>                </jsr181:pojo>
>> > >>        </jsr181:endpoint>
>> > >> </beans>
>> > >>
>> > >> There is someone may give me an explanation and a way to bypass this
>> > >> problem?
>> > >> Thank you all in advance guys,
>> > >> regards
>> > >>
>> > >> Simone
>> > >>
>> > >
>> > >
>> > >
>> > > --
>> > > Cheers,
>> > > Guillaume Nodet
>> > > ------------------------
>> > > Blog: http://gnodet.blogspot.com/
>> > >
>> > >
>> >
>> > --
>> > View this message in context:
>> > http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
>> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >
>> >
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>>
>>
>
>
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 


Re: R: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
Well, if you don't use JAXB2 annotations or JAX-WS, there's no way for you
to control the exact schema in an RPC mode.  So I would suggest to make sure
your WSDL generator create a WSDL that is compatible  with what XFire
expects.  You could also just use the one generated by the servicemix-jsr181
component which should be ok.

On Sat, Mar 29, 2008 at 8:46 AM, <si...@alice.it> wrote:

> Hi Guillaume,
>    I generate the wsdl with my own Java program from an XML description as
> I do with the Java class because I found some problems with the tool in
> axis2 and I prefer  create it from the scratch, using my class.
> If there is a simple way to correct the error using jsr181 please tell me,
> instead I've to change something more  in my thesis, in fact it generate,
> starting from an XML description the SA in an automatic way.
> I add: my POJO is not annotated.
> Thank you very much, regards
> Simone
>
>
> -----Messaggio originale-----
> Da: Guillaume Nodet [mailto:gnodet@gmail.com]
> Inviato: sab 29/03/2008 7.59
> A: users@servicemix.apache.org
> Oggetto: Re: Spring Pojo return
>
> Do you use a wsdl2java tool or is the wsdl generated by the component from
> the java pojo ?
> It seems just a problem in the wsdl generation.   Anyway, xfire, which is
> used internally in jsr181 is not developped anymore so if would advise to
> use the servicemix-cxf-se instead.
>
> On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <si...@alice.it>
> wrote:
>
> >
> > Hi Guillaume,
> >   I try to add style="rpc" and to add wsdlResource="classpath:
> CCCheck.wsdl
> > "
> > to my own <jsr1181:endpoint/> here is the error I got on servicemix
> > console:
> >
> > INFO  - DefaultFaultHandler            - Fault occurred!
> > org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
> >        at
> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> RPCBinding.java
> > :87)
> >        at
> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> > SoapBodyHandler.java:42)
> >        at
> > org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> > :131)
> >        at
> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> > DefaultEndpoint.java:64)
> >        at
> > org.codehaus.xfire.transport.AbstractChannel.receive(
> AbstractChannel.java
> > :38)
> >        at
> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> > Jsr181ExchangeProcessor.java:114)
> >        at
> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> > AsyncBaseLifeCycle.java:489)
> >        at
> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> > AsyncBaseLifeCycle.java:441)
> >        at
> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> > BaseLifeCycle.java:46)
> >        at
> > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> > DeliveryChannelImpl.java:595)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> > AbstractFlow.java:174)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> > :176)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> > :134)
> >        at
> >
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> > (ThreadPoolExecutor.java:665)
> >        at
> >
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> > (ThreadPoolExecutor.java:690)
> >        at java.lang.Thread.run(Thread.java:619)
> >
> >
> > and here the fault message I receive in the invoking console:
> >
> > <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> >
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> > c does not
> > exist!</faultstring><detail><stack>org.codehaus.xfire.fault.XFireFault:
> > Parameter c does not exist!
> >        at
> > org.codehaus.xfire.service.binding.RPCBinding.readMessage(
> RPCBinding.java
> > :87)
> >        at
> > org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> > SoapBodyHandler.java:42)
> >        at
> > org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> > :131)
> >        at
> > org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> > DefaultEndpoint.java:64)
> >        at
> > org.codehaus.xfire.transport.AbstractChannel.receive(
> AbstractChannel.java
> > :38)
> >        at
> > org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> > Jsr181ExchangeProcessor.java:114)
> >        at
> > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> > AsyncBaseLifeCycle.java:489)
> >        at
> > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> > AsyncBaseLifeCycle.java:441)
> >        at
> > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> > BaseLifeCycle.java:46)
> >        at
> > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> > DeliveryChannelImpl.java:595)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> > AbstractFlow.java:174)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> > :176)
> >        at
> > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> > :134)
> >        at
> >
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> > (ThreadPoolExecutor.java:665)
> >        at
> >
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> > (ThreadPoolExecutor.java:690)
> >        at java.lang.Thread.run(Thread.java:619)
> > </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >
> > but now with my browser I may read the wsdl I wrote.
> > Here is the package file:
> >
> > --CCCheck-sa.jar
> > |
> > |------CCCheck-http-su.jar
> > |    |
> > |    |------CCCheck.wsdl
> > |    \
> > |
> > |-------CCCheck-jsr181-su.jar
> > |       |
> > |       |-----*.class
> > |       |-----CCCheck.wsdl
> > |       |-----xbean.xml
> > |       \
> > \
> >
> > Have you got any idea?? Please help me!!!
> > Thank you very much, regards
> >
> > Simone
> >
> >
> > gnodet wrote:
> > >
> > > Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
> > >
> > > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> > >
> > >> Hi guys,
> > >>    I observe a strange thing using my developed work:
> > >> I create a WebService from a Spring Pojo bean and I developed it on
> > >> ServiceMix using servicemix-jsr181 component.
> > >> The strangers come using it: in fact I invoke it using sendsoap an a
> > >> message that agree with the wsdl, for example:
> > >>
> > >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> > >> http://schemas.xmlsoap.org/soap/envelope/" >
> > >>  <SOAP-ENV:Body>
> > >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> > >>        <c>3</c>
> > >>    </ns1:cccheck>
> > >>  </SOAP-ENV:Body>
> > >> </SOAP-ENV:Envelope>
> > >>
> > >> and  my return is:
> > >>
> > >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> > xmlns:SOAP-ENV="
> > >> http://schemas.xmlsoap.org/soap/envelope/
> > "><SOAP-ENV:Body><cccheckResponse
> > >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> > >> http://localhost:8080/CCCheck
> > >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> > >>
> > >> That disagrees with the wsdl in fact I was waiting for a <app> tag
> into
> > >> <cccheckResponse> one: here is the wsdl
> > >>
> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> > >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> > >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> > >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> > >>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> > >>                 xmlns:tns="http://localhost:8080/CCCheck"
> > >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> > >>
> > >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> > >> "
> > >>                 targetNamespace="http://localhost:8080/CCCheck">
> > >>
> > >>        <wsdl:message name="cccheckRequestMessage">
> > >>                <wsdl:part name="c" type="xsd:integer"/>
> > >>        </wsdl:message>
> > >>
> > >>        <wsdl:message name="cccheckResponseMessage">
> > >>                <wsdl:part name="app" type="xsd:boolean"/>
> > >>        </wsdl:message>
> > >>
> > >>        <wsdl:portType name="cccheckPortType">
> > >>                <wsdl:operation name="cccheck">
> > >>                        <wsdl:input
> message="tns:cccheckRequestMessage"
> > >> name="cccheckRequest"/>
> > >>                        <wsdl:output
> > message="tns:cccheckResponseMessage"
> > >> name="cccheckResponse"/>
> > >>                </wsdl:operation>
> > >>        </wsdl:portType>
> > >>
> > >>        <wsdl:binding name="cccheckSOAPBinding"
> > >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
> > >> http://schemas.xmlsoap.org/soap/http"/>
> > >>                <wsdl:operation name="cccheck">
> > >>                        <soap:operation name="cccheck" soapAction=""
> > >> style="rpc"/>
> > >>                        <wsdl:input>
> > >>                                <soap:body namespace="
> > >> http://localhost:8080/CCCheck" use="literal"/>
> > >>                        </wsdl:input>
> > >>                        <wsdl:output>
> > >>                                <soap:body namespace="
> > >> http://localhost:8080/CCCheck" use="literal"/>
> > >>                        </wsdl:output>
> > >>                </wsdl:operation>
> > >>        </wsdl:binding>
> > >>
> > >>        <wsdl:service name="CCCheckService">
> > >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> > >> name="cccheckPort">
> > >>                        <soap:address location="
> > >> http://localhost:8080/CCCheck"/>
> > >>                        <smix:endpoint defaultMep="in-out"
> > >> role="consumer"/>
> > >>                </wsdl:port>
> > >>        </wsdl:service>
> > >>
> > >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> > >>                <plnk:role name="CCCheckRole"
> > >> portType="tns:cccheckPortType"/>
> > >>        </plnk:partnerLinkType>
> > >> </wsdl:definitions>
> > >>
> > >>
> > >> Using it directly may seems a silliness but I invoke this ws from a
> > BPEL
> > >> and reading the response fails for this problem!!!
> > >> To be clearest I attach here the xbean.xml too:
> > >>
> > >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> > xmlns:aop="
> > >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> > >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> > >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> > >> http://localhost:8080/CCCheck">
> > >>        <jsr181:endpoint annotations="none"
> > service="wsdl:CCCheckService"
> > >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> > >>                <jsr181:pojo>
> > >>                        <bean class="CCCheck" id="cccheckService"/>
> > >>                        <tx:advice id="txAdvice">
> > >>                                <tx:attributes>
> > >>                                        <tx:method name="cccheck"
> > >> readOnly="true"/>
> > >>                                </tx:attributes>
> > >>                        </tx:advice>
> > >>                        <aop:config>
> > >>                                <aop:pointcut
> > >> expression="excecution(*CCCheck.*(...))"
> id="cccheckServiceOperation"/>
> > >>                                <aop:advisor advice-ref="txAdvice"
> > >> pointcut-ref="cccheckServiceOperation"/>
> > >>                        </aop:config>
> > >>                </jsr181:pojo>
> > >>        </jsr181:endpoint>
> > >> </beans>
> > >>
> > >> There is someone may give me an explanation and a way to bypass this
> > >> problem?
> > >> Thank you all in advance guys,
> > >> regards
> > >>
> > >> Simone
> > >>
> > >
> > >
> > >
> > > --
> > > Cheers,
> > > Guillaume Nodet
> > > ------------------------
> > > Blog: http://gnodet.blogspot.com/
> > >
> > >
> >
> > --
> > View this message in context:
> > http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >
> >
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

R: Spring Pojo return

Posted by si...@alice.it.
Hi Guillaume,
    I generate the wsdl with my own Java program from an XML description as I do with the Java class because I found some problems with the tool in axis2 and I prefer  create it from the scratch, using my class.
If there is a simple way to correct the error using jsr181 please tell me, instead I've to change something more  in my thesis, in fact it generate, starting from an XML description the SA in an automatic way.
I add: my POJO is not annotated.
Thank you very much, regards
Simone


-----Messaggio originale-----
Da: Guillaume Nodet [mailto:gnodet@gmail.com]
Inviato: sab 29/03/2008 7.59
A: users@servicemix.apache.org
Oggetto: Re: Spring Pojo return
 
Do you use a wsdl2java tool or is the wsdl generated by the component from
the java pojo ?
It seems just a problem in the wsdl generation.   Anyway, xfire, which is
used internally in jsr181 is not developped anymore so if would advise to
use the servicemix-cxf-se instead.

On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <si...@alice.it>
wrote:

>
> Hi Guillaume,
>   I try to add style="rpc" and to add wsdlResource="classpath:CCCheck.wsdl
> "
> to my own <jsr1181:endpoint/> here is the error I got on servicemix
> console:
>
> INFO  - DefaultFaultHandler            - Fault occurred!
> org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
>        at
> org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java
> :87)
>        at
> org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> SoapBodyHandler.java:42)
>        at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> :131)
>        at
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> DefaultEndpoint.java:64)
>        at
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java
> :38)
>        at
> org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> Jsr181ExchangeProcessor.java:114)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> AsyncBaseLifeCycle.java:489)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> AsyncBaseLifeCycle.java:441)
>        at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:46)
>        at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:595)
>        at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> :176)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
>        at java.lang.Thread.run(Thread.java:619)
>
>
> and here the fault message I receive in the invoking console:
>
> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> c does not
> exist!</faultstring><detail><stack>org.codehaus.xfire.fault.XFireFault:
> Parameter c does not exist!
>        at
> org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java
> :87)
>        at
> org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> SoapBodyHandler.java:42)
>        at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> :131)
>        at
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> DefaultEndpoint.java:64)
>        at
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java
> :38)
>        at
> org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> Jsr181ExchangeProcessor.java:114)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> AsyncBaseLifeCycle.java:489)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> AsyncBaseLifeCycle.java:441)
>        at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:46)
>        at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:595)
>        at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> :176)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
>        at java.lang.Thread.run(Thread.java:619)
> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>
> but now with my browser I may read the wsdl I wrote.
> Here is the package file:
>
> --CCCheck-sa.jar
> |
> |------CCCheck-http-su.jar
> |    |
> |    |------CCCheck.wsdl
> |    \
> |
> |-------CCCheck-jsr181-su.jar
> |       |
> |       |-----*.class
> |       |-----CCCheck.wsdl
> |       |-----xbean.xml
> |       \
> \
>
> Have you got any idea?? Please help me!!!
> Thank you very much, regards
>
> Simone
>
>
> gnodet wrote:
> >
> > Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
> >
> > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> >
> >> Hi guys,
> >>    I observe a strange thing using my developed work:
> >> I create a WebService from a Spring Pojo bean and I developed it on
> >> ServiceMix using servicemix-jsr181 component.
> >> The strangers come using it: in fact I invoke it using sendsoap an a
> >> message that agree with the wsdl, for example:
> >>
> >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> http://schemas.xmlsoap.org/soap/envelope/" >
> >>  <SOAP-ENV:Body>
> >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> >>        <c>3</c>
> >>    </ns1:cccheck>
> >>  </SOAP-ENV:Body>
> >> </SOAP-ENV:Envelope>
> >>
> >> and  my return is:
> >>
> >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="
> >> http://schemas.xmlsoap.org/soap/envelope/
> "><SOAP-ENV:Body><cccheckResponse
> >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> http://localhost:8080/CCCheck
> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >>
> >> That disagrees with the wsdl in fact I was waiting for a <app> tag into
> >> <cccheckResponse> one: here is the wsdl
> >>
> >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >>
> >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> "
> >>                 targetNamespace="http://localhost:8080/CCCheck">
> >>
> >>        <wsdl:message name="cccheckRequestMessage">
> >>                <wsdl:part name="c" type="xsd:integer"/>
> >>        </wsdl:message>
> >>
> >>        <wsdl:message name="cccheckResponseMessage">
> >>                <wsdl:part name="app" type="xsd:boolean"/>
> >>        </wsdl:message>
> >>
> >>        <wsdl:portType name="cccheckPortType">
> >>                <wsdl:operation name="cccheck">
> >>                        <wsdl:input message="tns:cccheckRequestMessage"
> >> name="cccheckRequest"/>
> >>                        <wsdl:output
> message="tns:cccheckResponseMessage"
> >> name="cccheckResponse"/>
> >>                </wsdl:operation>
> >>        </wsdl:portType>
> >>
> >>        <wsdl:binding name="cccheckSOAPBinding"
> >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
> >> http://schemas.xmlsoap.org/soap/http"/>
> >>                <wsdl:operation name="cccheck">
> >>                        <soap:operation name="cccheck" soapAction=""
> >> style="rpc"/>
> >>                        <wsdl:input>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:input>
> >>                        <wsdl:output>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:output>
> >>                </wsdl:operation>
> >>        </wsdl:binding>
> >>
> >>        <wsdl:service name="CCCheckService">
> >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> >> name="cccheckPort">
> >>                        <soap:address location="
> >> http://localhost:8080/CCCheck"/>
> >>                        <smix:endpoint defaultMep="in-out"
> >> role="consumer"/>
> >>                </wsdl:port>
> >>        </wsdl:service>
> >>
> >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >>                <plnk:role name="CCCheckRole"
> >> portType="tns:cccheckPortType"/>
> >>        </plnk:partnerLinkType>
> >> </wsdl:definitions>
> >>
> >>
> >> Using it directly may seems a silliness but I invoke this ws from a
> BPEL
> >> and reading the response fails for this problem!!!
> >> To be clearest I attach here the xbean.xml too:
> >>
> >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> xmlns:aop="
> >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> http://localhost:8080/CCCheck">
> >>        <jsr181:endpoint annotations="none"
> service="wsdl:CCCheckService"
> >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> >>                <jsr181:pojo>
> >>                        <bean class="CCCheck" id="cccheckService"/>
> >>                        <tx:advice id="txAdvice">
> >>                                <tx:attributes>
> >>                                        <tx:method name="cccheck"
> >> readOnly="true"/>
> >>                                </tx:attributes>
> >>                        </tx:advice>
> >>                        <aop:config>
> >>                                <aop:pointcut
> >> expression="excecution(*CCCheck.*(...))" id="cccheckServiceOperation"/>
> >>                                <aop:advisor advice-ref="txAdvice"
> >> pointcut-ref="cccheckServiceOperation"/>
> >>                        </aop:config>
> >>                </jsr181:pojo>
> >>        </jsr181:endpoint>
> >> </beans>
> >>
> >> There is someone may give me an explanation and a way to bypass this
> >> problem?
> >> Thank you all in advance guys,
> >> regards
> >>
> >> Simone
> >>
> >
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/


Re: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
Do you use a wsdl2java tool or is the wsdl generated by the component from
the java pojo ?
It seems just a problem in the wsdl generation.   Anyway, xfire, which is
used internally in jsr181 is not developped anymore so if would advise to
use the servicemix-cxf-se instead.

On Fri, Mar 28, 2008 at 11:06 PM, Simone Maletta <si...@alice.it>
wrote:

>
> Hi Guillaume,
>   I try to add style="rpc" and to add wsdlResource="classpath:CCCheck.wsdl
> "
> to my own <jsr1181:endpoint/> here is the error I got on servicemix
> console:
>
> INFO  - DefaultFaultHandler            - Fault occurred!
> org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
>        at
> org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java
> :87)
>        at
> org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> SoapBodyHandler.java:42)
>        at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> :131)
>        at
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> DefaultEndpoint.java:64)
>        at
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java
> :38)
>        at
> org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> Jsr181ExchangeProcessor.java:114)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> AsyncBaseLifeCycle.java:489)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> AsyncBaseLifeCycle.java:441)
>        at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:46)
>        at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:595)
>        at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> :176)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
>        at java.lang.Thread.run(Thread.java:619)
>
>
> and here the fault message I receive in the invoking console:
>
> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
> c does not
> exist!</faultstring><detail><stack>org.codehaus.xfire.fault.XFireFault:
> Parameter c does not exist!
>        at
> org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java
> :87)
>        at
> org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
> SoapBodyHandler.java:42)
>        at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java
> :131)
>        at
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
> DefaultEndpoint.java:64)
>        at
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java
> :38)
>        at
> org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
> Jsr181ExchangeProcessor.java:114)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> AsyncBaseLifeCycle.java:489)
>        at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> AsyncBaseLifeCycle.java:441)
>        at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:46)
>        at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:595)
>        at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java
> :176)
>        at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
>        at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
>        at java.lang.Thread.run(Thread.java:619)
> </stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>
> but now with my browser I may read the wsdl I wrote.
> Here is the package file:
>
> --CCCheck-sa.jar
> |
> |------CCCheck-http-su.jar
> |    |
> |    |------CCCheck.wsdl
> |    \
> |
> |-------CCCheck-jsr181-su.jar
> |       |
> |       |-----*.class
> |       |-----CCCheck.wsdl
> |       |-----xbean.xml
> |       \
> \
>
> Have you got any idea?? Please help me!!!
> Thank you very much, regards
>
> Simone
>
>
> gnodet wrote:
> >
> > Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
> >
> > On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> >
> >> Hi guys,
> >>    I observe a strange thing using my developed work:
> >> I create a WebService from a Spring Pojo bean and I developed it on
> >> ServiceMix using servicemix-jsr181 component.
> >> The strangers come using it: in fact I invoke it using sendsoap an a
> >> message that agree with the wsdl, for example:
> >>
> >> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> >> http://schemas.xmlsoap.org/soap/envelope/" >
> >>  <SOAP-ENV:Body>
> >>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
> >>        <c>3</c>
> >>    </ns1:cccheck>
> >>  </SOAP-ENV:Body>
> >> </SOAP-ENV:Envelope>
> >>
> >> and  my return is:
> >>
> >> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="
> >> http://schemas.xmlsoap.org/soap/envelope/
> "><SOAP-ENV:Body><cccheckResponse
> >> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> >> http://localhost:8080/CCCheck
> >> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >>
> >> That disagrees with the wsdl in fact I was waiting for a <app> tag into
> >> <cccheckResponse> one: here is the wsdl
> >>
> >> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> >> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
> >>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
> >>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >>                 xmlns:tns="http://localhost:8080/CCCheck"
> >>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >>
> >> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> >> "
> >>                 targetNamespace="http://localhost:8080/CCCheck">
> >>
> >>        <wsdl:message name="cccheckRequestMessage">
> >>                <wsdl:part name="c" type="xsd:integer"/>
> >>        </wsdl:message>
> >>
> >>        <wsdl:message name="cccheckResponseMessage">
> >>                <wsdl:part name="app" type="xsd:boolean"/>
> >>        </wsdl:message>
> >>
> >>        <wsdl:portType name="cccheckPortType">
> >>                <wsdl:operation name="cccheck">
> >>                        <wsdl:input message="tns:cccheckRequestMessage"
> >> name="cccheckRequest"/>
> >>                        <wsdl:output
> message="tns:cccheckResponseMessage"
> >> name="cccheckResponse"/>
> >>                </wsdl:operation>
> >>        </wsdl:portType>
> >>
> >>        <wsdl:binding name="cccheckSOAPBinding"
> >> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
> >> http://schemas.xmlsoap.org/soap/http"/>
> >>                <wsdl:operation name="cccheck">
> >>                        <soap:operation name="cccheck" soapAction=""
> >> style="rpc"/>
> >>                        <wsdl:input>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:input>
> >>                        <wsdl:output>
> >>                                <soap:body namespace="
> >> http://localhost:8080/CCCheck" use="literal"/>
> >>                        </wsdl:output>
> >>                </wsdl:operation>
> >>        </wsdl:binding>
> >>
> >>        <wsdl:service name="CCCheckService">
> >>                <wsdl:port binding="tns:cccheckSOAPBinding"
> >> name="cccheckPort">
> >>                        <soap:address location="
> >> http://localhost:8080/CCCheck"/>
> >>                        <smix:endpoint defaultMep="in-out"
> >> role="consumer"/>
> >>                </wsdl:port>
> >>        </wsdl:service>
> >>
> >>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
> >>                <plnk:role name="CCCheckRole"
> >> portType="tns:cccheckPortType"/>
> >>        </plnk:partnerLinkType>
> >> </wsdl:definitions>
> >>
> >>
> >> Using it directly may seems a silliness but I invoke this ws from a
> BPEL
> >> and reading the response fails for this problem!!!
> >> To be clearest I attach here the xbean.xml too:
> >>
> >> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans
> xmlns:aop="
> >> http://www.springframework.org/schema/aop" xmlns:jsr181="
> >> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> >> http://www.springframework.org/schema/tx" xmlns:wsdl="
> >> http://localhost:8080/CCCheck">
> >>        <jsr181:endpoint annotations="none"
> service="wsdl:CCCheckService"
> >> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
> >>                <jsr181:pojo>
> >>                        <bean class="CCCheck" id="cccheckService"/>
> >>                        <tx:advice id="txAdvice">
> >>                                <tx:attributes>
> >>                                        <tx:method name="cccheck"
> >> readOnly="true"/>
> >>                                </tx:attributes>
> >>                        </tx:advice>
> >>                        <aop:config>
> >>                                <aop:pointcut
> >> expression="excecution(*CCCheck.*(...))" id="cccheckServiceOperation"/>
> >>                                <aop:advisor advice-ref="txAdvice"
> >> pointcut-ref="cccheckServiceOperation"/>
> >>                        </aop:config>
> >>                </jsr181:pojo>
> >>        </jsr181:endpoint>
> >> </beans>
> >>
> >> There is someone may give me an explanation and a way to bypass this
> >> problem?
> >> Thank you all in advance guys,
> >> regards
> >>
> >> Simone
> >>
> >
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> > ------------------------
> > Blog: http://gnodet.blogspot.com/
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: Spring Pojo return

Posted by Simone Maletta <si...@alice.it>.
Hi Guillaume,
   I try to add style="rpc" and to add wsdlResource="classpath:CCCheck.wsdl"
to my own <jsr1181:endpoint/> here is the error I got on servicemix console:

INFO  - DefaultFaultHandler            - Fault occurred!
org.codehaus.xfire.fault.XFireFault: Parameter c does not exist!
        at
org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java:87)
        at
org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(SoapBodyHandler.java:42)
        at
org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
        at
org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
        at
org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
        at
org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(Jsr181ExchangeProcessor.java:114)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:595)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
        at java.lang.Thread.run(Thread.java:619)


and here the fault message I receive in the invoking console:

<?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Parameter
c does not
exist!</faultstring><detail><stack>org.codehaus.xfire.fault.XFireFault:
Parameter c does not exist!
        at
org.codehaus.xfire.service.binding.RPCBinding.readMessage(RPCBinding.java:87)
        at
org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(SoapBodyHandler.java:42)
        at
org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
        at
org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
        at
org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
        at
org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(Jsr181ExchangeProcessor.java:114)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:595)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
        at java.lang.Thread.run(Thread.java:619)
</stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

but now with my browser I may read the wsdl I wrote.
Here is the package file:

--CCCheck-sa.jar
|
|------CCCheck-http-su.jar
|    |
|    |------CCCheck.wsdl
|    \
|
|-------CCCheck-jsr181-su.jar
|       |
|       |-----*.class
|       |-----CCCheck.wsdl
|       |-----xbean.xml
|       \
\

Have you got any idea?? Please help me!!!
Thank you very much, regards

Simone


gnodet wrote:
> 
> Have you tried with style="rpc" on the <jsr181:endpoint/> element ?
> 
> On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:
> 
>> Hi guys,
>>    I observe a strange thing using my developed work:
>> I create a WebService from a Spring Pojo bean and I developed it on
>> ServiceMix using servicemix-jsr181 component.
>> The strangers come using it: in fact I invoke it using sendsoap an a
>> message that agree with the wsdl, for example:
>>
>> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> http://schemas.xmlsoap.org/soap/envelope/" >
>>  <SOAP-ENV:Body>
>>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>>        <c>3</c>
>>    </ns1:cccheck>
>>  </SOAP-ENV:Body>
>> </SOAP-ENV:Envelope>
>>
>> and  my return is:
>>
>> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope xmlns:SOAP-ENV="
>> http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><cccheckResponse
>> xmlns="http://localhost:8080/CCCheck"><out xmlns="
>> http://localhost:8080/CCCheck
>> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>>
>> That disagrees with the wsdl in fact I was waiting for a <app> tag into
>> <cccheckResponse> one: here is the wsdl
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
>>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>                 xmlns:tns="http://localhost:8080/CCCheck"
>>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>                
>> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
>> "
>>                 targetNamespace="http://localhost:8080/CCCheck">
>>
>>        <wsdl:message name="cccheckRequestMessage">
>>                <wsdl:part name="c" type="xsd:integer"/>
>>        </wsdl:message>
>>
>>        <wsdl:message name="cccheckResponseMessage">
>>                <wsdl:part name="app" type="xsd:boolean"/>
>>        </wsdl:message>
>>
>>        <wsdl:portType name="cccheckPortType">
>>                <wsdl:operation name="cccheck">
>>                        <wsdl:input message="tns:cccheckRequestMessage"
>> name="cccheckRequest"/>
>>                        <wsdl:output message="tns:cccheckResponseMessage"
>> name="cccheckResponse"/>
>>                </wsdl:operation>
>>        </wsdl:portType>
>>
>>        <wsdl:binding name="cccheckSOAPBinding"
>> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
>> http://schemas.xmlsoap.org/soap/http"/>
>>                <wsdl:operation name="cccheck">
>>                        <soap:operation name="cccheck" soapAction=""
>> style="rpc"/>
>>                        <wsdl:input>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:input>
>>                        <wsdl:output>
>>                                <soap:body namespace="
>> http://localhost:8080/CCCheck" use="literal"/>
>>                        </wsdl:output>
>>                </wsdl:operation>
>>        </wsdl:binding>
>>
>>        <wsdl:service name="CCCheckService">
>>                <wsdl:port binding="tns:cccheckSOAPBinding"
>> name="cccheckPort">
>>                        <soap:address location="
>> http://localhost:8080/CCCheck"/>
>>                        <smix:endpoint defaultMep="in-out"
>> role="consumer"/>
>>                </wsdl:port>
>>        </wsdl:service>
>>
>>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>>                <plnk:role name="CCCheckRole"
>> portType="tns:cccheckPortType"/>
>>        </plnk:partnerLinkType>
>> </wsdl:definitions>
>>
>>
>> Using it directly may seems a silliness but I invoke this ws from a BPEL
>> and reading the response fails for this problem!!!
>> To be clearest I attach here the xbean.xml too:
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans xmlns:aop="
>> http://www.springframework.org/schema/aop" xmlns:jsr181="
>> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
>> http://www.springframework.org/schema/tx" xmlns:wsdl="
>> http://localhost:8080/CCCheck">
>>        <jsr181:endpoint annotations="none" service="wsdl:CCCheckService"
>> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>>                <jsr181:pojo>
>>                        <bean class="CCCheck" id="cccheckService"/>
>>                        <tx:advice id="txAdvice">
>>                                <tx:attributes>
>>                                        <tx:method name="cccheck"
>> readOnly="true"/>
>>                                </tx:attributes>
>>                        </tx:advice>
>>                        <aop:config>
>>                                <aop:pointcut
>> expression="excecution(*CCCheck.*(...))" id="cccheckServiceOperation"/>
>>                                <aop:advisor advice-ref="txAdvice"
>> pointcut-ref="cccheckServiceOperation"/>
>>                        </aop:config>
>>                </jsr181:pojo>
>>        </jsr181:endpoint>
>> </beans>
>>
>> There is someone may give me an explanation and a way to bypass this
>> problem?
>> Thank you all in advance guys,
>> regards
>>
>> Simone
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 
> 

-- 
View this message in context: http://www.nabble.com/Spring-Pojo-return-tp16347855s12049p16363130.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Spring Pojo return

Posted by Guillaume Nodet <gn...@gmail.com>.
Have you tried with style="rpc" on the <jsr181:endpoint/> element ?

On Fri, Mar 28, 2008 at 9:40 AM, <si...@alice.it> wrote:

> Hi guys,
>    I observe a strange thing using my developed work:
> I create a WebService from a Spring Pojo bean and I developed it on
> ServiceMix using servicemix-jsr181 component.
> The strangers come using it: in fact I invoke it using sendsoap an a
> message that agree with the wsdl, for example:
>
> <SOAP-ENV:Envelope xmlns:SOAP-ENV="
> http://schemas.xmlsoap.org/soap/envelope/" >
>  <SOAP-ENV:Body>
>    <ns1:cccheck xmlns:ns1="http://localhost:8080/CCCheck">
>        <c>3</c>
>    </ns1:cccheck>
>  </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> and  my return is:
>
> <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope xmlns:SOAP-ENV="
> http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><cccheckResponse
> xmlns="http://localhost:8080/CCCheck"><out xmlns="
> http://localhost:8080/CCCheck
> ">false</out></cccheckResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
>
> That disagrees with the wsdl in fact I was waiting for a <app> tag into
> <cccheckResponse> one: here is the wsdl
>
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>                  xmlns="http://schemas.xmlsoap.org/wsdl/"
>                 xmlns:smix="http://servicemix.org/wsdl/jbi/"
>                 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>                 xmlns:tns="http://localhost:8080/CCCheck"
>                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>                 xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype
> "
>                 targetNamespace="http://localhost:8080/CCCheck">
>
>        <wsdl:message name="cccheckRequestMessage">
>                <wsdl:part name="c" type="xsd:integer"/>
>        </wsdl:message>
>
>        <wsdl:message name="cccheckResponseMessage">
>                <wsdl:part name="app" type="xsd:boolean"/>
>        </wsdl:message>
>
>        <wsdl:portType name="cccheckPortType">
>                <wsdl:operation name="cccheck">
>                        <wsdl:input message="tns:cccheckRequestMessage"
> name="cccheckRequest"/>
>                        <wsdl:output message="tns:cccheckResponseMessage"
> name="cccheckResponse"/>
>                </wsdl:operation>
>        </wsdl:portType>
>
>        <wsdl:binding name="cccheckSOAPBinding"
> type="tns:cccheckPortType"><soap:binding style="rpc" transport="
> http://schemas.xmlsoap.org/soap/http"/>
>                <wsdl:operation name="cccheck">
>                        <soap:operation name="cccheck" soapAction=""
> style="rpc"/>
>                        <wsdl:input>
>                                <soap:body namespace="
> http://localhost:8080/CCCheck" use="literal"/>
>                        </wsdl:input>
>                        <wsdl:output>
>                                <soap:body namespace="
> http://localhost:8080/CCCheck" use="literal"/>
>                        </wsdl:output>
>                </wsdl:operation>
>        </wsdl:binding>
>
>        <wsdl:service name="CCCheckService">
>                <wsdl:port binding="tns:cccheckSOAPBinding"
> name="cccheckPort">
>                        <soap:address location="
> http://localhost:8080/CCCheck"/>
>                        <smix:endpoint defaultMep="in-out"
> role="consumer"/>
>                </wsdl:port>
>        </wsdl:service>
>
>        <plnk:partnerLinkType name="CCCheckPartnerLinkType">
>                <plnk:role name="CCCheckRole"
> portType="tns:cccheckPortType"/>
>        </plnk:partnerLinkType>
> </wsdl:definitions>
>
>
> Using it directly may seems a silliness but I invoke this ws from a BPEL
> and reading the response fails for this problem!!!
> To be clearest I attach here the xbean.xml too:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><beans xmlns:aop="
> http://www.springframework.org/schema/aop" xmlns:jsr181="
> http://servicemix.apache.org/jsr181/1.0" xmlns:tx="
> http://www.springframework.org/schema/tx" xmlns:wsdl="
> http://localhost:8080/CCCheck">
>        <jsr181:endpoint annotations="none" service="wsdl:CCCheckService"
> serviceInterface="CCCheckInterface" endpoint="CCCheckPort">
>                <jsr181:pojo>
>                        <bean class="CCCheck" id="cccheckService"/>
>                        <tx:advice id="txAdvice">
>                                <tx:attributes>
>                                        <tx:method name="cccheck"
> readOnly="true"/>
>                                </tx:attributes>
>                        </tx:advice>
>                        <aop:config>
>                                <aop:pointcut
> expression="excecution(*CCCheck.*(...))" id="cccheckServiceOperation"/>
>                                <aop:advisor advice-ref="txAdvice"
> pointcut-ref="cccheckServiceOperation"/>
>                        </aop:config>
>                </jsr181:pojo>
>        </jsr181:endpoint>
> </beans>
>
> There is someone may give me an explanation and a way to bypass this
> problem?
> Thank you all in advance guys,
> regards
>
> Simone
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/