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 <[EMAIL PROTECTED]>
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" <[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/
> >
>
>


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

Reply via email to