camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <willem.ji...@gmail.com>
Subject Re: Routing of SOAP messages from a web service consumer to a web service provider
Date Wed, 09 Jun 2010 10:11:00 GMT
Freeman had already answered this question.
You need to make sure the camel-cxf jar is in your class path.


Willem

StonePeng wrote:
> what is the answer about this question. i want to ask the same question, help
> 
> 
> 
> Freeman Fang wrote:
>> Hi Mirko,
>>
>> The error comes from missing camel-cxf component on the classpath, add the
>> dependency  into your pom should fix it.
>> Best Regards
>>
>> Freeman
>>
>> On 1/28/08, mhi <mirko.hilty@credit-suisse.com> wrote:
>>>
>>> Dear all,
>>>
>>> Can you please help me implementing the following simple use case:
>>> A web service consumer sends a SOAP message in order to invoke an
>>> operation
>>> of a web service provider. The message is not sent directly to the
>>> provider:
>>> it is sent to a (Camel) router which then forwards the message to the
>>> provider. The provider sends his response message back to the router and
>>> the
>>> router forwards it to the consumer. For the consumer, it is transparent
>>> that
>>> there is a router in the middle. The goal is to route the consumer's
>>> messages depending on SOAP header information.
>>>
>>> There is another requirement: it should not be necessary to restart the
>>> router after a change of the routing information. This is only possible
>>> if
>>> the routes are defined via the spring configuration (camel-context.xml),
>>> right?
>>>
>>>
>>> If I use the following camel-context.xml ...
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!--
>>>    Licensed to the Apache Software Foundation (ASF) under one or more
>>>    contributor license agreements.  See the NOTICE file distributed with
>>>    this work for additional information regarding copyright ownership.
>>>    The ASF licenses this file to You under the Apache License, Version
>>> 2.0
>>>    (the "License"); you may not use this file except in compliance with
>>>    the License.  You may obtain a copy of the License at
>>>
>>>    http://www.apache.org/licenses/LICENSE-2.0
>>>
>>>    Unless required by applicable law or agreed to in writing, software
>>>    distributed under the License is distributed on an "AS IS" BASIS,
>>>    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>>> implied.
>>>    See the License for the specific language governing permissions and
>>>    limitations under the License.
>>> -->
>>>
>>> <!--
>>>
>>> The default Application Context used by the org.apache.camel.spring.Main
>>> if there
>>> is no /META-INF/sprint.xml
>>>
>>> -->
>>>
>>> <beans xmlns="http://www.springframework.org/schema/beans"
>>>       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>       xmlns:cxf="http://activemq.apache.org/camel/schema/cxfEndpoint"
>>>
>>>       xsi:schemaLocation="
>>>       http://www.springframework.org/schema/beans
>>> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
>>>       http://activemq.apache.org/camel/schema/cxfEndpoint
>>> http://activemq.apache.org/camel/schema/cxf/cxfEndpoint.xsd
>>>       http://activemq.apache.org/camel/schema/spring
>>> http://activemq.apache.org/camel/schema/spring/camel-spring.xsd
>>>           http://cxf.apache.org/jaxws
>>> http://cxf.apache.org/schemas/jaxws.xsd
>>>        ">
>>>
>>>   <!--bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl"/-->
>>>
>>>   <cxf:cxfEndpoint id="routerEndpoint"
>>> address="http://localhost:9003/CamelContext/RouterPort"
>>>                serviceClass="org.apache.hello_world_soap_http.GreeterImpl
>>> "/>
>>>
>>>   <cxf:cxfEndpoint id="serviceEndpoint"
>>> address="http://localhost:9000/SoapContext/SoapPort"
>>>                wsdlURL="testutils/hello_world.wsdl"
>>>                serviceClass="org.apache.hello_world_soap_http.Greeter"
>>>                endpointName="s:SoapPort"
>>>                serviceName="s:SOAPService"
>>>        xmlns:s="http://apache.org/hello_world_soap_http" />
>>>
>>>   <camelContext id="camel"
>>> xmlns="http://activemq.apache.org/camel/schema/spring">
>>>    <route>
>>>      <from uri="cxf:routerEndpoint" />
>>>      <to uri="cxf:serviceEndpoint" />
>>>    </route>
>>>   </camelContext>
>>>
>>>
>>> </beans>
>>>
>>>
>>> ... I get the following output when running
>>> "C:\iona\fuse-mediation-router-1.3.0.0\examples\camel-example-spring
>>>> mvn:camel
>>> run":
>>> ...
>>> [pache.camel.spring.Main.main()] Main                           ERROR
>>> Failed:
>>> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
>>> Line 40 in XML document from file
>>> [C:\iona\fuse-
>>> mediation-router-1.3.0.0\examples\camel-example-spring\target\classes\META-INF\spring\camel-context
>>> .xml] is invalid; nested exception is org.xml.sax.SAXParseException:
>>> cvc-complex-type.2.4.c: The matching wildcard is strict, but no
>>> declaration
>>> can
>>> be found for element 'cxf:cxfEndpoint'.
>>>
>>>
>>> Thank you very much.
>>>
>>> Best regards,
>>> Mirko
>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Routing-of-SOAP-messages-from-a-web-service-consumer-to-a-web-service-provider-tp15136171s22882p15136171.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
> 


Mime
View raw message