Hi,
You should add
schemaValidationEnabled="true" for your cxf bc consumer endpoint
configuration, you need use smx-cxf-bc 2009.02 version which support
this flag
also you should configure your interceptors for cxf bc consumer
directly.
You shouldn't use jaxws:endpoint configuration for cxf bc consumer.
Freeman
On 2010-1-29, at 下午8:16, Kevtor wrote:
Hello,
I'm trying to make the wsdl-first example to validate requests against
schema. Everything builds and deploys without errors but the service
still
accepts requests which are invalid according to the schema. It looks
like my
jaxws:endpoint isn't matched to cxfbc:consumer because the defined
inInterceptor doesn't work either. I'm using servicemix version 3.3.1.
xbean.xml
for wsdl-first-cxfbc-su:
<beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
xmlns:person="http://servicemix.apache.org/samples/wsdl-first">
<cxfbc:consumer wsdl="classpath:person.wsdl"
targetService="person:PersonService"
targetInterface="person:Person"
busCfg="buscfg.xml" />
</beans>
<beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
xmlns:person="http://servicemix.apache.org/samples/wsdl-first">
<cxfbc:consumer wsdl="classpath:person.wsdl"
targetService="person:PersonService"
targetInterface="person:Person"
busCfg="buscfg.xml"
/>
</beans>
buscfg.xml:
<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://cxf.apache.org/core"
xmlns:soap="http://cxf.apache.org/bindings/soap"
xmlns:person="http://servicemix.apache.org/samples/wsdl-first"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://cxf.apache.org/bindings/soap
http://cxf.apache.org/schema/bindings/soap.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">
<jaxws:endpoint
name="{http://servicemix.apache.org/samples/wsdl-first}soap"
wsdlLocation="classpath:person.wsdl" createdFromAPI="true" >
<jaxws:inInterceptors>
<bean id="logInbound"
class="org.apache.cxf.interceptor.LoggingInInterceptor" />
</jaxws:inInterceptors>
<jaxws:properties>
<entry key="schema-validation-enabled" value="true" />
</jaxws:properties>
</jaxws:endpoint>
</beans>
I also added the following dependency to pom.xml in wsdl-first-cxfbc-
su:
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>2.1.4</version>
</dependency>
Thank you for your suggestions.
--
View this message in context:
http://old.nabble.com/Schema-validation-on-cxfbc%3Aconsumer-tp27371195p27371195.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com