我有一个要求,我使用 Eclipse 中的 Axis2 从 Java 调用基于 SOAP 的 Web 服务。Web 服务代码用 C# 编写,带有BasicHttpBinding
.
但是当我从客户端存根调用该方法时,我得到了这个错误。
org.apache.axis2.AxisFault:对象引用未设置为对象的实例。
谁能帮我弄清楚这个?这是在服务端还是在客户端?以前我得到“内部服务器错误”,然后他们不得不添加一些东西,以便我可以在日志中看到这个错误。
我有一个要求,我使用 Eclipse 中的 Axis2 从 Java 调用基于 SOAP 的 Web 服务。Web 服务代码用 C# 编写,带有BasicHttpBinding
.
但是当我从客户端存根调用该方法时,我得到了这个错误。
org.apache.axis2.AxisFault:对象引用未设置为对象的实例。
谁能帮我弄清楚这个?这是在服务端还是在客户端?以前我得到“内部服务器错误”,然后他们不得不添加一些东西,以便我可以在日志中看到这个错误。
该消息来自 C# Web 服务端(“对象引用未设置为对象的实例”基本上是 NullPointerException 的 Java 等价物),但这可能是因为您从 Java 客户端发送的内容,或者您没有发送.
该错误通常意味着您没有发送必需的参数,并且 Web 服务没有正确地验证它的输入,并且在导致 NullReferenceException 时缺少参数。
但是只有一种方法可以确定,那就是对通话进行故障排除。
我建议您使用SoapUI之类的东西来创建消息并将其发送到服务。在 SoapUI 中成功调用后,从 Java 客户端使用相同的参数进行调用,看看会发生什么。当您这样做时,使用代理进行日志记录对于查看发送的消息是否实际上是预期的消息非常有用。