[ 
https://issues.apache.org/activemq/browse/CAMEL-1350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=62235#action_62235
 ] 

Vid Cheruvu commented on CAMEL-1350:
------------------------------------

@Steve, I have across an error that could be related to SenderSubID. Please see 
my scenario below. 

I have a session  in my quickfix that accepts connection which has sendersubid. 

[default]
UseJmx=Y
SocketAcceptProtocol=SOCKET
SocketConnectProtocol=SOCKET
PersistMessages=Y
StartTime=00:00:00
EndTime=00:00:00
HeartBtInt=30
ScreenLogEvents=N
ScreenLogShowIncoming=N
ScreenLogShowOutgoing=N
ValidateUserDefinedField=N
JdbcURL=jdbc:mysql://localhost:3306/quickfix
JdbcDriver=com.mysql.jdbc.Driver
JdbcUser=root
JdbcPassword=

[session]
ConnectionType=acceptor
BeginString=FIX.4.2
SenderCompID=CAMEL
SenderSubID=CLIENT100
TargetCompID=Trader
SocketAcceptPort=7004
DataDictionary=META-INF/quickfix/dictionary/FIX-42-Trader.xml


I have sent a mock FIX message from fix simulator to  test fix session 
(acceptor) which  gets forwarded to above FIX  session by Camel endpoint.   
While routing from test fix session to above session, I have come across an 
error as shown below. It works fine if i didn't have sendersubid in the above 
fix session. Any idea how I can get around this error when I have sendersubid 
in the config setting?

2010-09-30 08:23:59,313 DEBUG [QFJ Message Processor] - Logger.log:197 Failed 
delivery for exchangeId: cd388c8a-e69b-434e-887b-90d3268e6407. On delivery 
attempt: 0 caught: java.lang.IllegalStateException: Unknown session: 
FIX.4.2:CAMEL->TRADER
2010-09-30 08:23:59,313 ERROR [QFJ Message Processor] - Logger.log:248 Failed 
delivery for exchangeId: cd388c8a-e69b-434e-887b-90d3268e6407. Exhausted after 
delivery attempt: 1 caught: java.lang.IllegalStateException: Unknown session: 
FIX.4.2:CAMEL->TRADER
java.lang.IllegalStateException: Unknown session: FIX.4.2:CAMEL->TRADER
        at 
org.apache.camel.component.quickfixj.QuickfixjProducer.process(QuickfixjProducer.java:49)
        at 
org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)
        at 
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
        at 
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
        at 
org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.processor.FilterProcessor.process(FilterProcessor.java:56)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
        at 
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
        at 
org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:143)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:78)
        at 
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:99)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
        at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:91)
        at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
        at 
org.apache.camel.component.quickfixj.QuickfixjConsumer.onEvent(QuickfixjConsumer.java:38)
        at 
org.apache.camel.component.quickfixj.QuickfixjEndpoint.onEvent(QuickfixjEndpoint.java:79)
        at 
org.apache.camel.component.quickfixj.QuickfixjEngine$Dispatcher.dispatch(QuickfixjEngine.java:373)
        at 
org.apache.camel.component.quickfixj.QuickfixjEngine$Dispatcher.fromApp(QuickfixjEngine.java:343)
        at quickfix.Session.fromCallback(Session.java:1647)
        at quickfix.Session.verify(Session.java:1566)
        at quickfix.Session.verify(Session.java:1677)
        at quickfix.Session.next(Session.java:946)
        at 
quickfix.mina.SingleThreadedEventHandlingStrategy$SessionMessageEvent.processMessage(SingleThreadedEventHandlingStrategy.java:112)
        at 
quickfix.mina.SingleThreadedEventHandlingStrategy.block(SingleThreadedEventHandlingStrategy.java:75)
        at 
quickfix.mina.SingleThreadedEventHandlingStrategy$1.run(SingleThreadedEventHandlingStrategy.java:92)
        at java.lang.Thread.run(Thread.java:619)



