<?xml version="1.0" encoding="UTF-8" standalone="no"?><!--
		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.
	--><beans xmlns="http://www.springframework.org/schema/beans" xmlns:camel="http://camel.apache.org/schema/spring" xmlns:cxf="http://camel.apache.org/schema/cxf" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd        http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd        http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd     ">


           <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>


     <cxf:cxfEndpoint xmlns:person="http://camel.apache.org/wsdl-first" 
         address="http://localhost:${CXFTestSupport.port2}/CxfWsdlFirstPayloadModeTest/PersonService/" 
         endpointName="person:soap" id="routerEndpoint" serviceClass="org.apache.camel.wsdl_first.Person" 
         serviceName="person:PersonService" wsdlURL="person.wsdl">
		<cxf:properties>
			<entry key="schema-validation-enabled" value="true"/>
		</cxf:properties>
		<cxf:handlers>
          <ref bean="fromEndpointJaxwsHandler"/> 
        </cxf:handlers>
		<cxf:inInterceptors>
      	<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
      </cxf:inInterceptors>
		<cxf:outInterceptors>
      	<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
      </cxf:outInterceptors>
	</cxf:cxfEndpoint>
	
	<cxf:cxfEndpoint xmlns:person="http://camel.apache.org/wsdl-first" address="http://localhost:${CXFTestSupport.port1}/CxfWsdlFirstPayloadModeTest/PersonService/" 
        endpointName="person:soap" id="serviceEndpoint" serviceClass="org.apache.camel.wsdl_first.Person" serviceName="person:PersonService">
		<cxf:handlers>
          <ref bean="toEndpointJaxwsHandler"/> 
        </cxf:handlers>
		<cxf:inInterceptors>
      	<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
      </cxf:inInterceptors>
		<cxf:outInterceptors>
      	<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
      </cxf:outInterceptors>
	</cxf:cxfEndpoint>

    <!-- setup our error handler as the deal letter channel -->
    <bean class="org.apache.camel.builder.NoErrorHandlerBuilder" id="noErrorHandler"/>
    
	<camelContext xmlns="http://camel.apache.org/schema/spring" errorHandlerRef="noErrorHandler" id="camel">
    <route id="route22">
        <from uri="cxf:bean:routerEndpoint?dataFormat=PAYLOAD"/>
        <to uri="cxf:bean:serviceEndpoint?dataFormat=PAYLOAD"/>
    </route>
</camelContext>
	<bean class="org.apache.camel.wsdl_first.JaxwsTestHandler" id="fromEndpointJaxwsHandler"/>
	<bean class="org.apache.camel.wsdl_first.JaxwsTestHandler" id="toEndpointJaxwsHandler"/>
</beans>