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" <[EMAIL PROTECTED]>
To: <[email protected]>
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
> <[EMAIL PROTECTED]>
> 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" <[EMAIL PROTECTED]>
>> To: <[email protected]>
>> 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, <[EMAIL PROTECTED]> 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:[EMAIL PROTECTED]
>> >> Inviato: sab 29/03/2008 7.59
>> >> A: [email protected]
>> >> 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 <
>> [EMAIL PROTECTED]>
>> >> 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, <[EMAIL PROTECTED]>
>> >> > > 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/
>