英文:
ICO0005E: A communication error occurred during sending or receiving the IMS message. java.net.SocketException: Connection reset
问题
我使用以下配置连接到IMS ST服务器,它能正常工作:
<connectionFactory id="ims" jndiName="eis/IMSSyncNonPersistent">
<properties.imsico91025a dataStoreName="st.datastoreName" hostName="st.hostname" portNumber="st.portnumber"/>
</connectionFactory>
但是,当我在ET中使用相同的配置时,会出现上述错误。为了解决这个问题,我查阅了IBM文档关于清除策略的错误,然后使用了以下配置:
<authData id="et.authalias" user="et.username" password="et.password"/>
<connectionFactory id="ims" authDataAlias="et.authalias" jndiName="eis/IMSSyncNonPersistent" purgePolicy="EntirePool" maxPoolSize="50">
<properties.imsico91025a dataStoreName="et.datastore" hostName="et.hostname" portNumber="et.portnumber"/>
</connectionFactory>
但是这并没有起作用。请帮忙解决。谢谢!
英文:
I'm connecting to IMS ST server by using the below config and it works fine:-
<connectionFactory id="ims" jndiName="eis/IMSSyncNonPersistent">
<properties.imsico91025a dataStoreName="st.datastoreName" hostName="st.hostname" portNumber="st.portnumber"/>
</connectionFactory>
but when I use the same config in ET it gives the above mentioned error. To solve it I used the below config after looking up the error on IBM documentation about purge policy:-
ICO0005E SocketException is thrown when:
A Java client attempts to use a connection for which the underlying socket is no longer connected to IMS Connect. The socket connection might be lost if IMS Connect is recycled, but the application server is not. After IMS Connect is restarted, the connections that were formerly successfully connected to IMS Connect are still in the connection pool. As clients attempt to reuse each of these connections, the exception java.net.SocketException is thrown, and the connection object is removed from the connection pool.
You can change this behavior in WebSphere Application Server by setting the purge policy of the connection factory that is used by the Java application to the entire pool.
<authData id="et.authalias" user="et.username" password="et.password"/>
<connectionFactory id="ims" authDataAlias="et.authalias" jndiName="eis/IMSSyncNonPersistent" purgePolicy="EntirePool" maxPoolSize="50">
<properties.imsico91025a dataStoreName="et.datastore" hostName="et.hostname" portNumber="et.portnumber"/>
</connectionFactory>
Didn't work. Please help me. Thanks!
答案1
得分: 1
连接被重置,因为IMS端点使用了SSL加密。我配置了SSL密钥存储和信任存储,以及密码,并在请求中传递了凭据,然后它开始工作。
英文:
Connection was reset because the IMS endpoint was SSL encrypted.I configured the SSL key store and trust store along with passwords and passed the credentials in the request and it started working.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论