带有 zLinux 的 WebSphere MQ
我们有一个现有的 J2EE 应用程序,它使用 WebSphere MQ 从 IMS 检索数据。 J2EE 应用程序将 IMS 事务名称发送到 MQ,MQ 检索 IMS 数据。然后解析返回的数据以进行进一步处理。
最近我们将应用程序迁移到WebSphere 7。该应用程序在Windows 上运行良好。然而,当我们将应用程序移植到 zLinux(System z 上的 Linux)机器时,我们能够与 IMS 通信,并且数据从 IMS 返回到 J2EE 应用程序。然而,解析过程会引发 ArrayIndexOutofBoundsException。
两种环境中的输入都是相同的,并且操作代码相同(相同的 java 构建),因此在行为中观察到显着差异。这与 zLinux 环境不接受 CharacterCodeSet 有关吗?我们在 J2EE 应用程序中使用硬编码的 CCSID 值。
难道zLinux环境不支持现有的CCSID,需要不同的CCSID吗?
We have an existing J2EE application that uses WebSphere MQ to retrieve data from IMS.
The J2EE application sends the IMS transaction name to MQ, which retrieves IMS data. The returned data is then parsed for further processing.
Recently we migrated the application to WebSphere 7. The application worked fine on a windows box. However, when we ported the application to a zLinux (Linux on System z) box - we were able to talk to IMS and data was getting returned from IMS to J2EE application. The parsing process however raises an ArrayIndexOutofBoundsException.
The inputs are the same in both environments and with the operational code being the same(same java build) there is a significant difference observed in the behaviour. Is this anything to do with CharacterCodeSet not being accepted by zLinux environment ? We use a hard-coded value for CCSID from within the J2EE application.
Is it that zLinux environment does not support the existing CCSID requires a different CCSID?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
顺便说一句,上述问题的答案在于 BIG ENDIAN / LITTLE ENDIAN 问题。与 AIX/Windows 系统相比,Linux 是小尾数法,存储字节信息的方式不同。这导致解析失败 - 即,当格式不同时,成功解析从 MQ 返回的消息的代码无法在 Linux 中解析它。
Incidentally the answer to the above question lies in the BIG ENDIAN / LITTLE ENDIAN problem. Linux being little endian stores byte information differently compared to AIX / windows boxes. This was causing a parsing failure - i.e. the piece of code that was parsing the message returned from MQ successfully was not able to parse it in Linux when the format is different.