Hi David

Can you put following inside the cxfEndpoint declaration

*<cxf:properties>*

*  <entry key="dataFormat" value="MESSAGE" />  *

*</cxf:properties>*


So effectively your cxfEndpoint bean will look like

  <cxf:cxfEndpoint id="SimpleWebservice"
    address="http://localhost:9003/weservice/SimpleWebservice";


    wsdlURL="http://localhost:9003/weservice/SimpleWebservice?wsdl";

              endpointName="ISimpleWebservice"
    serviceName="ISimpleWebservice"

serviceClass="com.webservice.example.ISimpleWebservice"

<cxf:properties>

  <entry key="dataFormat" value="MESSAGE" />

</cxf:properties>

/>



And please note -  *endpointName *should be the name of the PORT's  name
attribute inside WSDL i.e. *SimpleWebservicePort *

and

*serviceName *should be the service name attribute i.e *ISimpleWebservice *in
ur WSDL.


Another point to note -  In the route

    <route>
      <from uri="file://D:/Input?noop=false"/>
       <log message="Name of the client to be created received : "/>
       <bean ref="enrich" method="createCustomer"/>
       <log message="Enrich Crossed.....: "/>
       <to uri="cxf:bean:SimpleWebservice"/>
       <log message="SOAP Response received : ${body}"/>
       <to uri="bean:enrich?method=createCustomer"/>
    </route>


Make sure that the file which u poll from input folder contains a valid
Soap Envelop request. And use convertBody to extract the text from the file
/ Or / Make sure enrich bean returns a valid string which is a SOAP
envelope.

File contents should be a valid SOAP Envelop.

Hope this works.


Cheers

Reji




On Fri, Oct 18, 2013 at 7:43 AM, David M Nayagam [via Camel] <
[email protected]> wrote:

