我正在使用soap spring ws创建一个soap Webservice,并且我已经成功创建了。现在我正在该soap
service中执行错误实现,并且我能够使用我创建的如下类进行操作
public class ServiceSoapFaultMappingExceptionResolver extends SoapFaultMappingExceptionResolver
在下面的覆盖函数中,
@Override
protected void customizeFault(Object endpoint, Exception ex, SoapFault fault) {
//code for adding fault details
Result result = fault.addFaultDetail().getResult();
// marshal
try {
JAXBContext.newInstance(ExceptionListType.class).createMarshaller().marshal(exceptionList, result);
}
我创建了定制的肥皂故障对象并返回了该对象。返回的自定义肥皂故障即将出现在detail标签内。所以我的错是这样的
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>INVALID NUMBER</faultstring>
<detail>
<ns5:exceptionListType xmlns:ns5="http://wellpoint.com/esb/header/v2">
<ns5:errorCount>1</ns5:errorCount>
<ns5:Exception>
<ns5:UUID> 889c-6f73671534af</ns5:UUID>
<ns5:timestamp>09/04/2015 05:47:40</ns5:timestamp>
<ns5:node>mynode</ns5:node>
<ns5:process>JAVA</ns5:process>
<ns5:component>Unknown Component</ns5:component>
<ns5:code>5009</ns5:code>
<ns5:severity>FATAL</ns5:severity>
<ns5:message>An unexpected server error occurred: INVALID NUMBER</ns5:message>
</ns5:Exception>
</ns5:exceptionListType>
</detail>
</soapenv:Fault>
现在我想做的是我有一个与上述错误相关的错误代码,它正在代码标签内。但是我需要将此错误代码放入此标签内
<faultcode>soapenv:Server</faultcode>
喜欢
<faultcode>5009</faultcode>
我有很多谷歌搜索,也没有运气。我知道,除了预定义的一组可用值之外,没有其他值不是一个好习惯,但是我的客户要求是这样。如果有人知道答案,请帮助我。非常感谢。
最后,我找到了解决问题的方法。在customFault方法中,我将代码如下所示。
SoapFaultDefinition soapFaultDefinition = new SoapFaultDefinition();
String ENVELOPE_NAMESPACE_URI = "http://schemas.xmlsoap.org/soap/envelope/";
QName FAULT_NAME = new QName(ENVELOPE_NAMESPACE_URI, "5999, "e");
// soapFaultDefinition.setFaultStringOrReason("--" + ex);
// soapFaultDefinition.setLocale(Locale.ENGLISH);
soapFaultDefinition.setFaultCode(FAULT_NAME);
super.setDefaultFault(soapFaultDefinition);
问题内容: 我正在使用Java开发基于Soap的Web服务。谁能让我知道如何认证使用Web服务的客户端? 谢谢。 问题答案: 最好但最复杂的可能是带有各种身份验证方法的WS- Security。但是它是最复杂的,并且对企业环境有利。它允许您创建端到端身份验证,并且有很多选项。您可以在简单情况下使用Web服务安全性UsernameToken配置文件 我不知道您使用什么库,但是这是一篇不错的文章,介绍
问题内容: 当我调用时,我获得了在应用程序上下文中定义的bean的实例。但是,当我再次调用(使用相同的名称)时,我又得到了相同的Bean实例。我了解在某些情况下(很多情况下)这是理想的选择,但是我如何告诉给我一个新的实例呢? Spring配置示例(通常…我省略了一些冗长的内容,但这应该可以理解): 示例Java: 当我运行此程序时,我得到如下信息: 请注意,这两个对象具有相同的OOID …因此它们
我使用此代码登录到外部系统: 我收到一种LoginResponse,但它没有价值。 LoginResponse类型仅包含: 我需要从标头访问UserAuth值,但这不包含在LoginResponse对象中。 SOAP 响应为: 如何访问标题信息,在本例中是UserAuth值? 我是否需要使用更低层次的东西并从soap响应中解析所需的值? 更新: 我认为我需要使用SAAJ使用自定义SOAP请求(类似
我应该创建一个与wss4j服务对话的soap客户端。。 预期的肥皂消息如下所示: 我有以下内容: 这个配置文件为: config有一个保存在Usb令牌中的证书引用,登录时会询问pin码: 服务接口具有: 但由此产生的soap是: 它还提供 InvalidSecurity处理时发现错误 因此,区别在于:; 必须理解="1",反对必须理解="true" SignatureMethod算法http://
在我的项目中添加了Android证书后,Codename One服务器开始出现问题,然后通过询问Codename One支持,他们告诉我这可能与Proguard有关,所以在通过设置不建议使用哪个选项?因此,在执行此操作后,代码名One server可以正常构建,但我希望保持Proguard启用,因为它是推荐的,但当我保持启用代码名One server时,会出现构建错误,错误日志如下:https:/
我曾尝试搜索如何制作 MMO,但总是找到相同的回复,这是不可能的或需要很多钱,但从未给出如何制作指南。 我想构建一些非常可扩展的东西,我目前关于如何构建 MMO 的想法如下: 组件: 登录服务器:客户端发送用户名 行动: 登录: 客户端发送用户名 < li >客户端在Position DB中检查他当前的位置和动作以及他附近的人(玩家和怪物),收到的数据还包括玩家的上次更新时间(装备或等级)。 <