0

我对 Web 服务非常陌生,并且一直在尝试实现 Soap Faults。我使用 Apache Axis2 以下列方式生成 web 服务。

public interface XYZ{
public String myMethod(User[] user)
}

在这里,我创建了一个带有一些变量的 User 类,以便我可以在 .Net 环境中生成 User 对象来传递对象的 User[]。

Public class Webservice implements XYZ
{
Public String myMethod(User[] user){
//My implementation
}
}

现在,我使用 Eclipse 创建了一个动态项目,并在 Axis2 插件的帮助下为生成 wsdl 文件的“Webservice”类创建了 Web 服务。我将 webcontent 部署在 Tomcat 文件夹中,并且能够在 .Net 环境中访问 WSDL 文件。我能够将对象数组 (User[]) 从 .Net 传递到 Java 并能够完成我的任务。现在,我需要在 Java 中实现 Soap Faults,但我不确定如何实现。

谁能帮我举个例子或教程?

4

3 回答 3

1

你最好的选择是谷歌搜索“jax-ws faults”之类的东西。例如:

http://www.ibm.com/developerworks/webservices/library/ws-jaxws-faults/index.html

您还可以实现错误处理程序,如此处“在 JAX-WS Web 服务中使用处理程序”中所述:

http://axis.apache.org/axis2/java/core/docs/jaxws-guide.html#BottomUpService

于 2012-03-15T15:22:22.743 回答
1

当您在实现操作的方法中抛出异常时,大多数框架都会触发 SOAP 错误。但是,这不会让您对 SOAP 错误内容有太多控制。

有关Axis 的一些详细信息,请参见此处

于 2012-03-15T15:26:14.960 回答
1

通常,您不需要任何特定的编码来实现 SOAP 错误。只要方法抛出任何异常(myMethod在您的示例中),axis 将在结果响应中自动生成 SOAPFault 元素。异常实际上被包装到AxisFault异常中并发送给客户端。

见这里 a i

于 2012-03-15T15:32:15.330 回答