我最近为WebSphere应用程序实现了LTPA(LDAP)身份验证。我在尝试对另一个域上的端点进行Web服务调用时看到以下错误:
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>java.io.IOException: Unable to deserialize the Subjects in this Context, cause: SecurityName is null</faultstring>
</soapenv:Fault>
错误是间歇性的,到目前为止我还没有能够可靠地重现它。 在线记录了类似的问题,但这些问题似乎提供了更多关于错误的信息 - 我一直无法找到关于此特定错误的任何信息。
有人可以在这里提出问题吗?
答案 0 :(得分:0)
这里的问题实际上很简单。错误消息underscore
表示WebSphere正在尝试反序列化以前保存的安全上下文。该过程失败,因为使用LTPA令牌进行身份验证需要Unable to deserialize the Subjects in this Context, cause: SecurityName is null
等参数。此错误消息也应记录在SystemOut.log文件中,通常间隔为1或2分钟。
正确解决错误需要有关服务器环境的更多信息。假设它是WAS-ND设置,您可以关闭节点并使用SecurityName
命令手动同步配置。这应该可以解决问题。