Hi

Yes Camel 2.0 is not 1.x. So some things are different/better in 2.0 than 1.x.
It was in fact wrong in 1.x where Camel just deletes/moves the file
regardless what happens.

If you want the file deleted no matter what then move it to a seda
queue and grab it from there in the route you continue

from(file) -> seda:foo
from(seda:foo) -> do whatever you want

You can also provide your own process startegy to the camel file
component where you handle the commit/rollback yourself and delete the
file no matter what.



On Thu, Jul 16, 2009 at 10:24 AM, Carlo Camerino<car...@sxchange.com.ph> wrote:
> what happens is taht the exceptions just ocntinue on appearing everytime.
> DEBUG - GenericFileOnCompletion    - Done processing file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange:
> Exchange[GenericFileMessage with body:
> com.ccti.base.camel.model.filemo...@17d7379]
> ERROR - GenericFileOnCompletion    -
> java.lang.NullPointerException
>    at
> com.ccti.carnelian.service.batchuploadhdr.BatchUploadHdrServiceImpl.updateRolledBackFile(BatchUploadHdrServiceImpl.java:103)
>    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:585)
>    at
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>    at
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>    at $Proxy25.updateRolledBackFile(Unknown Source)
>    at
> com.ccti.carnelian.ufm.processor.PayoutFileProcessor.process(PayoutFileProcessor.java:58)
>    at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:52)
>    at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:52)
>    at
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:147)
>    at
> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54)
>    at
> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:94)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:92)
>    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
>    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:65)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:172)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
>    at java.lang.Thread.run(Thread.java:595)
> WARN  - GenericFileOnCompletion    - Rolling back remote file strategy:
> org.apache.camel.component.file.strategy.genericfiledeleteprocessstrat...@1b5438dfor
> file: GenericFile[c:\ufm\upload\UFM.png]
> DEBUG - FileConsumer               - Total 1 files to consume
> DEBUG - FileConsumer               - About to process file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange:
> Exchange[GenericFileMessage with file: GenericFile[c:\ufm\upload\UFM.png]]
> Hibernate: select this_.ID as ID8_0_, this_.VERSION as VERSION8_0_, this_.CD
> as CD8_0_, this_.DSCP as DSCP8_0_, this_.VALUE as VALUE8_0_, this_.TYPE as
> TYPE8_0_, this_.IS_SECURITY as IS7_8_0_, this_.IS_EDITABLE as IS8_8_0_,
> this_.SEQ_NO as SEQ9_8_0_ from TBL_SYSPAR this_ where this_.CD=?
> Hibernate: select this_.ID as ID8_0_, this_.VERSION as VERSION8_0_, this_.CD
> as CD8_0_, this_.DSCP as DSCP8_0_, this_.VALUE as VALUE8_0_, this_.TYPE as
> TYPE8_0_, this_.IS_SECURITY as IS7_8_0_, this_.IS_EDITABLE as IS8_8_0_,
> this_.SEQ_NO as SEQ9_8_0_ from TBL_SYSPAR this_ where this_.CD=?
> Hibernate: select this_.CD_TYPE as CD1_7_0_, this_.VERSION as VERSION7_0_,
> this_.CD_DSCP as CD3_7_0_, this_.IS_RESET as IS4_7_0_, this_.IS_CHK_DIGIT as
> IS5_7_0_, this_.IS_W_CODE as IS6_7_0_, this_.IS_W_DATE as IS7_7_0_,
> this_.SEQ_LEN as SEQ8_7_0_, this_.IS_RESET_DAILY as IS9_7_0_ from
> TBL_SEQ_NO_TYPE this_ where this_.CD_TYPE=?
> Hibernate: select count(*) as y0_ from TBL_SEQ_NO_CD this_ where this_.CD=?
> and this_.CD_TYPE=?
> Hibernate: select this_.ID as ID6_0_, this_.VERSION as VERSION6_0_, this_.CD
> as CD6_0_, this_.CD_TYPE as CD4_6_0_, this_.SEQ_NO as SEQ5_6_0_, this_.DT as
> DT6_0_ from TBL_SEQ_NO_CD this_ where this_.CD=? and this_.CD_TYPE=?
> Hibernate: update TBL_SEQ_NO_CD set VERSION=?, CD=?, CD_TYPE=?, SEQ_NO=?,
> DT=? where ID=? and VERSION=?
> Hibernate: select this_.ID as ID20_0_, this_.VERSION as VERSION20_0_,
> this_.REF_NO as REF3_20_0_, this_.UPLOAD_DT as UPLOAD4_20_0_, this_.USER_CD
> as USER5_20_0_, this_.COMMUNITY_CD as COMMUNITY6_20_0_, this_.FILENAME as
> FILENAME20_0_, this_.NO_RECORDS as NO8_20_0_, this_.STATUS as STATUS20_0_,
> this_.REASON as REASON20_0_, this_.PROC_DTTIME as PROC11_20_0_,
> this_.CENTER_CD as CENTER12_20_0_, this_.COVER_AMT as COVER13_20_0_,
> this_.COVER_NO as COVER14_20_0_, this_.XMIT_DT as XMIT15_20_0_,
> this_.OVERRIDE_USER as OVERRIDE16_20_0_, this_.NO_RECORDS_PROC as
> NO17_20_0_, this_.CNT_TOTAL as CNT18_20_0_, this_.TOTAL_AMT as
> TOTAL19_20_0_, this_.HASH_TOTAL as HASH20_20_0_ from TBL_BATCH_UPLOAD_HDR
> this_ where this_.REF_NO=?
> DEBUG - GenericFileOnCompletion    - Done processing file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange:
> Exchange[GenericFileMessage with body:
> com.ccti.base.camel.model.filemo...@86a602]
> ERROR - GenericFileOnCompletion    -
> java.lang.NullPointerException
>    at
> com.ccti.carnelian.service.batchuploadhdr.BatchUploadHdrServiceImpl.updateRolledBackFile(BatchUploadHdrServiceImpl.java:103)
>    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:585)
>    at
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>    at
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>    at $Proxy25.updateRolledBackFile(Unknown Source)
>    at
> com.ccti.carnelian.ufm.processor.PayoutFileProcessor.process(PayoutFileProcessor.java:58)
>    at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:52)
>    at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:52)
>    at
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:147)
>    at
> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54)
>    at
> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:94)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:92)
>    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
>    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:65)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:172)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
>    at java.lang.Thread.run(Thread.java:595)
> WARN  - GenericFileOnCompletion    - Rolling back remote file strategy:
> org.apache.camel.component.file.strategy.genericfiledeleteprocessstrat...@1b5438dfor
> file: GenericFile[c:\ufm\upload\UFM.png]
> DEBUG - FileConsumer               - Total 1 files to consume
> DEBUG - FileConsumer               - About to process file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange:
> Exchange[GenericFileMessage with file: GenericFile[c:\ufm\upload\UFM.png]]
> Hibernate: select this_.ID as ID8_0_, this_.VERSION as VERSION8_0_, this_.CD
> as CD8_0_, this_.DSCP as DSCP8_0_, this_.VALUE as VALUE8_0_, this_.TYPE as
> TYPE8_0_, this_.IS_SECURITY as IS7_8_0_, this_.IS_EDITABLE as IS8_8_0_,
> this_.SEQ_NO as SEQ9_8_0_ from TBL_SYSPAR this_ where this_.CD=?
> Hibernate: select this_.ID as ID8_0_, this_.VERSION as VERSION8_0_, this_.CD
> as CD8_0_, this_.DSCP as DSCP8_0_, this_.VALUE as VALUE8_0_, this_.TYPE as
> TYPE8_0_, this_.IS_SECURITY as IS7_8_0_, this_.IS_EDITABLE as IS8_8_0_,
> this_.SEQ_NO as SEQ9_8_0_ from TBL_SYSPAR this_ where this_.CD=?
> Hibernate: select this_.CD_TYPE as CD1_7_0_, this_.VERSION as VERSION7_0_,
> this_.CD_DSCP as CD3_7_0_, this_.IS_RESET as IS4_7_0_, this_.IS_CHK_DIGIT as
> IS5_7_0_, this_.IS_W_CODE as IS6_7_0_, this_.IS_W_DATE as IS7_7_0_,
> this_.SEQ_LEN as SEQ8_7_0_, this_.IS_RESET_DAILY as IS9_7_0_ from
> TBL_SEQ_NO_TYPE this_ where this_.CD_TYPE=?
> Hibernate: select count(*) as y0_ from TBL_SEQ_NO_CD this_ where this_.CD=?
> and this_.CD_TYPE=?
> Hibernate: select this_.ID as ID6_0_, this_.VERSION as VERSION6_0_, this_.CD
> as CD6_0_, this_.CD_TYPE as CD4_6_0_, this_.SEQ_NO as SEQ5_6_0_, this_.DT as
> DT6_0_ from TBL_SEQ_NO_CD this_ where this_.CD=? and this_.CD_TYPE=?
> Hibernate: update TBL_SEQ_NO_CD set VERSION=?, CD=?, CD_TYPE=?, SEQ_NO=?,
> DT=? where ID=? and VERSION=?
> Hibernate: select this_.ID as ID20_0_, this_.VERSION as VERSION20_0_,
> this_.REF_NO as REF3_20_0_, this_.UPLOAD_DT as UPLOAD4_20_0_, this_.USER_CD
> as USER5_20_0_, this_.COMMUNITY_CD as COMMUNITY6_20_0_, this_.FILENAME as
> FILENAME20_0_, this_.NO_RECORDS as NO8_20_0_, this_.STATUS as STATUS20_0_,
> this_.REASON as REASON20_0_, this_.PROC_DTTIME as PROC11_20_0_,
> this_.CENTER_CD as CENTER12_20_0_, this_.COVER_AMT as COVER13_20_0_,
> this_.COVER_NO as COVER14_20_0_, this_.XMIT_DT as XMIT15_20_0_,
> this_.OVERRIDE_USER as OVERRIDE16_20_0_, this_.NO_RECORDS_PROC as
> NO17_20_0_, this_.CNT_TOTAL as CNT18_20_0_, this_.TOTAL_AMT as
> TOTAL19_20_0_, this_.HASH_TOTAL as HASH20_20_0_ from TBL_BATCH_UPLOAD_HDR
> this_ where this_.REF_NO=?
> DEBUG - GenericFileOnCompletion    - Done processing file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange:
> Exchange[GenericFileMessage with body:
> com.ccti.base.camel.model.filemo...@1c59085]
> ERROR - GenericFileOnCompletion    -
> java.lang.NullPointerException
>    at
> com.ccti.carnelian.service.batchuploadhdr.BatchUploadHdrServiceImpl.updateRolledBackFile(BatchUploadHdrServiceImpl.java:103)
>    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:585)
>    at
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>    at
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>    at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>    at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>    at $Proxy25.updateRolledBackFile(Unknown Source)
>    at
> com.ccti.carnelian.ufm.processor.PayoutFileProcessor.process(PayoutFileProcessor.java:58)
>    at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:52)
>    at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:52)
>    at
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:147)
>    at
> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54)
>    at
> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:94)
>    at
> org.apache.camel.processor.ThreadsProcessor$1.call(ThreadsProcessor.java:92)
>    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
>    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:65)
>    at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:172)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
>    at java.lang.Thread.run(Thread.java:595)
> WARN  - GenericFileOnCompletion    - Rolling back remote file strategy:
> org.apache.camel.component.file.strategy.genericfiledeleteprocessstrat...@1b5438dfor
> file: GenericFile[c:\ufm\upload\UFM.png]
> DEBUG - FileConsumer               - Total 1 files to consume
> DEBUG - FileConsumer               - About to process file:
> GenericFile[c:\ufm\upload\UFM.png] using exchange: Excha
>
> [...]
>
>
> behavior wasn't like this before.
>
> On Thu, Jul 16, 2009 at 4:23 PM, Carlo Camerino <car...@sxchange.com.ph>wrote:
>
>> hmm, actually i'm already in a different route in where I process the file
>> already.
>> what's happening is the file gets processed again. Before in previous
>> versions, I think the file is deleted right after the
>>
>> from("file:")
>>
>> declaration.
>>
>> is this a new behavior in camel 2?
>> i think this wasn't present before in the previous camel versions.
>>
>>
>> On Thu, Jul 16, 2009 at 4:20 PM, Claus Ibsen <claus.ib...@gmail.com>wrote:
>>
>>> On Thu, Jul 16, 2009 at 10:16 AM, Carlo Camerino<car...@sxchange.com.ph>
>>> wrote:
>>> > hi,
>>> >
>>> > i've also noticed this behavior change, when I encounter an error for an
>>> > example ina  certgain part of the code and encounter an exception. The
>>> file
>>> > still remains in the directory and the file will bde processed all over
>>> > again.
>>> >
>>> > Does delete=true still work in this scenario?
>>> No Camel will only delete the file if it was processed OK.
>>>
>>> You do not want to "loose messages". If there is an error or the likes
>>> use Camel error handling to handle
>>> it in case you can and then the file can be deleted.
>>> http://camel.apache.org/error-handling-in-camel.html
>>>
>>>
>>>
>>> >
>>> > Thanks
>>> >
>>> > On Thu, Jul 16, 2009 at 3:59 PM, Carlo Camerino <car...@sxchange.com.ph
>>> >wrote:
>>> >
>>> >> i removed the annotations but still didn't work.
>>> >>
>>> >> it finally worked when I added a routebuilderref.
>>> >>
>>> >> thanks for the help!!!
>>> >>
>>> >>
>>> >> On Thu, Jul 16, 2009 at 3:52 PM, Claus Ibsen <claus.ib...@gmail.com
>>> >wrote:
>>> >>
>>> >>> Hi
>>> >>>
>>> >>> If you are using some annotations in your route classes then Spring
>>> >>> might not be able to IoC them properly and just ignore these files.
>>> >>> Has been improved in later code, eg 2.0m3 or SNAPSHOT.
>>> >>>
>>> >>> So try not having annotations in them.
>>> >>>
>>> >>> And you can also use a <routeBuilderRef> to refer to the route class
>>> >>> directly without the classpath scanner.
>>> >>>
>>> >>>
>>> >>> On Thu, Jul 16, 2009 at 9:49 AM, Carlo Camerino<
>>> car...@sxchange.com.ph>
>>> >>> wrote:
>>> >>> > are my routes being picked up properly?
>>> >>> >
>>> >>> > here is the output of debug log in camel.
>>> >>> >
>>> >>> > INFO  - DefaultCamelContext        - JMX enabled. Using
>>> >>> > InstrumentationLifecycleStrategy.
>>> >>> > INFO  - CamelContextFactoryBean    - JMXAgent disabled
>>> >>> > DEBUG - CamelContextFactoryBean    - Found JAXB created routes: []
>>> >>> > DEBUG - ltPackageScanClassResolver - Searching for implementations
>>> of
>>> >>> > org.apache.camel.Routes in packages: [com.ccti.carnelian.ufm.routes]
>>> >>> > DEBUG - ltPackageScanClassResolver - Loading from directory:
>>> >>> >
>>> >>>
>>> C:\PROJECTS\CHINABANK\cbc-carnelian\carnelian-parent\carnelian-ufm\target\classes\com\ccti\carnelian\ufm\routes
>>> >>> > DEBUG - ltPackageScanClassResolver - Found: [class
>>> >>> > com.ccti.carnelian.ufm.routes.FileRouteBuilder, class
>>> >>> > com.ccti.carnelian.ufm.routes.QueueRouteBuilder]
>>> >>> > Hibernate: update TBL_USER set IS_LOGIN=0
>>> >>> > DEBUG - SpringCamelContext         - Publishing spring-event:
>>> >>> >
>>> >>>
>>> org.springframework.context.event.contextrefreshedevent[source=org.springframework.web.context.support.xmlwebapplicationcont...@1b17d49
>>> >>> :
>>> >>> > display name [Root WebApplicationContext]; startup date [Thu Jul 16
>>> >>> 15:46:19
>>> >>> > SGT 2009]; root of context hierarchy]
>>> >>> > DEBUG - SpringCamelContext         - Starting the CamelContext now
>>> that
>>> >>> the
>>> >>> > ApplicationContext has started
>>> >>> > INFO  - DefaultCamelContext        - Apache Camel 2.0-M2
>>> >>> > (CamelContext:camelContext) is starting
>>> >>> > DEBUG - DefaultProducerServicePool - Starting service pool:
>>> >>> > org.apache.camel.impl.defaultproducerservicep...@14c0761
>>> >>> > DEBUG - DefaultCamelContext        - StreamCaching is enabled
>>> >>> > DEBUG - DefaultComponent           - Creating endpoint
>>> >>> > uri=[spring-event:default], path=[default], parameters=[{}]
>>> >>> > DEBUG - DefaultCamelContext        - spring-event:default converted
>>> to
>>> >>> > endpoint: Endpoint[spring-event:default] by component:
>>> >>> > org.apache.camel.component.event.eventcompon...@1ca32f7
>>> >>> > DEBUG - DefaultProducerServicePool - Stopping service pool:
>>> >>> > org.apache.camel.impl.defaultproducerservicep...@14c0761
>>> >>> > INFO  - DefaultCamelContext        - Apache Camel 2.0-M2
>>> >>> > (CamelContext:camelContext) started
>>> >>> >
>>> >>> > i'll paste trace log also
>>> >>> >
>>> >>> > On Thu, Jul 16, 2009 at 3:47 PM, Claus Ibsen <claus.ib...@gmail.com
>>> >
>>> >>> wrote:
>>> >>> >
>>> >>> >> Hi
>>> >>> >>
>>> >>> >> Is there any files to pickup? And Camel will also not read the file
>>> if
>>> >>> >> it cannot get a read lock on the file.
>>> >>> >> Maybe the file is locked if you got it open in another program. So
>>> >>> >> safe to drop in a file that you copy from somewhere else.
>>> >>> >>
>>> >>> >> And some user had trouble with MS Office files being locked on
>>> Windows.
>>> >>> >>
>>> >>> >> You can also skip this locking by setting readLock=none
>>> >>> >>
>>> >>> >> And enable TRACE logging at org.apache.camel.component.file to see
>>> what
>>> >>> it
>>> >>> >> says.
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >> On Thu, Jul 16, 2009 at 9:32 AM, Carlo Camerino<
>>> car...@sxchange.com.ph
>>> >>> >
>>> >>> >> wrote:
>>> >>> >> > hmm there's no camel locks in there.
>>> >>> >> > i deleted the directoyr, recreated it still doesn't work.
>>> >>> >> >
>>> >>> >> > here's my files
>>> >>> >> >
>>> >>> >> > package com.ccti.carnelian.ufm.routes;
>>> >>> >> >
>>> >>> >> > import java.io.File;
>>> >>> >> >
>>> >>> >> > import org.apache.camel.Exchange;
>>> >>> >> > import org.apache.camel.Processor;
>>> >>> >> > import org.apache.camel.builder.RouteBuilder;
>>> >>> >> > import org.apache.camel.impl.DefaultMessage;
>>> >>> >> > import org.apache.commons.io.FileUtils;
>>> >>> >> > import org.slf4j.Logger;
>>> >>> >> > import org.slf4j.LoggerFactory;
>>> >>> >> >
>>> >>> >> > import com.ccti.base.camel.model.FileModel;
>>> >>> >> > import com.ccti.base.camel.processors.FileWaitProcessor;
>>> >>> >> > import com.ccti.base.dao.syspar.SysParDao;
>>> >>> >> >
>>> >>> >> > public class FileRouteBuilder extends RouteBuilder {
>>> >>> >> >    private static final Logger logger =
>>> >>> >> > LoggerFactory.getLogger(FileRouteBuilder.class);
>>> >>> >> >    private SysParDao sysParDao;
>>> >>> >> >
>>> >>> >> >   �...@override
>>> >>> >> >    public void configure() throws Exception {
>>> >>> >> >            from("file:" + "c:/ufm/upload/" ).process(new
>>> >>> >> > FileWaitProcessor()).process(new Processor() {
>>> >>> >> >
>>> >>> >> >                public void process(Exchange exchange) throws
>>> >>> Exception {
>>> >>> >> >                    try {
>>> >>> >> >                        FileModel fileModel = new FileModel();
>>> >>> >> >                        logExchangeDetails(exchange);
>>> >>> >> >                        // kailangan ko ipa write ito sa isang
>>> >>> directory
>>> >>> >> >                        logger.debug("Making A copy Of File In
>>> >>> Processed
>>> >>> >> > Directory.");
>>> >>> >> >                        String processedDirectory =
>>> >>> >> > sysParDao.findValueByCd("USR082");
>>> >>> >> >                        String inputDirectory =
>>> >>> >> > sysParDao.findValueByCd("USR081");
>>> >>> >> >                        FileUtils.copyFile(new File(inputDirectory
>>> +
>>> >>> >> > exchange.getIn().getHeader("org.apache.camel.file.name")), new
>>> >>> >> > File(processedDirectory + exchange.getIn().getHeader("
>>> >>> >> > org.apache.camel.file.name") + "-USED"));
>>> >>> >> >                        DefaultMessage defaultMessage = new
>>> >>> >> > DefaultMessage();
>>> >>> >> >                        fileModel.setFileName(processedDirectory +
>>> >>> >> > exchange.getIn().getHeader("org.apache.camel.file.name
>>> ").toString()
>>> >>> +
>>> >>> >> > "-USED");
>>> >>> >> >
>>> >>> >>  fileModel.setCoverName(exchange.getIn().getHeader("
>>> >>> >> > org.apache.camel.file.name").toString());
>>> >>> >> >                        defaultMessage.setBody(fileModel);
>>> >>> >> >                        exchange.setOut(defaultMessage);
>>> >>> >> >                        logger.debug("Successfuly Copied File.");
>>> >>> >> >                    }
>>> >>> >> >                    catch (Exception e) {
>>> >>> >> >                        logger.error(e.getMessage());
>>> >>> >> >                        e.printStackTrace();
>>> >>> >> >                    }
>>> >>> >> >                }
>>> >>> >> >
>>> >>> >> >                private void logExchangeDetails(Exchange exchange)
>>> {
>>> >>> >> >                    if(logger.isDebugEnabled()) {
>>> >>> >> >                        logger.debug(exchange.getIn() + "");
>>> >>> >> >
>>> >>> >>  logger.debug(exchange.getIn().getClass().getName());
>>> >>> >> >                        logger.debug(exchange.getIn().getHeader("
>>> >>> >> > org.apache.camel.file.name").toString());
>>> >>> >> >                        logger.debug(exchange.getOut() + "");
>>> >>> >> >                    }
>>> >>> >> >                }
>>> >>> >> >
>>> >>> >> >            }).to("direct:processingQueue");
>>> >>> >> >
>>> >>> >> >    }
>>> >>> >> >
>>> >>> >> >    public SysParDao getSysParDao() {
>>> >>> >> >        return sysParDao;
>>> >>> >> >    }
>>> >>> >> >
>>> >>> >> >    public void setSysParDao(SysParDao sysParDao) {
>>> >>> >> >        this.sysParDao = sysParDao;
>>> >>> >> >    }
>>> >>> >> > }
>>> >>> >> >
>>> >>> >> > <?xml version = "1.0" encoding = "UTF-8"?>
>>> >>> >> > <beans xmlns="http://www.springframework.org/schema/beans";
>>> >>> >> >    xmlns:amq="http://activemq.apache.org/schema/core";
>>> >>> >> >    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>> >>> >> >    xmlns:jms="http://www.springframework.org/schema/jms";
>>> >>> >> >    xmlns:tx="http://www.springframework.org/schema/tx";
>>> >>> >> >    xmlns:camel="http://camel.apache.org/schema/spring";
>>> >>> >> >    xsi:schemaLocation="
>>> http://www.springframework.org/schema/beans
>>> >>> >> > http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
>>> >>> >> >  http://activemq.apache.org/schema/core
>>> >>> >> > http://activemq.apache.org/schema/core/activemq-core.xsd
>>> >>> >> >  http://www.springframework.org/schema/jms
>>> >>> >> > http://www.springframework.org/schema/jms/spring-jms-2.5.xsd
>>> >>> >> >  http://www.springframework.org/schema/tx
>>> >>> >> > http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
>>> >>> >> >  http://camel.apache.org/schema/spring
>>> >>> >> > http://camel.apache.org/schema/spring/camel-spring.xsd
>>> >>> >> >  ">
>>> >>> >> >
>>> >>> >> >    <camel:camelContext id="camelContext">
>>> >>> >> >
>>>  <camel:package>com.ccti.carnelian.ufm.routes</camel:package>
>>> >>> >> >        <camel:jmxAgent id = "agent" disabled="true"/>
>>> >>> >> >    </camel:camelContext>
>>> >>> >> >
>>> >>> >> > I will be insvesitigating also. maybe it's just a simple mistake
>>> or
>>> >>> >> > something
>>> >>> >> >
>>> >>> >> > On Thu, Jul 16, 2009 at 2:33 PM, Claus Ibsen <
>>> claus.ib...@gmail.com>
>>> >>> >> wrote:
>>> >>> >> >
>>> >>> >> >> On Thu, Jul 16, 2009 at 8:29 AM, Carlo Camerino<
>>> >>> car...@sxchange.com.ph>
>>> >>> >> >> wrote:
>>> >>> >> >> > it doesn't even enter the filewaitprocessor
>>> >>> >> >>
>>> >>> >> >> Could you take a look into the c:/ufm/upload folder. There could
>>> be
>>> >>> >> >> some .camelLock file lurking that blocks it.
>>> >>> >> >> eg you can try removing this folder all together and create a
>>> new
>>> >>> empty
>>> >>> >> >> one.
>>> >>> >> >>
>>> >>> >> >>
>>> >>> >> >>
>>> >>> >> >> >
>>> >>> >> >> > On Thu, Jul 16, 2009 at 2:26 PM, Carlo Camerino <
>>> >>> >> car...@sxchange.com.ph
>>> >>> >> >> >wrote:
>>> >>> >> >> >
>>> >>> >> >> >> Hi,
>>> >>> >> >> >>
>>> >>> >> >> >> Here is my route.
>>> >>> >> >> >>
>>> >>> >> >> >> public void configure() throws Exception {
>>> >>> >> >> >>             from("file://" + "c:/ufm/upload/" +
>>> >>> >> >> "?delete=true").process(new
>>> >>> >> >> >> FileWaitProcessor()).process(new Processor() {
>>> >>> >> >> >>
>>> >>> >> >> >>                 public void process(Exchange exchange) throws
>>> >>> >> Exception
>>> >>> >> >> {
>>> >>> >> >> >>                     try {
>>> >>> >> >> >>                         FileModel fileModel = new
>>> FileModel();
>>> >>> >> >> >>                         logExchangeDetails(exchange);
>>> >>> >> >> >>                         // kailangan ko ipa write ito sa
>>> isang
>>> >>> >> directory
>>> >>> >> >> >>                         logger.debug("Making A copy Of File
>>> In
>>> >>> >> Processed
>>> >>> >> >> >> Directory.");
>>> >>> >> >> >>                         String processedDirectory =
>>> >>> >> >> >> sysParDao.findValueByCd("USR082");
>>> >>> >> >> >>                         String inputDirectory =
>>> >>> >> >> >> sysParDao.findValueByCd("USR081");
>>> >>> >> >> >>                         FileUtils.copyFile(new
>>> >>> File(inputDirectory +
>>> >>> >> >> >> exchange.getIn().getHeader("org.apache.camel.file.name")),
>>> new
>>> >>> >> >> >> File(processedDirectory + exchange.getIn().getHeader("
>>> >>> >> >> >> org.apache.camel.file.name") + "-USED"));
>>> >>> >> >> >>                         DefaultMessage defaultMessage = new
>>> >>> >> >> >> DefaultMessage();
>>> >>> >> >> >>
>>> fileModel.setFileName(processedDirectory
>>> >>> +
>>> >>> >> >> >> exchange.getIn().getHeader("org.apache.camel.file.name
>>> >>> ").toString()
>>> >>> >> +
>>> >>> >> >> >> "-USED");
>>> >>> >> >> >>
>>> >>> >> >> fileModel.setCoverName(exchange.getIn().getHeader("
>>> >>> >> >> >> org.apache.camel.file.name").toString());
>>> >>> >> >> >>                         defaultMessage.setBody(fileModel);
>>> >>> >> >> >>                         exchange.setOut(defaultMessage);
>>> >>> >> >> >>                         logger.debug("Successfuly Copied
>>> File.");
>>> >>> >> >> >>                     }
>>> >>> >> >> >>                     catch (Exception e) {
>>> >>> >> >> >>                         logger.error(e.getMessage());
>>> >>> >> >> >>                         e.printStackTrace();
>>> >>> >> >> >>                     }
>>> >>> >> >> >>                 }
>>> >>> >> >> >>
>>> >>> >> >> >>                 private void logExchangeDetails(Exchange
>>> >>> exchange) {
>>> >>> >> >> >>                     if(logger.isDebugEnabled()) {
>>> >>> >> >> >>                         logger.debug(exchange.getIn() + "");
>>> >>> >> >> >>
>>> >>> >> >> >> logger.debug(exchange.getIn().getClass().getName());
>>> >>> >> >> >>
>>> logger.debug(exchange.getIn().getHeader("
>>> >>> >> >> >> org.apache.camel.file.name").toString());
>>> >>> >> >> >>                         logger.debug(exchange.getOut() + "");
>>> >>> >> >> >>                     }
>>> >>> >> >> >>                 }
>>> >>> >> >> >>
>>> >>> >> >> >>             }).to("direct:processingQueue");
>>> >>> >> >> >>
>>> >>> >> >> >> Thanks In Advance
>>> >>> >> >> >>
>>> >>> >> >> >>
>>> >>> >> >> >> On Thu, Jul 16, 2009 at 1:02 PM, Claus Ibsen <
>>> >>> claus.ib...@gmail.com
>>> >>> >> >> >wrote:
>>> >>> >> >> >>
>>> >>> >> >> >>> Hi
>>> >>> >> >> >>>
>>> >>> >> >> >>> On Thu, Jul 16, 2009 at 6:29 AM, Carlo Camerino<
>>> >>> >> >> carlo.camer...@gmail.com>
>>> >>> >> >> >>> wrote:
>>> >>> >> >> >>> > hi,
>>> >>> >> >> >>> >
>>> >>> >> >> >>> > i'm currently using file component in camel 2.0-M2. I'm
>>> >>> finding
>>> >>> >> out
>>> >>> >> >> that
>>> >>> >> >> >>> > it's not working properly already unlike in camel 1.6
>>> below.
>>> >>> >> >> >>> > is there any changes that I need to be implemented?
>>> >>> >> >> >>> >
>>> >>> >> >> >>> > The same route that I used for Camel 1.5 is not working
>>> for
>>> >>> camel
>>> >>> >> >> 2.0-M2
>>> >>> >> >> >>>
>>> >>> >> >> >>> Camel 2 have a rewritten file component so some options in
>>> 1.5
>>> >>> is eg
>>> >>> >> >> >>> not the same in 2.0.
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>> >
>>> >>> >> >> >>> > It's not getting properly from the directory that I set it
>>> to
>>> >>> get
>>> >>> >> >> from.
>>> >>> >> >> >>> > Do I need to change anything?
>>> >>> >> >> >>>
>>> >>> >> >> >>> First you need to post what the problem is. Writing that X
>>> does
>>> >>> not
>>> >>> >> >> >>> work is not gonna help to much without
>>> >>> >> >> >>> being more specific.
>>> >>> >> >> >>>
>>> >>> >> >> >>> And also posting your route will help.
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>> >
>>> >>> >> >> >>> > Should I use file2 instead?
>>> >>> >> >> >>> >
>>> >>> >> >> >>>
>>> >>> >> >> >>> No there is no file2 as such. Its just the camel
>>> documentation
>>> >>> being
>>> >>> >> >> >>> divided into the old and the new (file2).
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>> > Carlo
>>> >>> >> >> >>> >
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>>
>>> >>> >> >> >>> --
>>> >>> >> >> >>> Claus Ibsen
>>> >>> >> >> >>> Apache Camel Committer
>>> >>> >> >> >>>
>>> >>> >> >> >>> Open Source Integration: http://fusesource.com
>>> >>> >> >> >>> Blog: http://davsclaus.blogspot.com/
>>> >>> >> >> >>> Twitter: http://twitter.com/davsclaus
>>> >>> >> >> >>>
>>> >>> >> >> >>
>>> >>> >> >> >>
>>> >>> >> >> >
>>> >>> >> >>
>>> >>> >> >>
>>> >>> >> >>
>>> >>> >> >> --
>>> >>> >> >> Claus Ibsen
>>> >>> >> >> Apache Camel Committer
>>> >>> >> >>
>>> >>> >> >> Open Source Integration: http://fusesource.com
>>> >>> >> >> Blog: http://davsclaus.blogspot.com/
>>> >>> >> >> Twitter: http://twitter.com/davsclaus
>>> >>> >> >>
>>> >>> >> >
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >> --
>>> >>> >> Claus Ibsen
>>> >>> >> Apache Camel Committer
>>> >>> >>
>>> >>> >> Open Source Integration: http://fusesource.com
>>> >>> >> Blog: http://davsclaus.blogspot.com/
>>> >>> >> Twitter: http://twitter.com/davsclaus
>>> >>> >>
>>> >>> >
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> Claus Ibsen
>>> >>> Apache Camel Committer
>>> >>>
>>> >>> Open Source Integration: http://fusesource.com
>>> >>> Blog: http://davsclaus.blogspot.com/
>>> >>> Twitter: http://twitter.com/davsclaus
>>> >>>
>>> >>
>>> >>
>>> >
>>>
>>>
>>>
>>> --
>>> Claus Ibsen
>>> Apache Camel Committer
>>>
>>> Open Source Integration: http://fusesource.com
>>> Blog: http://davsclaus.blogspot.com/
>>> Twitter: http://twitter.com/davsclaus
>>>
>>
>>
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Reply via email to