ICO0005E: A communication error occurred during sending or receiving the IMS message. java.net.SocketException: Connection reset

huangapple go评论85阅读模式
英文:

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:-

 &lt;connectionFactory  id=&quot;ims&quot; jndiName=&quot;eis/IMSSyncNonPersistent&quot;&gt;
&lt;properties.imsico91025a dataStoreName=&quot;st.datastoreName&quot; hostName=&quot;st.hostname&quot; portNumber=&quot;st.portnumber&quot;/&gt;
  &lt;/connectionFactory&gt;

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.
 &lt;authData id=&quot;et.authalias&quot; user=&quot;et.username&quot; password=&quot;et.password&quot;/&gt;
  &lt;connectionFactory  id=&quot;ims&quot; authDataAlias=&quot;et.authalias&quot; jndiName=&quot;eis/IMSSyncNonPersistent&quot; purgePolicy=&quot;EntirePool&quot; maxPoolSize=&quot;50&quot;&gt;
    &lt;properties.imsico91025a dataStoreName=&quot;et.datastore&quot; hostName=&quot;et.hostname&quot; portNumber=&quot;et.portnumber&quot;/&gt;
  &lt;/connectionFactory&gt;

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.

huangapple
  • 本文由 发表于 2020年7月27日 18:22:54
  • 转载请务必保留本文链接:https://go.coder-hub.com/63113323.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定