camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bengt Rodehav (JIRA)" <>
Subject [jira] Commented: (CAMEL-1350) camel-quickfix component in apache camel distribution
Date Mon, 27 Sep 2010 21:56:43 GMT


Bengt Rodehav commented on CAMEL-1350:

Yes, the concept of many consumers is a bit new to me since that's a possibility that now
exists (a good one I think). However, isn't it up to the developer (the user of camel-quickfix)
to make a choice whether or not the message should be resent. Perhaps it's possible to mark
the exchange as being resent or "retried". Perhaps some of the more experienced Camel guys
could comment on that. I think that's being used in other parts of Camel. A property on the
exchange could even have a counter indicating if it's the first, second etc retry.

Nevertheless, it's probably true that one would not like to cause a resend too often. I think
you know much better than me when this is desirable. One concern I have is guaranteed delivery.
I don't want QuickFix/J to falsely believe that the message was taken care of before I have
been able to store it persistently, e g in a database or or on a JMS queue. I think this is
a very relevant scenario that must be addressed. E g imagine that I receive an ExecutionReport
(I mainly work with back-office systems), it passes along my Camel route but before it reaches
the point where it's stored in my ActiveMQ persistent queue, my computer stops (no power).
Where does that leave me? Will I receive that ExecutionReport again (from QuickFix/J) or is
it lost?

Pluggable interceptors sounds like a very good idea. Are you planning on using Camel's interceptor

> camel-quickfix component in apache camel distribution
> -----------------------------------------------------
>                 Key: CAMEL-1350
>                 URL:
>             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.patch,,,,
> 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(
> 	at java.lang.Class.getDeclaredMethods(
> 	at org.apache.camel.impl.converter.AnnotationTypeConverterLoader.loadConverterMethods(
> 	at org.apache.camel.impl.converter.AnnotationTypeConverterLoader.load(
> 	at org.apache.camel.impl.converter.DefaultTypeConverter.checkLoaded(
> 	at org.apache.camel.impl.converter.DefaultTypeConverter.convertTo(
> 	at org.apache.camel.impl.converter.DefaultTypeConverter.convertTo(
> 	at org.apache.camel.util.IntrospectionSupport.convert(
> 	at org.apache.camel.util.IntrospectionSupport.setProperty(
> 	at org.apache.camel.util.IntrospectionSupport.setProperties(
> 	at org.apache.camel.impl.DefaultComponent.setProperties(
> 	at org.apache.camel.component.file.GenericFileComponent.createEndpoint(
> 	at org.apache.camel.component.file.GenericFileComponent.createEndpoint(
> 	at org.apache.camel.impl.DefaultComponent.createEndpoint(
> 	at org.apache.camel.impl.DefaultCamelContext.getEndpoint(
> 	at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(
> 	at org.apache.camel.model.RouteType.resolveEndpoint(
> 	at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(
> 	at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(
> 	at org.apache.camel.model.FromType.resolveEndpoint(
> 	at org.apache.camel.impl.DefaultRouteContext.getEndpoint(
> 	at org.apache.camel.model.RouteType.addRoutes(
> 	at org.apache.camel.model.RouteType.addRoutes(
> 	at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(
> 	at org.apache.camel.spring.SpringCamelContext.maybeDoStart(
> 	at org.apache.camel.spring.SpringCamelContext.doStart(
> 	at org.apache.camel.impl.ServiceSupport.start(
> 	at org.apache.camel.spring.SpringCamelContext.maybeStart(
> 	at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(
> 	at org.springframework.context.event.SimpleApplicationEventMulticaster$
> 	at org.springframework.core.task.SyncTaskExecutor.execute(
> 	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(
> 	at
> 	at
> 	at
> 	at<init>(
> 	at<init>(
> 	at org.apache.camel.spring.Main.createDefaultApplicationContext(
> 	at org.apache.camel.spring.Main.doStart(
> 	at org.apache.camel.impl.ServiceSupport.start(
> 	at
> 	at
> 	at org.apache.camel.spring.Main.main(
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> 	at java.lang.reflect.Method.invoke(
> 	at org.apache.camel.maven.RunMojo$
> 	at
> The org.apache.camel.fix.FixConverter class uses proprietary classes : 
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> import;
> 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.

View raw message