cxfwebservice往soapenvHeader增加自定义

编程

想要如下的结果

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sis="http://sis.soa.csg.cn/">
  <soapenv:Header>
<sis:security>
<sis:username>12A3E9692E5322ADA0ED44C86EC14B6B85E506CBEA819E9977C99B2742B9E64440</sis:username>
<sis:password>83B33492154FBF722C187945C081ED2421D50B70DB03622154AAB93F7FF8588B09</sis:password>
</sis:security>
</soapenv:Header>

处理方式:只需要在方法里增加header=true即可,不需要拦截

SyncOrgResponse syncOrg( 
              @WebParam(targetNamespace = "http://sis.soa.csg.cn/", name = "security",header=true)Headertype security ,
              @WebParam(targetNamespace = "http://sis.soa.csg.cn/" ,name = "syncOrgRequest")
                  SyncOrgRequest syncbizorgrequest)
 

统一命名空间处理方式:

-<jaxws:properties>


-<entry key="soap.env.ns.map">


-<map>

<entry key="sis" value="http://sis.soa.csg.cn/"/>

</map>

</entry>

<!--disable.outputstream.optimization 如果返回要sis前辍,不要将此注释-->

<entry key="disable.outputstream.optimization" value="true"/>
</jaxws:properties>

工具:

1、将xsd生成javabean

  xjc SyncOrg.xsd -d D:aa -p 包名

2、将java类生成xsd  schemagen aa.java

jdk 自带

返回报文:

以上是 cxfwebservice往soapenvHeader增加自定义 的全部内容, 来源链接: utcz.com/z/516926.html

回到顶部