You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by cantalou89 <ca...@gmail.com> on 2012/10/11 04:33:01 UTC
回复: Re: cxf 2.6.2 how to ignore namespace
thanks for you reply ,
after readed the document,i add
<bean id="transformFeature" class="org.apache.cxf.feature.StaxTransformFeature">
<property name="inTransformElements">
<map>
<entry key="http://www.chinamobile.com/vgop/serviceorder/v1_0" value="http://main.ehealth.funo.com/" />
</map>
</property>
</bean>
in the spring beans.xml, but when look the log , the "http://www.chinamobile.com/vgop/serviceorder/v1_0" was not replaced by "http://main.ehealth.funo.com/",
or org.apache.cxf.feature.StaxTransformFeature works after the log interceptor? or what can do to make StaxTransformFeature work with the public endpoint?
cantalou89
发件人: Freeman Fang
发送时间: 2012-10-11 10:14
收件人: users; cantalou89
主题: Re: cxf 2.6.2 how to ignore namespace
Hi,
The namespace mismatch between client and server cause this issue, I don't think you can really "ignore" namespace, however, cxf transform feature can help you to overcome this kind of issue, take a look at [1] to get more details
[1]http://cxf.apache.org/docs/transformationfeature.html
-------------
Freeman Fang
Red Hat, Inc.
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042
On 2012-10-11, at 上午10:10, cantalou89 wrote:
dear all:
i want to ignore soap namespace,
i receive a message from axis2 client :
<soapenv:Body>
<ns2:subscribeServCfm
xmlns:ns2="http://www.chinamobile.com/vgop/serviceorder/v1_0">
<ns2:subscribeServCfmReq>
<ns1:msgTransactionID xmlns:ns1="http://www.chinamobile.com/vgop/serviceorder/v1_0/common">555</ns1:msgTransactionID>
<ns1:oprTime xmlns:ns1="http://www.chinamobile.com/vgop/serviceorder/v1_0/common">20121011094323</ns1:oprTime>
<ns1:cfmResult xmlns:ns1="http://www.chinamobile.com/vgop/serviceorder/v1_0/common">00</ns1:cfmResult>
</ns2:subscribeServCfmReq>
</ns2:subscribeServCfm>
</soapenv:Body>
then cxf thrwo exception
Interceptor for {http://main.ehealth.funo.com/}UserOrderServer#{http://mai
n.ehealth.funo.com/}subscribeServCfm has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Unexpected wrapper element {http://www.chinamo
bile.com/vgop/serviceorder/v1_0}subscribeServCfm found. Expected {http://main.
ehealth.funo.com/}subscribeServCfm.
when i use cxf client, it works fine ,the message is that :
<ns3:subscribeServCfm
xmlns:ns2="http://www.chinamobile.com/vgop/serviceorder/v1_0"
xmlns:ns3="http://main.ehealth.funo.com/">
<subscribeServCfmReq>
<cfmResult>00</cfmResult>
<msgTransactionID>qq</msgTransactionID>
<oprTime>123</oprTime>
</subscribeServCfmReq>
</ns3:subscribeServCfm>
so i want to ignore the namespace , i have google the answer , ti try @EndpointProperty(key = "soap.no.validate.parts", value = "true") but it not work,
how could do to solve the problem?
cantalou89