apache.servicemix.bundles.quickfix - 尝试创建独立的NewOrderSingle对象抛出异常

时间:2015-08-13 13:31:10

标签: java quickfix fix-protocol quickfixj

我正在尝试编写一个用于将域POJO转换为QuickFixJ消息的类。当我尝试创建新的订单消息时:

quickfix.fix44.NewOrderSingle order = new quickfix.fix44.NewOrderSingle();

日志中抛出以下异常:

Exception Details:
Location:
  quickfix/fix44/NewOrderSingle.get(Lquickfix/field/SettlType;)Lquickfix/field/SettlType; @2: invokevirtual
Reason:
Type 'quickfix/field/SettlType' (current frame, stack[1]) is not assignable to 'quickfix/CharField'
Current Frame:
  bci: @2
  flags: { }
  locals: { 'quickfix/fix44/NewOrderSingle', 'quickfix/field/SettlType' }
  stack: { 'quickfix/fix44/NewOrderSingle', 'quickfix/field/SettlType' }
Bytecode:
  0000000: 2a2b b600 3057 2bb0                    

当尝试将两个版本的Fix Message Fields合并在一起时,似乎发生了这个错误,但据我所知,我没有这样做。我使用的代码与QuickFixJ unit tests中的相同代码相同,代码在this example中工作,它是在通过发起方对象应用连接之后。我使用apache.servicemix.bundles.quickfix而不是QuickFix-all.jar,因为它包含我需要添加到其他消息的一些字段。

我不确定为什么我无法调用对象的简单构造函数。 jar中的构造函数如下:

public NewOrderSingle()
{
   getHeader().setField(new MsgType("D"));
}

我还没有想到这个错误的另一个可能原因吗?我很难过

0 个答案:

没有答案