0

我创建了一个 SOAP Java Web 服务和一个 Java WebService 客户端来调用 Web 服务。WebService 的参数是 String 和 Double。当我使用带有 String 和 Double 参数的 java WebService 客户端调用 Web 服务时,我从 Web 服务中获得了所需的响应。但是当我从 .Net Web Service Client 使用 String 值和 1.0 值调用相同的 Web Service 时,

ordConf[0].slNo = "1234"; <br/>
ordConf[0].qty = (Double)1.0; <br/><br/>

此 WebService 无法理解 Double 值并为 double 值抛出 NullPointerException。

如何确保将 Double 值从 .Net WebService 客户端传递到 Java WebService。我的 wsdl complexType 片段是

xsd:element minOccurs="0" name="slno" nillable="true" type="xsd:string"  
xsd:element minOccurs="0" name="qty" nillable="true" type="xsd:double" 

这是客户端代码片段。

WebReference.InterWareHouseService IwConf = new WebReference.InterWareHouseService();

WebReference.IwOutboundOrder[] ordConf;
WebReference.Response[] ordRespConf;

    ordConf = new WebReference.IwOutboundOrder[1];<br/><br/>

    ordConf[0] = new WebReference.IwOutboundOrder();<br/>
    ordConf[0].custOrderNo = "13337097";<br/>
    ordConf[0].itemNo = "DS-SFP-FC8G-SW";<br/>
    ordConf[0].slNo = "1234";<br/>
    ordConf[0].qty = 1.0;<br/>
    ordConf[0].weight = 0.5;<br/>
    ordRespConf = IwConf.confirmShipment(ordConf);<br/>
4

1 回答 1

0

尝试在 Java 代码中使用值类型double而不是引用类型。Double

于 2012-06-27T19:39:07.710 回答