I use camel 2.2 and I read it somewhere that it can be done in the following
way

<cxf:cxfEndpoint id="myWSEndpoint"
        wsdlURL="META-INF/wsdl/your.wsdl"
        address="${my.domain.service.url}"
        endpointName=""
        serviceName=""
        xmlns:s="urn:...:wsdl" >        
        
        <cxf:properties> 
                <entry key="dataFormat" value="MESSAGE"/> 
        </cxf:properties>
</cxf:cxfEndpoint>


<camelContext id="MyCamelContext"
        xmlns="http://activemq.apache.org/camel/schema/spring";>
        <route>
                <from uri="activemq:queue/my/Queue" />
               
              <setHeader headerName="operationName">
                        <constant>myOperation</constant>
                </setHeader>
                <to uri="cxf:bean:myWSEndpoint" />
        </route>
</camelContext>


But the way I am doing is 

1) created a mockservice against the WSDL in soapUI 
2) then we will see all the operations supported by that web-service in
soapUI with request object for each operation.
3)when you are calling webservice, construct the request object in a similar
way (done in soapUI), then we don't need to specify operation name etc. ( we
can ignore the <setHeader> tags )



willem.jiang wrote:
> 
> Hi,
> 
> CAMEL-2780 addressed this issue by introducing a defaultOperationName 
> option for you.
> It's a new to camel 2.4.0, please feel free to try out the latest camel 
> 2.4-SNAPSHOT for it.
> 
> [1]https://issues.apache.org/activemq/browse/CAMEL-2780
> 
> Willem
> 
> StonePeng wrote:
>> what is the answer about this question. i want to ask the same question,
>> help
>> 
>> 
>> 
>> usha Kanteti wrote:
>>> Hi Ashwin,
>>>   Is there anywhere to specify ( to call specific method of web-service)  
>>> like operationName="sayHello" in the following <cxf:Endpoint tag.
>>>
>>> That's what my question is. 
>>>
>>> <cxf:Endpoint id="myEndpoint" 
>>> address="http://localhost:8080/someService/";
>>> wsdlURL="../sr-binding/src/main/resources/META-INF/wsdl/someservice.wsdl" 
>>> endpointName="s:myEndpointName"
>>> serviceName="s:myService"
>>> operationName="s:sayHello"
>>> xmlns:s="urn:some:company:some:service:wsdl" >
>>> <cxfroperties>
>>> <entry key="dataFormat" value="MESSAGE"/>
>>> </cxfroperties>
>>> </cxf:cxfEndpoint>
>>>
>>> if we can't it that way, can we specify the method name at routing time
>>> before we send the request message to the "myEndpoint" in the following
>>> code 
>>>
>>> <route>
>>>     <from uri="jms:queue:..." />
>>>      <to   uri="cxf:bean:myEndpoint" /> 
>>> </route>
>>>
>>>
>>>
>>> Ashwin Karpe wrote:
>>>> Hi,
>>>>
>>>> You do need to create a client to invoke on the CXF endpoint and send a
>>>> SOAP payload that can be used to call your method described in WSDL.
>>>>
>>>> If you do not want to write a client you could use a tool like SoapUI
>>>> to
>>>> do this for you (since you already have the WSDL).
>>>>
>>>> Cheers,
>>>>
>>>> Ashwin...
>>>>
>>>>
>>>> usha K. wrote:
>>>>>  I have the following cxfEndpoint configuration in the
>>>>> camel-context.xml
>>>>> which is a webservice end point, pointing to a 3rd party web service.
>>>>>
>>>>>  I am wondering how I can specify (in this configuration) an operation
>>>>> with parameters to be passed to the webservice? As an example, I need
>>>>> to
>>>>> invoke the operation sayHello() in that webservice, passing two
>>>>> parameters (firstName, lastName).
>>>>>
>>>>>  Can I do that in the cxfEndPoint itself? If so, how? Also, how can I
>>>>> pass the values itself?
>>>>>
>>>>> <cxf:cxfEndpoint id="myEndpoint" 
>>>>> address="http://localhost:8080/someService/";
>>>>> wsdlURL="../sr-binding/src/main/resources/META-INF/wsdl/someservice.wsdl" 
>>>>> endpointName="s:myEndpointName"
>>>>> serviceName="s:myService"
>>>>> xmlns:s="urn:some:company:some:service:wsdl" >
>>>>> <cxfroperties>
>>>>> <entry key="dataFormat" value="MESSAGE"/>
>>>>> </cxfroperties>
>>>>> </cxf:cxfEndpoint>
>>>>>
>>>>> OR do I have to write a client code on my side (where this end point
>>>>> points to)?
>>>>>
>>>>
>>>
>> 
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/How-to-invoke-specific-operation-with-params-for-cxf-webservice-endpoint-through-configuration-tp28023138p28833137.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to