首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QuickFixJ - quickfix.UnsupportedMessageType: null(Websphere)

QuickFixJ - quickfix.UnsupportedMessageType: null(Websphere)
EN

Stack Overflow用户
提问于 2016-06-28 14:22:18
回答 1查看 468关注 0票数 0

我用QuickFixJ开发了一些东西,遇到了一个奇怪的情况。我们有一个存根来模拟修复受体,在我的环境中本地工作,我可以发送/接收消息,我们使用自定义消息类型

示例消息来自我的env。FIX发起者与FIX_STUB(受体)之间的通信:

代码语言:javascript
复制
 16:49:58.475 [http-8080-4] INFO  quickfixj.msg.outgoing - FIXT.1.1:FIX->FIX_STUB: 8=FIXT.1.1|9=267|35=RQS|34=3|49=FIX|52=20160628-13:49:58.474|56=FIX_STUB|20000=1|20001={json string}|20002=1.0|10=171|
 <20160628-13:49:58, FIXT.1.1:FIX_STUB->FIX, incoming> (8=FIXT.1.1|9=267|35=RQS|34=3|49=FIX|52=20160628-13:49:58.474|56=FIX_STUB|20000=1|20001={json string}|20002=1.0|10=171|)
 16:49:58.476 [QFJ Message Processor] INFO  c.r.fix.api.stub.FixApplication - FIX STUB MESSAGE TYPE:quickfix.fix50sp2.Request
<20160628-13:49:58, FIXT.1.1:FIX_STUB->FIX, outgoing> (8=FIXT.1.1|9=308|35=RSP|34=3|49=FIX_STUB|52=20160628-13:49:58.527|56=FIX|20000=1|20001={json string}||20002=1.0|10=240|)
16:49:58.528 [NioProcessor-2] INFO  quickfixj.msg.incoming - FIXT.1.1:FIX->FIX_STUB: 8=FIXT.1.1|9=308|35=RSP|34=3|49=FIX_STUB|52=20160628-13:49:58.527|56=FIX|20000=1|20001={json string}||20002=1.0|10=240|
16:49:58.529 [QFJ Message Processor] INFO  c....fix.engine.FixEngineImpl - FIX MESSAGE TYPE:quickfix.fix50sp2.Response

上,Tomcat正在工作,但是当我们尝试在测试环境中使用完全相同的代码并部署到Websphere服务器时,我会得到以下错误:

代码语言:javascript
复制
2016-06-28 11:17:44,196 appl="rtv" env="SYS" version="3.8.12" loglevel="INFO " message="FIXT.1.1:FIX->FIX_STUB: 8=FIXT.1.19=26735=RQS34=249=FIX52=20160628-09:17:44.19656=FIX_STUB20000=120001={json string}20002=1.010=147" thread="WebContainer : 1" logger="quickfixj.msg.outgoing"
    2016-06-28 11:17:44,198 appl="rtv" env="SYS" version="3.8.12" loglevel="INFO " message="FIX STUB MESSAGE TYPE:quickfix.fix50sp2.Message" thread="QFJ Message Processor" logger="c.r.fix.api.stub.FixApplication"
    2016-06-28 11:17:44,202 appl="rtv" env="SYS" version="3.8.12" loglevel="ERROR" message="FIX STUB MESSAGE CRACK FAILED" thread="QFJ Message Processor" logger="c.r.fix.api.stub.FixApplication"
    quickfix.UnsupportedMessageType: null
            at quickfix.fix50sp2.MessageCracker.onMessage(MessageCracker.java:39) ~[quickfixj-messages-all-1.6.2.jar:1.6.2]
            at quickfix.fix50sp2.MessageCracker.crack50(MessageCracker.java:1787) ~[quickfixj-messages-all-1.6.2.jar:1.6.2]
            at quickfix.fix50sp2.MessageCracker.crack(MessageCracker.java:1555) ~[quickfixj-messages-all-1.6.2.jar:1.6.2]
            at com....fix.api.stub.FixApplication.fromApp(FixApplication.java:97) ~[rita-web-3.8.jar:na] 

正如您在示例中看到的那样,类型(message子类)是正确处理的( (quickfix.fix50sp2.Requestquickfix.fix50sp2.Response ),但在Websphere上不是(quickfix.fix50sp2.Message).使用MessageCracker。

你能帮我解决这个问题,找出为什么会发生这种情况与操作系统,web服务器或某些修复配置有关吗?

EN

回答 1

Stack Overflow用户

发布于 2016-07-07 12:37:20

我解决了问题..。它与类加载器和重复类相关。获得jar文件的方式也包含默认消息(maven依赖项.)在Tomcat上,应用程序选择正确的类,而WebSphere选择默认的类,这就是为什么应用程序MessageCracker没有正确处理消息的原因。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38078838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档