> Hi Regi,
>
> can i have solution for this.
>
> i have created one sample web service and deployed in servicemix 4.5.2. i
> am able to get the url and client java using getting response:
>
> i am creating another project to consume the webservice but i am getting
> error. Source and error is attached.
>
> -----------------------------
> ISimpleWebservice Interface
> -----------------------------
> package com.webservice.example;
>
> import javax.jws.WebParam;
> import javax.jws.WebResult;
> import javax.jws.WebService;
>
> @WebService
> public interface ISimpleWebservice
> {
>         @WebResult(name="Customer")
>         public Customer getCustomer(@WebParam(name="cutomer") Customer
> cutomer);
> }
> -------------------------------------
> SimpleWebservice IMPL
> -------------------------
> package com.webservice.example;
>
> import javax.jws.WebService;
>
> @WebService(endpointInterface =
> "com.webservice.example.ISimpleWebservice", serviceName =
> "ISimpleWebservice")
> public class SimpleWebservice implements ISimpleWebservice
> {
>         public Customer getCustomer(Customer cutomer)
>         {
>                 System.out.println(" Calling IMPL Class......:  "+
> cutomer.getName());
>                 cutomer.setDescription("SUCCESS");
>                 return cutomer;
>         }
> }
> ----------------------------
> Customer POJO
> --------------------
>
> package com.webservice.example;
>
> public class Customer
> {
>         String name;
>         String description;
>         public String getName() {
>                 return name;
>         }
>         public void setName(String name) {
>                 this.name = name;
>         }
>         public String getDescription() {
>                 return description;
>         }
>         public void setDescription(String description) {
>                 this.description = description;
>         }
> }
> -----------------------------
> came-cxf.xml
> -------------------
> <?xml version="1.0" encoding="UTF-8"?>
>
> <beans
>     xmlns="http://www.springframework.org/schema/beans";
>         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>         xmlns:jaxws="http://cxf.apache.org/jaxws";
>         xmlns:cxf="http://camel.apache.org/schema/cxf";
>         xmlns:soap="http://cxf.apache.org/bindings/soap";
>         xsi:schemaLocation="http://www.springframework.org/schema/beans
>
> http://www.springframework.org/schema/beans/spring-beans.xsd
>
> http://cxf.apache.org/jaxws
>
> http://cxf.apache.org/schemas/jaxws.xsd
>
> http://camel.apache.org/schema/cxf
>
> http://camel.apache.org/schema/cxf/camel-cxf.xsd
>                         http://cxf.apache.org/bindings/soap
>
> http://cxf.apache.org/schemas/configuration/soap.xsd";>
>
>
>
>         <jaxws:endpoint id="aSimpleWebservice"
>
> implementor="com.webservice.example.SimpleWebservice"
>                         address="
> http://localhost:9003/weservice/SimpleWebservice";>
>
>     </jaxws:endpoint>
>
> </beans>
>
> --------------------------------------
> WSDL FILE
> ------------
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns:tns="
> http://example.webservice.com/"; xmlns:soap="
> http://schemas.xmlsoap.org/wsdl/soap/"; xmlns:ns1="
> http://schemas.xmlsoap.org/soap/http"; name="ISimpleWebservice"
> targetNamespace="http://example.webservice.com/";>
>   <wsdl:types>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:tns="
> http://example.webservice.com/"; attributeFormDefault="unqualified"
> elementFormDefault="unqualified" targetNamespace="
> http://example.webservice.com/";>
> <xs:complexType name="getCustomer">
> <xs:sequence>
> <xs:element minOccurs="0" name="cutomer" type="tns:customer"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="customer">
> <xs:sequence>
> <xs:element minOccurs="0" name="description" type="xs:string"/>
> <xs:element minOccurs="0" name="name" type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="getCustomerResponse">
> <xs:sequence>
> <xs:element minOccurs="0" name="customer" type="tns:customer"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="getCustomer" nillable="true" type="tns:getCustomer"/>
> <xs:element name="getCustomerResponse" nillable="true"
> type="tns:getCustomerResponse"/>
> </xs:schema>
>   </wsdl:types>
>   <wsdl:message name="getCustomer">
>     <wsdl:part element="tns:getCustomer" name="parameters">
>     </wsdl:part>
>   </wsdl:message>
>   <wsdl:message name="getCustomerResponse">
>     <wsdl:part element="tns:getCustomerResponse" name="parameters">
>     </wsdl:part>
>   </wsdl:message>
>   <wsdl:portType name="ISimpleWebservice">
>     <wsdl:operation name="getCustomer">
>       <wsdl:input message="tns:getCustomer" name="getCustomer">
>     </wsdl:input>
>       <wsdl:output message="tns:getCustomerResponse"
> name="getCustomerResponse">
>     </wsdl:output>
>     </wsdl:operation>
>   </wsdl:portType>
>   <wsdl:binding name="ISimpleWebserviceSoapBinding"
> type="tns:ISimpleWebservice">
>     <soap:binding style="document" transport="
> http://schemas.xmlsoap.org/soap/http"/>
>     <wsdl:operation name="getCustomer">
>       <soap:operation soapAction="" style="document"/>
>       <wsdl:input name="getCustomer">
>         <soap:body use="literal"/>
>       </wsdl:input>
>       <wsdl:output name="getCustomerResponse">
>         <soap:body use="literal"/>
>       </wsdl:output>
>     </wsdl:operation>
>   </wsdl:binding>
>   <wsdl:service name="ISimpleWebservice">
>     <wsdl:port binding="tns:ISimpleWebserviceSoapBinding"
> name="SimpleWebservicePort">
>       <soap:address location="
> http://localhost:9003/weservice/SimpleWebservice"/>
>     </wsdl:port>
>   </wsdl:service>
> </wsdl:definitions>
> --------------------------------------------------------------------
> ==================
> Consmer Projects:
> ==================
>
> camel-context.xml
> --------------------------------------
> <?xml version="1.0" encoding="UTF-8"?>
>
>
> <beans xmlns="http://www.springframework.org/schema/beans";
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>        xmlns:cxf="http://camel.apache.org/schema/cxf";
>        xsi:schemaLocation="
>         http://www.springframework.org/schema/beans
>   http://www.springframework.org/schema/beans/spring-beans.xsd
>         http://www.springframework.org/schema/context
>   http://www.springframework.org/schema/context/spring-context.xsd
>   http://camel.apache.org/schema/spring
>                 http://camel.apache.org/schema/spring/camel-spring.xsd
>                 http://camel.apache.org/schema/cxf
>                 http://camel.apache.org/schema/cxf/camel-cxf.xsd";>
>
>
>   <bean id="enrich" class="com.enricher.Enrich" />
>   <cxf:cxfEndpoint id="SimpleWebservice"
>     address="http://localhost:9003/weservice/SimpleWebservice";
>     wsdlURL="http://localhost:9003/weservice/SimpleWebservice?wsdl"; 
> endpointName="ISimpleWebservice"
>
>     serviceName="ISimpleWebservice"
> serviceClass="com.webservice.example.ISimpleWebservice" />
>
>
>   <camelContext xmlns="http://camel.apache.org/schema/spring";>
>
>
>     <route>
>       <from uri="file://D:/Input?noop=false"/>
>        <log message="Name of the client to be created received : "/>
>        <bean ref="enrich" method="createCustomer"/>
>        <log message="Enrich Crossed.....: "/>
>        <to uri="cxf:bean:SimpleWebservice"/>
>        <log message="SOAP Response received : ${body}"/>
>        <to uri="bean:enrich?method=createCustomer"/>
>     </route>
>   </camelContext>
>
> </beans>
>
> --------------------
> ENRICH
> -------------------
>
> package com.enricher;
>
>
> import org.apache.camel.Body;
>
> public class Enrich
> {
>     public Customer createCustomer(@Body Customer customer)
>     {
>     System.out.println("Comming to Enrich Method...");
>     Customer customer2 = new Customer();
>     customer2.setDescription("GOOD");
>     customer2.setName("ABC");
>         return customer2;
>     }
> }
>
> -----------------------------------
> Customer
> -----------
> package com.enricher;
>
>
> public class Customer
> {
>         String name;
>         String description;
>         public String getName() {
>                 return name;
>         }
>         public void setName(String name) {
>                 this.name = name;
>         }
>         public String getDescription() {
>                 return description;
>         }
>         public void setDescription(String description) {
>                 this.description = description;
>         }
> }
> ---------------------------
>
> But i am getting Error Like:
>
> org.apache.camel.FailedToCreateProducerException: Failed to create
> Producer for endpoint: Endpoint[cxf://bean:SimpleWebservice]. Reason:
> org.apache.cxf.service.factory.ServiceConstructionException: Could not find
> definition for service 
> {http://www.springframework.org/schema/beans}ISimpleWebservice.
>
>         at
> org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:395)[101:org.apache.camel.camel-core:2.10.6]
>
>         at
> org.apache.camel.impl.ProducerCache.acquireProducer(ProducerCache.java:114)[101:org.apache.camel.camel-core:2.10.6]
>
> =====================================
> Caused by: org.apache.cxf.service.factory.ServiceConstructionException:
> Could not find definition for service {
> http://www.springframework.org/schema/beans}ISimpleWebservice.
>         at
> org.apache.cxf.wsdl11.WSDLServiceFactory.create(WSDLServiceFactory.java:171)[132:org.apache.cxf.cxf-rt-core:2.6.8]
>
>         at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:416)[132:org.apache.cxf.cxf-rt-core:2.6.8]
>
>         at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:538)[132:org.apache.cxf.cxf-rt-core:2.6.8]
>
>
> *************************************************
> Can you let me know what exactly I am doing wrong? I am new to Camel so
> facing lot of issues.
> I did lot of googling but not able to get it running. Is there any other
> approach to consume the webservice.
>
> Thanks in advance !!!!!
>
> Thanks
> David
> 9786495225
>
> ------------------------------
>  If you reply to this email, your message will be added to the discussion
> below:
>
> http://camel.465427.n5.nabble.com/Email-Attachments-Adding-to-Exchange-Attachments-tp5739863p5741843.html
>  To unsubscribe from Email Attachments - Adding to Exchange Attachments, click
> here<http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=5739863&code=Y29udGFjdHJlamlAZ21haWwuY29tfDU3Mzk4NjN8MTAwNDkxODIzMw==>
> .
> NAML<http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>




--
View this message in context: 
http://camel.465427.n5.nabble.com/Re-Email-Attachments-Adding-to-Exchange-Attachments-tp5741847.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to