Hi,

I am getting following compilation error after adding entries..What do I
need to import in my java class in order to avoid it.

C:\mavenProject\SuccessHttp\success-webservice-first-su\src\main\java\org\apache\servicemix\samples\hello\HelloTe
st.java:[21,9] cannot find symbol
symbol  : class WebParam
location: interface org.apache.servicemix.samples.hello.HelloTest

C:\mavenProject\SuccessHttp\success-webservice-first-su\src\main\java\org\apache\servicemix\samples\hello\HelloTe
st.java:[9,1] cannot find symbol
symbol  : class ResponseWrapper
location: interface org.apache.servicemix.samples.hello.HelloTest

C:\mavenProject\SuccessHttp\success-webservice-first-su\src\main\java\org\apache\servicemix\samples\hello\HelloTe
st.java:[13,1] cannot find symbol
symbol  : class RequestWrapper
location: interface org.apache.servicemix.samples.hello.HelloTest

C:\mavenProject\SuccessHttp\success-webservice-first-su\src\main\java\org\apache\servicemix\samples\hello\HelloTe
st.java:[17,1] cannot find symbol
symbol  : class WebResult
location: interface org.apache.servicemix.samples.hello.HelloTest

C:\mavenProject\SuccessHttp\success-webservice-first-su\src\main\java\org\apache\servicemix\samples\hello\HelloTe
st.java:[19,1] cannot find symbol
symbol  : class WebMethod
location: interface org.apache.servicemix.samples.hello.HelloTest

Do I need to mention targetNamespace
="http://swebservice.samples.servicemix.apache.org/"; in  @WebResult(name =
"return", targetNamespace = "") as it is currently empty..


Jayasree.B



