Return-Path: X-Original-To: apmail-camel-users-archive@www.apache.org Delivered-To: apmail-camel-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9588B10C0C for ; Tue, 14 Jan 2014 13:44:13 +0000 (UTC) Received: (qmail 90027 invoked by uid 500); 14 Jan 2014 13:44:12 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 89994 invoked by uid 500); 14 Jan 2014 13:44:12 -0000 Mailing-List: contact users-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@camel.apache.org Delivered-To: mailing list users@camel.apache.org Delivered-To: moderator for users@camel.apache.org Received: (qmail 73810 invoked by uid 99); 14 Jan 2014 13:34:58 -0000 X-ASF-Spam-Status: No, hits=2.7 required=5.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_REPLYTO_END_DIGIT,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 184167.82907.bm@omp1023.mail.bf1.yahoo.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1389706469; bh=fNBcYeaPpP7xgp4P1lbMLLHBojbGSb6+T2ahabUVbl8=; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=a1irxULrcLDRGjlwzohPj/6dWseHt6J1MlqYz/GfkGnSXmuJnEtBKVhLDzCdwVuKcoUQ4mTCP86Vt0DPbXsLmzptB/7pWpnbRF18XgYsRVq0cVtwaLDy+fXg17969YV2MZLb+mgptGITs9O4kde0wflFY6/G9cxZnlooqc0FJgk= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=UNGBg1ZQJW6JzMUGlIEGmbCBygqdocXo5mAAPPQol2KvVoOdxQLNs3IsdGUNUeTLtm9D5L6r8oboJoEn4kV0WL26Bt9/I+zn+/4y/tWkFhMHNjCOszD2KAZ1JvcO0oJXdah3O6pxGBVMYL5hKRH7G23RhnJ3p52rV+sgZz4Q79Q=; X-YMail-OSG: us_2Wh4VM1lqOknWcVtUY.QkfxpJBrER5E5zuJk8cpaFlzM BwhZ4rJoqr3O7i_SqPBzowb1Uh.HBHdva768gvSyiunhe4mxw9EWyMQIaFcj szF1Pl9duZBOxvW2Y4hJjwRJCHYO633Cq2F3Z8auV0SFFONtNSb2wH1bZdfH 1bsW3fn8G7k02eygvowDW_oZfTeI1qTVYkuUMwsNY2RTVGxgYfwADRGZqO6R 9tZmVcWllnT9LXLDVhQ1ScSSeMVhrdnSMzIvffdSiaHCnnrVCAC.xVxbGUoy UH3MRKFejiE1o52hpS14BuCj1jRV3Q3xvCLFfStoJXoVg5XJp38EH08TfD_8 TPqPfz0Anz4gB8mgPs8RFF35atwGfYdCV41WGJtU6u0Elqr_.JOp43nNoH3p 4R3lgvaYNhYJ8tqObvKjR0fsisJ7.g0B.HtNaTGb7F7qKPs3NsKqq6VeYqbJ VpcUCaGNko_orMUoP7W7wwRa.mkCcBD5nqAHHbyeX8f8Zl3XqQACwGUDN7ug KSceIjxuyqjn6Dx4xito000wXWsyNtkU3nN_OU9evSVqTXyumfdEUxiwrcDw XbaW7cm6S0iZ6GqLoUqc2hV_NwC5ENgOcbN8TAYHRJsa17lhvCh3m_yhLjI0 AYSQHR.y.WAOSpYwsx3BDxIpAjk_dAKVaQYbt_W3EoTK4hWODNui8ZUfjVCt Rpopk4N3Ow6T3BS6ebivbdicOVpgOwtd0oWujpi3Ltssf7baoew-- X-Rocket-MIMEInfo: 002.001,SGkgU2FuamF5LAoKVGhhbmtzIGZvciB0aGUgcXVpY2sgcmVzcG9uc2UuwqAgSGVyZSdzIHRoZSBjb2RlIGZvciB0aGUgcm91dGU6CgoKcHVibGljIGNsYXNzIERQVUJGaWxlUHJvY2Vzc1JvdXRlIGV4dGVuZHMgUm91dGVCdWlsZGVyIGltcGxlbWVudHMgSW5pdGlhbGl6aW5nQmVhbiwgRGlzcG9zYWJsZUJlYW4gewrCoArCoMKgwqAgcHVibGljIHN0YXRpYyBmaW5hbCBsb25nIFJFQURfTE9DS19USU1FT1VUID0gMTAwMDA7CsKgwqDCoCBwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBEUFVCX1BSRl9TVkNfQ0QBMAEBAQE- X-Mailer: YahooMailWebService/0.8.172.614 References: <1389655288.8707.YahooMailNeo@web141202.mail.bf1.yahoo.com> Message-ID: <1389706468.19979.YahooMailNeo@web141205.mail.bf1.yahoo.com> Date: Tue, 14 Jan 2014 05:34:28 -0800 (PST) From: Douglas Slattery Reply-To: Douglas Slattery Subject: Re: Using Camel File component to Poll a directory (but not read the files) To: Sanjay Bhattacharya , "users@camel.apache.org" In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="-1100835386-1373067261-1389706468=:19979" X-Virus-Checked: Checked by ClamAV on apache.org ---1100835386-1373067261-1389706468=:19979 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Hi Sanjay,=0A=0AThanks for the quick response.=A0 Here's the code for the r= oute:=0A=0A=0Apublic class DPUBFileProcessRoute extends RouteBuilder implem= ents InitializingBean, DisposableBean {=0A=A0=0A=A0=A0=A0 public static fin= al long READ_LOCK_TIMEOUT =3D 10000;=0A=A0=A0=A0 public static final String= DPUB_PRF_SVC_CD =3D "DPUB";=0A=A0=A0=A0 public static final String DPUB_PR= F_MVS_IND_ATTR_CD =3D "MVS_IND";=0A=A0=0A=A0=A0=A0 private static final Str= ing DIRECT_SEND_DATA_TO_MVS =3D "direct:send-data-to-mvs";=0A=A0=A0=A0 priv= ate static final String BEAN_EXCEPTION_HANDLER =3D "bean:exceptionHandler";= =0A=A0=A0=A0 private static final int DEFAULT_MOM_EXTENSIONS_MAX_RETRIES = =3D 3;=0A=A0=A0=A0 private static final long DEFAULT_REDELIVER_DELAY =3D 10= 000L;=0A=A0=A0=A0 private static final Logger LOGGER =3D LoggerFactory.getL= ogger(DPUBFileProcessRoute.class);=0A=A0=A0=A0 public static final String L= OCK_EXT =3D "camelLock";=0A=A0=0A=A0=A0=A0 private int momExcetionsMaxRetri= es =3D DEFAULT_MOM_EXTENSIONS_MAX_RETRIES;=0A=A0=A0=A0 private long redeliv= erDelay =3D DEFAULT_REDELIVER_DELAY;=0A=A0=0A=A0=A0=A0 private String dpubF= ileSource;=0A=A0=A0=A0 private String dpubFileDestination;=0A=A0=A0=A0 priv= ate String dpubMQName;=0A=A0=A0=A0 private boolean enableMQ =3D true; // by= default it is true=0A=A0=A0=A0 private String camelFileName;=0A=A0=A0=A0 p= rivate long camelReadLockTimeoutMs =3D READ_LOCK_TIMEOUT;=0A=A0=0A=A0=A0=A0= private DPUBFileComponent component =3D null;=0A=A0=0A=A0=A0=A0 private fi= nal Predicate isMqEnabled =3D new Predicate() {=0A=A0=A0=A0=A0=A0=A0=A0 @Ov= erride=0A=A0=A0=A0=A0=A0=A0=A0 public boolean matches(Exchange exchange) {= =0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return isEnableMQ();=0A=A0=A0=A0=A0=A0= =A0=A0 }=0A=A0=A0=A0 };=0A=A0=0A=A0=A0=A0 @Override=0A=A0=A0=A0 public void= configure() {=0A=A0=A0=A0=A0=A0=A0=A0 Endpoint ep;=0A=A0=0A=A0=A0=A0=A0=A0= =A0=A0 component =3D new DPUBFileComponent();=0A=A0=A0=A0=A0=A0=A0=A0 compo= nent.setCamelContext(getContext());=0A=A0=0A=A0=A0=A0=A0=A0=A0=A0 onExcepti= on(MessagingException.class)=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 .maximumRedeliveries(getMomExcetionsMaxRetries())=0A=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0 .redeliverDelay(getRedeliverDelay())=0A=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 .handled(false)=0A=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 .to(BEAN_EXCEPTION_HANDLER);=0A=A0=A0=A0=A0= =A0 =A0=A0onException(Throwable.class)=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 .handled(false)=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 .to(BEAN_EXCEPTION_HANDLER);=0A=A0=0A=A0=A0=A0=A0=A0=A0=A0 final String= string =3D "file:" + getDpubFileSource()=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 + "?filter=3D#dpubFileFilter&move=3D" + getDpubFileDestinat= ion()=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0=A0=A0=A0+ "&moveFailed=3D.err= " + "&readLock=3Dchanged"=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 += "&readLockTimeout=3D" + camelReadLockTimeoutMs;=0A=A0=0A=A0=A0=A0=A0=A0=A0= =A0 try {=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (camelReadLockTimeoutMs > = 0) {=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ep =3D component.creat= eEndpoint(string);=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 from(ep)= .process(new ExtractStationInfoProcessor())=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 .to(DIRECT_SEND_DATA_TO_MVS).to(= "bean:updateQueueProcessor");=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 } else {= =0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 from(string).process(new E= xtractStationInfoProcessor())=0A=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0.to(DIRECT_SEND_DATA_TO_MVS).to("bean:updateQueu= eProcessor");=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 }=0A=A0=0A=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 from(DIRECT_SEND_DATA_TO_MVS)=0A=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 .split().method("dpubSplitterBean", "spli= tBody")=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 .choice= ().when(isMqEnabled).to(getDpubMQName());=0A=A0=0A=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 LOGGER.info(getClass().getCanonicalName() + " has been configured= ");=0A=A0=A0=A0=A0=A0=A0=A0 } catch (Exception e) {=0A=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 String errMsg =3D "Exception thrown creating Camel file route = endpoint during DPUB-DC startup.";=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 LOGG= ER.error(errMsg, e);=0A=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 dpubMetricsPublish= er.publish(ErrorInfo.DPUB_SERVER_DC_PROCESSING_ERROR.createAlert(errMsg, Se= verity.CRITICAL));=0A=A0=A0=A0=A0=A0=A0=A0 }=0A=A0=A0=A0 }=0A=A0=0A. . .=0A= =A0=0A}=0A=0ATake care,=0A- Doug=0A=0A=0A=0A=0AOn Tuesday, January 14, 2014= 2:21 AM, Sanjay Bhattacharya wrote:=0A =0ANothing seems= to be wrong with the code. Can you show the route?=A0=0A=0AThanks,=0ASanja= y=A0=0A=0A=0A=0AOn Tue, Jan 14, 2014 at 4:51 AM, Douglas Slattery wrote:=0A=0AHi,=0A>I'm not sure if this is the correct place to= post=0A>this, but I stumbled on it looking for an answer to my problem...= =0A>I have a wierd situation with a Camel route file=0A>component where the= content was being read and now does not appear to be=0A>so.=0A>I've observ= ed the situation from the following code=0A>snippet=0A>=0A>=0A>=A0=A0 @Over= ride=0A>=A0=A0 public void process(Exchange exchange)=0A>{=0A>=A0=A0=A0=A0= =A0=A0=A0=A0 =A0 =A0 =A0 =A0final String fileName =3D=0A>exchange.getIn().g= etHeader("CamelFileNameOnly", String.class);=0A>=A0=A0=A0=A0=A0=A0=A0=A0 if= (fileName !=3D null)=0A>{=0A>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 MDC.put(= "id",=0A>fileName);=0A>=A0=A0=A0=A0=A0=A0=A0=A0 }=0A>=A0=A0=A0=A0=A0=A0=A0= =A0 LOGGER.debug(">> {}",=0A>getClass().getSimpleName());=0A>=A0=A0=A0=A0= =A0=A0=A0=A0 Map hdrMap =3D=0A>exchange.getIn().getHeaders(= );=0A>=A0=A0=A0=A0=A0=A0=A0=A0 Map=0A>atchMap =3D exch= ange.getIn().getAttachments();=0A>=A0=A0=A0=A0=A0=A0=A0=A0 try {=0A>=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Object manBody =3D=0A>exchange.getIn().getMa= ndatoryBody();=0A>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Object manBodyAsStr = =3D=0A>exchange.getIn().getMandatoryBody(String.class);=0A>=A0=A0=A0=A0=A0= =A0=A0=A0 } catch=0A>(InvalidPayloadException e1) {=0A>=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 // TODO Auto-generated=0A>catch block=0A>=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0 e1.printStackTrace();=0A>=A0=A0=A0 }=0A>=0A>=0A>=A0= =A0=A0 final String fileContent =3D=0A>exchange.getIn().getBody(String.clas= s);=0A>=0A>=0A>=0A>Note that there are some extra lines of code I've=0A>thr= own in for troubleshooting. =A0Also, fileName is filled and fileContent is= =0A>null. :S =A0The file is a text file, so I don't get what's going=0A>ast= ray.=0A>I've even tried:=0A>final String fileContent =3D=0A>exchange.getIn(= ).getBody(byte[].class);=0A>=0A>=0A>just to test if Camel might be picking = up the file=0A>as binary, but fileContent is still null.=0A>I've been testi= ng this on a Win7 machine &=0A>haven't had the opportunity to try on a non-= MS machine yet.=0A>Hopefully, it is something simple (& expected)=0A>that i= f you are using a Windows puke machine, just use the pepto api=0A>:)=0A>Tha= nks a bunch,=0A>- Doug ---1100835386-1373067261-1389706468=:19979--