> camel-quickfix component in apache camel distribution
> -----------------------------------------------------
>
>                 Key: CAMEL-1350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1350
>             Project: Apache Camel
>          Issue Type: New Feature
>         Environment:  <properties>
>               <camel-version>2.0-SNAPSHOT</camel-version>
>               <fuse-version>2.x-fuse-SNAPSHOT</fuse-version>
>               <activemq-version>5.2.0</activemq-version>
>               <quickfix-version>1.3.3</quickfix-version>
>               <mina-version>1.1.0</mina-version>
>               <slf4j-version>1.5.6</slf4j-version>
>       </properties>
>            Reporter: Charles Moulliard
>            Assignee: Hadrian Zbarcea
>             Fix For: 2.5.0
>
>         Attachments: camel-quickfix-2-1.patch, camel-quickfix-2.zip, 
> camel-quickfix.patch, camel-quickfix.zip, camel-quickfix.zip, 
> QuickFixDataFormat.java, reportincident.quickfix.zip
>
>
> Hi,
> ATTENTION: Ignoring converter type: org.apache.camel.fix.FixConverter as a 
> dependent class could not be found: java.lang.NoClassDefFoundError: 
> biz/c24/io/api/data/DataType
> java.lang.NoClassDefFoundError: biz/c24/io/api/data/DataType
>       at java.lang.Class.getDeclaredMethods0(Native Method)
>       at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
>       at java.lang.Class.getDeclaredMethods(Class.java:1791)
>       at 
> org.apache.camel.impl.converter.AnnotationTypeConverterLoader.loadConverterMethods(AnnotationTypeConverterLoader.java:147)
>       at 
> org.apache.camel.impl.converter.AnnotationTypeConverterLoader.load(AnnotationTypeConverterLoader.java:78)
>       at 
> org.apache.camel.impl.converter.DefaultTypeConverter.checkLoaded(DefaultTypeConverter.java:260)
>       at 
> org.apache.camel.impl.converter.DefaultTypeConverter.convertTo(DefaultTypeConverter.java:95)
>       at 
> org.apache.camel.impl.converter.DefaultTypeConverter.convertTo(DefaultTypeConverter.java:71)
>       at 
> org.apache.camel.util.IntrospectionSupport.convert(IntrospectionSupport.java:263)
>       at 
> org.apache.camel.util.IntrospectionSupport.setProperty(IntrospectionSupport.java:221)
>       at 
> org.apache.camel.util.IntrospectionSupport.setProperties(IntrospectionSupport.java:188)
>       at 
> org.apache.camel.impl.DefaultComponent.setProperties(DefaultComponent.java:213)
>       at 
> org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:63)
>       at 
> org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:33)
>       at 
> org.apache.camel.impl.DefaultComponent.createEndpoint(DefaultComponent.java:81)
>       at 
> org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:330)
>       at 
> org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:54)
>       at org.apache.camel.model.RouteType.resolveEndpoint(RouteType.java:96)
>       at 
> org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:106)
>       at 
> org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:112)
>       at org.apache.camel.model.FromType.resolveEndpoint(FromType.java:72)
>       at 
> org.apache.camel.impl.DefaultRouteContext.getEndpoint(DefaultRouteContext.java:81)
>       at org.apache.camel.model.RouteType.addRoutes(RouteType.java:239)
>       at org.apache.camel.model.RouteType.addRoutes(RouteType.java:86)
>       at 
> org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:661)
>       at 
> org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:651)
>       at 
> org.apache.camel.spring.SpringCamelContext.maybeDoStart(SpringCamelContext.java:166)
>       at 
> org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:161)
>       at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:49)
>       at 
> org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:96)
>       at 
> org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:115)
>       at 
> org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78)
>       at 
> org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
>       at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76)
>       at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274)
>       at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:736)
>       at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:383)
>       at 
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
>       at 
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
>       at 
> org.apache.camel.spring.Main.createDefaultApplicationContext(Main.java:232)
>       at org.apache.camel.spring.Main.doStart(Main.java:186)
>       at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:49)
>       at org.apache.camel.util.MainSupport.run(MainSupport.java:121)
>       at org.apache.camel.util.MainSupport.run(MainSupport.java:299)
>       at org.apache.camel.spring.Main.main(Main.java:98)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at org.apache.camel.maven.RunMojo$1.run(RunMojo.java:396)
>       at java.lang.Thread.run(Thread.java:619)
> The org.apache.camel.fix.FixConverter class uses proprietary classes : 
> import biz.c24.io.api.data.BooleanDataType;
> import biz.c24.io.api.data.CharDataType;
> import biz.c24.io.api.data.ComplexDataObject;
> import biz.c24.io.api.data.ComplexDataType;
> import biz.c24.io.api.data.DataType;
> import biz.c24.io.api.data.DateDataType;
> import biz.c24.io.api.data.Element;
> import biz.c24.io.api.data.IntDataType;
> import biz.c24.io.api.data.NumberDataType;
> import biz.c24.io.api.data.StringDataType;
> import biz.c24.io.api.presentation.TextualSource;
> import biz.c24.io.fix42.NewOrderSingleElement;
> Except if those classes are part of open source community but How can I use 
> this component without Artix Data Service ?
> ex config :
>               <route>
>                       <from uri="fixserver:banzai-to-camel.cfg" />
>                       <to uri="log:quickfix" />
>               </route>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to