1.普通的参数服务端接收不到,为null解决办法:
@WebParam(name="strUserid",targetNamespace="http://certSynchronous.controller.monitorWeb.business.site.bjca.org.cn/") String strUserid
参数前边需要加上@WebParam和targetNamespace两个注解。
2服务端接收对象,为null解决办法:
这种问题实际是由于报文格式不对导致的,如下报文,用info对象接收没有问题
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:con="http://controller.demo.com/">
<soapenv:Header/>
<soapenv:Body>
<con:testBjca>
<strUserid>7654322</strUserid><strGuid>?</strGuid>
<info>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:con="http://controller.demo.com/">
<soapenv:Header/>
<soapenv:Body>
<con:testBjca>
<strUserid>7654322</strUserid><strGuid>?</strGuid>
<info>
<encCert>4444444444</encCert>
<encCertSN>FFFFFFFFFF</encCertSN>
<envsn>111</envsn>
<errorCode>1</errorCode>
<signCert>REWRW</signCert>
<signCertSN>ERWEREWW</signCertSN>
<userUniqueID>oiuytrewqjhgfdsa</userUniqueID>
</info>
</con:testBjca>
</soapenv:Body>
</soapenv:Envelope>
<encCertSN>FFFFFFFFFF</encCertSN>
<envsn>111</envsn>
<errorCode>1</errorCode>
<signCert>REWRW</signCert>
<signCertSN>ERWEREWW</signCertSN>
<userUniqueID>oiuytrewqjhgfdsa</userUniqueID>
</info>
</con:testBjca>
</soapenv:Body>
</soapenv:Envelope>
完整例子如https://download.csdn.net/download/yuxiaoshuangshuang/10462154