I mean documenting using the system/routes by drawing diagrams with the symbols for the patterns from the EIP book.
Claus Ibsen-2 wrote: > > On Thu, Feb 18, 2010 at 12:52 PM, ankelee <[email protected]> wrote: >> >> On another note: >> I'm trying to design this system using the EIP visual notation. I'm not >> sure >> how to go about this and error handling in general. Are these types of >> things supposed to be left out and implicitly handled by the messagning >> system, or what is the general practice here? >> > > What do you mean by visual EIP? Do you use FUSE Integration Designer > or other graphical tooling? > > There is no true story about error handling. Its hard and you gotta > deal with it per use case. > > >> >> >> Claus Ibsen-2 wrote: >>> >>> On Wed, Feb 17, 2010 at 8:01 PM, ankelee <[email protected]> >>> wrote: >>>> >>>> The latter two suggestions I can get to work, but I just get null when >>>> trying >>>> to get the body as a String. >>>> >>>> I'm not sure what is going on behind the scenes here. As stated I want >>>> to >>>> be >>>> able to recover from an exception if a transformation goes wrong and >>>> write >>>> the file to an error directory, and another directory if everything >>>> succeeds. Is Camel keeping the original file "safe" internally no >>>> matter >>>> which way I do it? Can I always use the file handle to get first >>>> original >>>> message? >>> >>> The file component can do this by default using these options: >>> moveFailed = move to a error folder if processing of the file failed >>> move = move to a backup folder if processing succeeded >>> >>> http://camel.apache.org/file2.html >>> >>> So is this not something like that you want to do? >>> >>> >>> >>>> >>>> getUnitOfWork() will always refer to the original entry point of the >>>> message >>>> or? I thought it would only keep knowledge about the latest node that >>>> the >>>> message had been through. >>>> >>>> >>>> >>>> Claus Ibsen-2 wrote: >>>>> >>>>> On Wed, Feb 17, 2010 at 5:04 PM, ankelee <[email protected]> >>>>> wrote: >>>>>> >>>>>> Hello >>>>>> >>>>>> I'm trying to build a system where I consume files from a directory, >>>>>> perform >>>>>> transformations in several steps and finally deliver at an endpoint. >>>>>> In >>>>>> case >>>>>> the delivery of the transformed message succeeds, I want to route a >>>>>> copy >>>>>> of >>>>>> the original file as it was before consumation to a backup directory >>>>>> on >>>>>> disk. If the transformation fails, I want a copy of the original file >>>>>> copied >>>>>> to an error directory. >>>>>> >>>>>> I have thought up a couple of solutions but I don't think they are >>>>>> best >>>>>> practice. One is somehow keeping a copy in a queue and then going >>>>>> back >>>>>> and >>>>>> identifying on an id and copy the. The other one is bundling the >>>>>> original >>>>>> file with the transforming message and then extracting the original >>>>>> file >>>>>> and >>>>>> write it to the according directory/queue. >>>>>> >>>>>> What kind of approach would be good? >>>>>> -- >>>>> >>>>> In the future Camel will have a some sort of better API to traverse >>>>> the message history so you can see the modifications. >>>>> >>>>> Anyway the original input message is avail as follows >>>>> >>>>> Exchange exchange = ... >>>>> >>>>> Message in = exchange.getUnitOfWork().getOriginalInMessage(); >>>>> // will read the file content >>>>> String body = in.getBody(String.class); >>>>> >>>>> but as yours is a file you should be able to do >>>>> GenericFile<File> file = in.getBody(GenericFile.class); >>>>> >>>>> if you want to use the file handle instead. >>>>> >>>>> >>>>> You can also just extract the file name from the header and do >>>>> >>>>> File file = new File(exchange.getIn().getHeader(Exchange.FILE_NAME, >>>>> String.class)); >>>>> >>>>> >>>>> >>>>>> View this message in context: >>>>>> http://old.nabble.com/Keep-original-message-several-%22steps%22-back.-tp27626057p27626057.html >>>>>> Sent from the Camel - Users mailing list archive at Nabble.com. >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Claus Ibsen >>>>> Apache Camel Committer >>>>> >>>>> Author of Camel in Action: http://www.manning.com/ibsen/ >>>>> Open Source Integration: http://fusesource.com >>>>> Blog: http://davsclaus.blogspot.com/ >>>>> Twitter: http://twitter.com/davsclaus >>>>> >>>>> >>>> >>>> -- >>>> View this message in context: >>>> http://old.nabble.com/Keep-original-message-several-%22steps%22-back.-tp27626057p27628689.html >>>> Sent from the Camel - Users mailing list archive at Nabble.com. >>>> >>>> >>> >>> >>> >>> -- >>> Claus Ibsen >>> Apache Camel Committer >>> >>> Author of Camel in Action: http://www.manning.com/ibsen/ >>> Open Source Integration: http://fusesource.com >>> Blog: http://davsclaus.blogspot.com/ >>> Twitter: http://twitter.com/davsclaus >>> >>> >> >> -- >> View this message in context: >> http://old.nabble.com/Keep-original-message-several-%22steps%22-back.-tp27626057p27637396.html >> Sent from the Camel - Users mailing list archive at Nabble.com. >> >> > > > > -- > Claus Ibsen > Apache Camel Committer > > Author of Camel in Action: http://www.manning.com/ibsen/ > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus > > -- View this message in context: http://old.nabble.com/Keep-original-message-several-%22steps%22-back.-tp27626057p27646285.html Sent from the Camel - Users mailing list archive at Nabble.com.
