2012-04-20 4 views
0

CXF 안정적인 웹 서비스를 apache camel과 통합하려고합니다. 요구 사항은 누군가가 내 웹 서비스에 부딪 힐 때 요청 매개 변수를 가져 와서 요청 매개 변수를 사용하여 결과를 검색하기 위해 Google 또는 일부 서비스 공급자에 연결한다는 것입니다. 내 webservice가 foo : bar라고 말하면이 foo : bar가 검색된 후 google에 연결하려고합니다.CXF 기반 RESTful 웹 서비스와 Apache Camel 통합 : 조언이 필요합니다.

 <camelContext> 
      <route> 
      <to uri:"cxf://bean://foo:bar/> 
      <from uri="http://www.google.com"/> 
      </route> 
      </camelContext> 

    is this understanding correct.. 
    i am pasting a section of my config xml for review .. 




<jaxrs:server id="restContainer" address="/" staticSubresourceResolution="true"> 
<jaxrs:serviceBeans> 
<ref bean="FooBar" /> 
</jaxrs:serviceBeans> 
<jaxrs:providers> 
<bean class="org.apache.cxf.jaxrs.provider.JSONProvider"> 
<property name="dropRootElement" value="true" /> 
<property name="supportUnwrapped" value="true" /> 
</jaxrs:providers> 
<camelcxf:rsServer id="rsServer" 
// this is the rest uri which is mapped to my resource class address="http://localhost:port/MyApplication/rest/foobar serviceClass="com.camel.example.FooBar" /> 
<camel:camelContext id="camelContext-1"> 
<camel:route> 
<camel:from uri="cxfrs:bean:rsServer" /> 
<camel:to uri="http://www.google.com" /> 
</camel:route> 
</camel:camelContext> 

은 또한 떨어져 내가 예외를 다음 얻고이에서 난 내 웹 서비스를 실행합니다 : java.lang.ClassNotFoundException가 : org.eclipse.jetty.util.component 이 내 낙타 경로가 그런 일이 될 것이다 의미 .Container $ Listener at org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1666) at org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1511) at java.lang. ClassLoader.loadClassInternal (알 수없는 소스) ... 58 more 배포 용으로 Tomcat을 사용하는 이유는 무엇인지 이해하지 못합니다.

+0

앞으로 JIRA를 기록 했으므로 앞으로 Apache Camel 배포판의 예제를 제공 할 예정입니다. https://issues.apache.org/jira/browse/CAMEL-5203 –

+0

Thanks Claus ... 이제 작동합니다 .. 나는 net (version 8.0)에서 찾을 수있는 모든 부두 항아리를 추가했습니다. – Sikorski

+0

이제는 제대로 작동했는지에 대한 대답으로 자신의 질문에 표시 할 수 있습니까? –

답변

0

문제를 해결하고 내 부두에 모든 부두 항아리를 추가했습니다. jetty version 8.0