我对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”类创建了webservice。我在Tomcat文件夹中部署了webcontent,并能够访问.Net环境中的WSDL文件。我能够将.Net的对象数组(User [])传递给Java并能够完成我的任务。现在,我需要在Java中实现Soap Faults,我不确定如何实现。
任何人都可以帮我提供示例或教程吗?
答案 0 :(得分:1)
最好的办法是谷歌提供类似“jax-ws fault”的内容。例如:
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
答案 1 :(得分:1)
当您在实现操作的方法中抛出异常时,大多数框架都会触发SOAP错误。但这并不能让你对SOAP故障内容有太多控制。
有关Axis的详细信息,请参阅here
答案 2 :(得分:1)
通常,您不需要任何特定的编码来实现SOAP错误。只要方法抛出任何异常(在您的示例中为myMethod
),轴将自动生成SOAPFault元素。响应。该异常实际上包含在AxisFault
异常中并发送给客户端。
点击此处i。