Freeman Fang wrote:
> 
> Hi,
> 
> Annotation missing cause the error.
> The sayHello method in your HelloTest should be
> @ResponseWrapper(localName = "sayHelloResponse", targetNamespace = 
> "http://swebservice.samples.servicemix.apache.org/";, className = 
> "org.apache.servicemix.samples.swebservice.SayHelloResponse")
>     @RequestWrapper(localName = "sayHello", targetNamespace = 
> "http://swebservice.samples.servicemix.apache.org/";, className = 
> "org.apache.servicemix.samples.swebservice.SayHello")
>     @WebResult(name = "return", targetNamespace = "")
>     @WebMethod
>     public java.lang.String sayHello(
>         @WebParam(name = "arg0", targetNamespace = "")
>         java.lang.String arg0
>     );
> 
> Freeman
> 
> jayasreeb wrote:
>> Hi
>>
>> I made the annotation changes in HelloTest and HellotestImpl.java as per
>> your suggesstion.But I am getting following error.
>>
>> Unmarshalling Error : unexpected element
>> (uri:"http://swebservice.samples.servicemix.apache.org/";,
>> local:"sayHello").
>> Expected elements are (none) 
>>
>> Actually I am using Java as first way.I have created following
>> HelloTest.java and HelloImpl.Java first and then using Javatowsdl I am
>> generating wsdl.
>>
>> In the pom.xml of Service Unit (Service engine) I have added following
>> entry
>> to generate wsdl from java..
>>
>>
>>  <plugin>
>>  <groupId>org.apache.cxf</groupId>
>>  <artifactId>cxf-codegen-plugin</artifactId>
>>  <version>${cxf-version}</version>
>>
>>  <dependencies>
>>  <dependency>
>>  <groupId>org.apache.cxf</groupId>
>>  <artifactId>cxf-rt-frontend-jaxws</artifactId>
>>  <version>${cxf-version}</version>
>>
>>  </dependency>
>>  </dependencies>
>>  <executions>
>>  <execution>
>>  <id>generate-wsdl</id>
>>  <phase>process-classes</phase>
>>  <configuration>     
>>  <className>org.apache.servicemix.samples.hello.HelloTest</className>
>>  <verbose>true</verbose>                             
>>
>> <outputFile>${project.build.directory}/generated-sources/jaxws/Hello.wsdl</outputFile>
>>  <verbose>true</verbose>
>>  <argline>-classdir ${project.build.directory}/classes</argline>
>>  </configuration>
>>  <goals>     
>>  <goal>java2wsdl</goal>
>>  </goals>
>>  </execution>
>>  </executions>
>>  </plugin>
>>
>> Is the entry in pom file is correct?Am I missing something? Do I need to
>> do
>> any entry in xbean file??
>>
>> Thanks in advance
>> Jayasree.B
>>
>>
>>
>>
>>
>>
>> Freeman Fang wrote:
>>   
>>> jayasreeb wrote:
>>>     
>>>> Hi
>>>>
>>>> I created interface HelloTest and and implemenation class
>>>> HelloTestImpl.java
>>>>
>>>>
>>>> HelloTest.java
>>>>
>>>> package org.apache.servicemix.samples.hello;
>>>> import javax.jws.WebService;
>>>>
>>>> @WebService(targetNamespace =
>>>> "http://swebservice.samples.servicemix.apache.org/";)
>>>>
>>>>   
>>>>       
>>> the annotation here should be
>>> @WebService(targetNamespace 
>>> ="http://swebservice.samples.servicemix.apache.org/";, name="HelloTest")
>>>
>>>     
>>>> public interface HelloTest{  
>>>>
>>>>   public abstract String sayHello(String name);
>>>> } 
>>>>
>>>> HelloTestImpl.java
>>>>
>>>> package org.apache.servicemix.samples.webservice;
>>>> import org.apache.servicemix.samples.hello.*;
>>>> import javax.jws.WebService;
>>>> @WebService(targetNamespace =
>>>> "http://swebservice.samples.servicemix.apache.org/";)
>>>>   
>>>>       
>>> the annotation here should be
>>> @WebService(targetNamespace 
>>> ="http://swebservice.samples.servicemix.apache.org/";, 
>>> serviceName="HelloTestService",
>>>     endpointInterface="org.apache.servicemix.samples.hello.HelloTest" )
>>>
>>> Also, since you are using wsdl first way, you should generate code from 
>>> wsdl by cxf wsdl2java, cxf tool will take care of annotation for you.
>>>     
>>>> public class HelloTestImpl implements HelloTest{
>>>>   private String message = "HELLO!!!!!";
>>>>
>>>>   public String sayHello(String name) {
>>>>     return message + name + ".";
>>>>   }
>>>> } 
>>>>
>>>>
>>>> Then by giving following entry in pom file of service unit i generated
>>>> wsdl
>>>> file from java...
>>>>
>>>>
>>>> <plugin>
>>>> <groupId>org.apache.cxf</groupId>
>>>> <artifactId>cxf-codegen-plugin</artifactId>
>>>> <version>${cxf-version}</version>
>>>>
>>>> <dependencies>
>>>> <dependency>
>>>> <groupId>org.apache.cxf</groupId>
>>>> <artifactId>cxf-rt-frontend-jaxws</artifactId>
>>>> <version>${cxf-version}</version>
>>>>
>>>> </dependency>
>>>> </dependencies>
>>>> <executions>
>>>> <execution>
>>>> <id>generate-wsdl</id>
>>>> <phase>process-classes</phase>
>>>> <configuration>    
>>>> <className>org.apache.servicemix.samples.hello.HelloTest</className>
>>>> <verbose>true</verbose>                            
>>>> <outputFile>${project.build.directory}/generated-sources/jaxws/Hello.wsdl</outputFile>
>>>> <verbose>true</verbose>
>>>> <argline>-classdir ${project.build.directory}/classes</argline>
>>>> </configuration>
>>>> <goals>    
>>>> <goal>java2wsdl</goal>
>>>> </goals>
>>>> </execution>
>>>> </executions>
>>>> </plugin>
>>>>
>>>> Jayasree.B
>>>>
>>>>
>>>> Freeman Fang wrote:
>>>>   
>>>>       
>>>>> Hi,
>>>>> I suspect your HelloTestImpl is not annotated correctly, what it looks
>>>>> like?
>>>>> Is it inherit from the interface HelloTest.java which you generate
>>>>> using 
>>>>> cxf wsdl2java tool?
>>>>>
>>>>> Freeman
>>>>>
>>>>>
>>>>> jayasreeb wrote:
>>>>>     
>>>>>         
>>>>>> Hi,
>>>>>>
>>>>>> Please find my cxf se xbean entry.
>>>>>>
>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>> <beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0";>
>>>>>>
>>>>>>     <cxfse:endpoint>
>>>>>>         <cxfse:pojo>
>>>>>>           <bean
>>>>>> class="org.apache.servicemix.samples.webservice.HelloTestImpl" />
>>>>>>         </cxfse:pojo>
>>>>>>     </cxfse:endpoint>
>>>>>>
>>>>>> </beans>
>>>>>>
>>>>>>
>>>>>> Please find my cxf bc entry
>>>>>>
>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>> <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0";
>>>>>>       
>>>>>> xmlns:hello="http://swebservice.samples.servicemix.apache.org/";>
>>>>>>
>>>>>>   <cxfbc:consumer wsdl="classpath:Hello.wsdl"
>>>>>>                       targetService="hello:HelloTestService"
>>>>>>                       targetInterface="hello:HelloTest"/>
>>>>>>
>>>>>> </beans>
>>>>>>
>>>>>> Thanks for your help
>>>>>> Jayasree.B
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Freeman Fang wrote:
>>>>>>   
>>>>>>       
>>>>>>           
>>>>>>> Hi,
>>>>>>>
>>>>>>> Please append the xbean.xml for your cxf se and cxf bc endpoint.
>>>>>>>
>>>>>>> Freeman
>>>>>>>
>>>>>>> jayasreeb wrote:
>>>>>>>     
>>>>>>>         
>>>>>>>             
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I have created http web service "Hello" by following
>>>>>>>> "cxf-wsdl-first"
>>>>>>>> example.I have created a service engine,binding component and
>>>>>>>> service
>>>>>>>> assembly.I deployed webservice successfully in Servicemix.
>>>>>>>>
>>>>>>>> When I am giving "http://localhost:9090/hello/?wsdl"; in browser
>>>>>>>> I am successfully getting following wsdl.
>>>>>>>>
>>>>>>>>  <?xml version="1.0" encoding="utf-8" ?> 
>>>>>>>> - <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>>>>>>>> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>>>>>>>> xmlns:tns="http://swebservice.samples.servicemix.apache.org/";
>>>>>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>>>>>>>> name="HelloTestService"
>>>>>>>> targetNamespace="http://swebservice.samples.servicemix.apache.org/";>
>>>>>>>> - <wsdl:types>
>>>>>>>> - <xsd:schema attributeFormDefault="unqualified"
>>>>>>>> elementFormDefault="unqualified"
>>>>>>>> targetNamespace="http://swebservice.samples.servicemix.apache.org/";
>>>>>>>> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>>>>>>>> xmlns:tns="http://swebservice.samples.servicemix.apache.org/";
>>>>>>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>>>>>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>>>>>>>>   <xsd:element name="sayHello" type="tns:sayHello" /> 
>>>>>>>> - <xsd:complexType name="sayHello">
>>>>>>>> - <xsd:sequence>
>>>>>>>>   <xsd:element minOccurs="0" name="arg0" type="xsd:string" /> 
>>>>>>>>   </xsd:sequence>
>>>>>>>>   </xsd:complexType>
>>>>>>>>   <xsd:element name="sayHelloResponse" type="tns:sayHelloResponse"
>>>>>>>> /> 
>>>>>>>> - <xsd:complexType name="sayHelloResponse">
>>>>>>>> - <xsd:sequence>
>>>>>>>>   <xsd:element minOccurs="0" name="return" type="xsd:string" /> 
>>>>>>>>   </xsd:sequence>
>>>>>>>>   </xsd:complexType>
>>>>>>>>   </xsd:schema>
>>>>>>>>   </wsdl:types>
>>>>>>>> - <wsdl:message name="sayHello">
>>>>>>>>   <wsdl:part element="tns:sayHello" name="parameters" /> 
>>>>>>>>   </wsdl:message>
>>>>>>>> - <wsdl:message name="sayHelloResponse">
>>>>>>>>   <wsdl:part element="tns:sayHelloResponse" name="parameters" /> 
>>>>>>>>   </wsdl:message>
>>>>>>>> - <wsdl:portType name="HelloTest">
>>>>>>>> - <wsdl:operation name="sayHello">
>>>>>>>>   <wsdl:input message="tns:sayHello" name="sayHello" /> 
>>>>>>>>   <wsdl:output message="tns:sayHelloResponse"
>>>>>>>> name="sayHelloResponse"
>>>>>>>> /> 
>>>>>>>>   </wsdl:operation>
>>>>>>>>   </wsdl:portType>
>>>>>>>> - <wsdl:binding name="HelloTestServiceSoapBinding"
>>>>>>>> type="tns:HelloTest">
>>>>>>>>   <soap:binding style="document"
>>>>>>>> transport="http://schemas.xmlsoap.org/soap/http"; /> 
>>>>>>>> - <wsdl:operation name="sayHello">
>>>>>>>>   <soap:operation soapAction="" style="document" /> 
>>>>>>>> - <wsdl:input name="sayHello">
>>>>>>>>   <soap:body use="literal" /> 
>>>>>>>>   </wsdl:input>
>>>>>>>> - <wsdl:output name="sayHelloResponse">
>>>>>>>>   <soap:body use="literal" /> 
>>>>>>>>   </wsdl:output>
>>>>>>>>   </wsdl:operation>
>>>>>>>>   </wsdl:binding>
>>>>>>>> - <wsdl:service name="HelloTestService">
>>>>>>>> - <wsdl:port binding="tns:HelloTestServiceSoapBinding"
>>>>>>>> name="HelloTestPort">
>>>>>>>>   <soap:address location="http://localhost:9090/hello/"; /> 
>>>>>>>>   </wsdl:port>
>>>>>>>>   </wsdl:service>
>>>>>>>>   </wsdl:definitions>
>>>>>>>>
>>>>>>>>
>>>>>>>> My requirement is to invoke this deployed web service from Axis
>>>>>>>> 1.4.So
>>>>>>>> I
>>>>>>>> have created Axis client stubs by mentioning the above url and got
>>>>>>>> the
>>>>>>>> following classes.I used following command to get the client stubs.
>>>>>>>>
>>>>>>>> java org.apache.axis.wsdl.WSDL2Java
>>>>>>>> http://localhost:9090/hello/?wsdl
>>>>>>>> -p
>>>>>>>> esri.aws.v2006 -v
>>>>>>>>
>>>>>>>> Following classes got generated :
>>>>>>>>
>>>>>>>> HelloTest.java
>>>>>>>> HelloTestService.java
>>>>>>>> HelloTestServiceLocator.java
>>>>>>>> HelloTestServiceSoapBindingStub.java
>>>>>>>>
>>>>>>>> I created a client test class to access the java method sayHello()
>>>>>>>> which
>>>>>>>> is
>>>>>>>> defined in Webservice deployed in Sevicemix.
>>>>>>>>
>>>>>>>> public class SuccessHelloClient {
>>>>>>>>        
>>>>>>>> public static void main(String args[]){
>>>>>>>>        System.out.println("inside main of client test");
>>>>>>>>        HelloTestService hts = new HelloTestServiceLocator();
>>>>>>>>        //HelloTest ht = hts.getHelloTestPort();
>>>>>>>>        try{
>>>>>>>>                String output = hts.getHelloTestPort().sayHello("sree");
>>>>>>>>                System.out.println("output---"+output);
>>>>>>>>        }catch(Exception e){
>>>>>>>>                System.out.println("inside exception---"+e);
>>>>>>>>        }
>>>>>>>>        
>>>>>>>> }
>>>>>>>>
>>>>>>>> I got the following error message..
>>>>>>>>
>>>>>>>>
>>>>>>>> Could not find route for exchange: InOut[
>>>>>>>>   id: ID:10.66.177.114-11adcc83874-2:0
>>>>>>>>   status: Active
>>>>>>>>   role: provider
>>>>>>>>   interface:
>>>>>>>> {http://swebservice.samples.servicemix.apache.org/}HelloTest
>>>>>>>>   service:
>>>>>>>> {http://swebservice.samples.servicemix.apache.org/}HelloTestService
>>>>>>>>   operation:
>>>>>>>> {http://swebservice.samples.servicemix.apache.org/}sayHello
>>>>>>>>   in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>>>>>>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper";
>>>>>>>> xmlns:msg="http://swebservice.samples.servicemix.apache.org/";
>>>>>>>> name="sayHello" type="msg:sayHello"
>>>>>>>> version="1.0"><jbi:part><sayHello
>>>>>>>> xmlns="http://swebservice.samples.servicemix.apache.org/";><arg0
>>>>>>>> xmlns="">sree</arg0></sayHello></jbi:part></jbi:message>
>>>>>>>> ] for service:
>>>>>>>> {http://swebservice.samples.servicemix.apache.org/}HelloTestService
>>>>>>>> and
>>>>>>>> interface:
>>>>>>>> {http://swebservice.samples.servicemix.apache.org/}HelloTest
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Please help me in resolving this as this is on high priority....
>>>>>>>>
>>>>>>>> I would like to know whether we can invoke Fuse webservice from
>>>>>>>> AXIS?If
>>>>>>>> so
>>>>>>>> what are the steps required to do it?If not what do I need to do to
>>>>>>>> invoke
>>>>>>>> Web service deployed in Service mix from stand alone Java Program?
>>>>>>>>
>>>>>>>> Jayasree.B
>>>>>>>>
>>>>>>>>
>>>>>>>>   
>>>>>>>>       
>>>>>>>>           
>>>>>>>>               
>>>>>>>     
>>>>>>>         
>>>>>>>             
>>>>>>   
>>>>>>       
>>>>>>           
>>>>>     
>>>>>         
>>>>   
>>>>       
>>>
>>>     
>>
>>   
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Urgent-%3A%3Ajbi.messaging.MessagingException%3ACould-not-find-route-for-exchange%3AInout-tp18208994p18210490.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to