Hi Thanks for reporting so this morning I fixed the bug and it works in upcoming releases.
On Thu, Mar 2, 2023 at 4:41 PM Chirag <chirag.sangh...@gmail.com> wrote: > JIRA Logged. > > https://issues.apache.org/jira/projects/CAMEL/issues/CAMEL-19111 > > ચિરાગ/चिराग/Chirag > ------------------------------------------ > Sent from My Gmail Account > > On Thu, Mar 2, 2023 at 9:33 AM Chirag <chirag.sangh...@gmail.com> wrote: > > > > Thanks Claus. > > > > with expression containing //Batchmaster, It does not seem to like > xtokenize > > > > 2023-03-02 09:29:03.391 INFO 18204 --- [ main] > > org.apache.camel.main.MainSupport : Apache Camel (JBang) 3.20.2 is > > starting > > 2023-03-02 09:29:03.572 INFO 18204 --- [ main] > > org.apache.camel.main.MainSupport : Using Java 19.0.1 with PID > > 18204. Started by csanghavi in C:\work\batchsplit > > 2023-03-02 09:29:03.591 INFO 18204 --- [ main] > > mel.cli.connector.LocalCliConnector : Camel CLI enabled (local) > > org.apache.camel.RuntimeCamelException: Error pre-parsing resource: > > file:batchsplitversion1.camel.yaml > > at > org.apache.camel.dsl.yaml.YamlRoutesBuilderLoader.preParseRoute(YamlRoutesBuilderLoader.java:766) > > at > org.apache.camel.impl.engine.DefaultRoutesLoader.preParseRoute(DefaultRoutesLoader.java:138) > > at > org.apache.camel.main.RoutesConfigurer.configureModeline(RoutesConfigurer.java:283) > > at > org.apache.camel.main.BaseMainSupport.modelineRoutes(BaseMainSupport.java:629) > > at > org.apache.camel.main.BaseMainSupport.autoconfigure(BaseMainSupport.java:485) > > at > org.apache.camel.main.MainSupport.autoconfigure(MainSupport.java:74) > > at > org.apache.camel.main.KameletMain.autoconfigure(KameletMain.java:466) > > at > org.apache.camel.main.BaseMainSupport.postProcessCamelContext(BaseMainSupport.java:693) > > at > org.apache.camel.main.MainSupport.initCamelContext(MainSupport.java:404) > > at org.apache.camel.main.KameletMain.doInit(KameletMain.java:265) > > at > org.apache.camel.support.service.BaseService.init(BaseService.java:83) > > at > org.apache.camel.support.service.BaseService.start(BaseService.java:111) > > at > org.apache.camel.dsl.jbang.core.commands.Run.runKameletMain(Run.java:732) > > at org.apache.camel.dsl.jbang.core.commands.Run.run(Run.java:564) > > at > org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:218) > > at org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:77) > > at picocli.CommandLine.executeUserObject(CommandLine.java:2041) > > at picocli.CommandLine.access$1500(CommandLine.java:148) > > at > picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461) > > at picocli.CommandLine$RunLast.handle(CommandLine.java:2453) > > at picocli.CommandLine$RunLast.handle(CommandLine.java:2415) > > at > picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273) > > at picocli.CommandLine$RunLast.execute(CommandLine.java:2417) > > at picocli.CommandLine.execute(CommandLine.java:2170) > > at > org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:134) > > at main.CamelJBang.main(CamelJBang.java:36) > > Caused by: mapping values are not allowed here > > in file:batchsplitversion1.camel.yaml, line 10, column 24: > > xtokenize: > > ^ > > > > at > org.snakeyaml.engine.v2.scanner.ScannerImpl.fetchValue(ScannerImpl.java:822) > > at > org.snakeyaml.engine.v2.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:333) > > at > org.snakeyaml.engine.v2.scanner.ScannerImpl.checkToken(ScannerImpl.java:192) > > at > org.snakeyaml.engine.v2.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:616) > > at > org.snakeyaml.engine.v2.parser.ParserImpl.lambda$produce$0(ParserImpl.java:181) > > at java.base/java.util.Optional.ifPresent(Optional.java:178) > > > > > > > > if i don't provide expression value: > > > > 2023-03-02 09:30:28.444 INFO 2468 --- [ main] > > org.apache.camel.main.MainSupport : Apache Camel (JBang) 3.20.2 is > > starting > > 2023-03-02 09:30:28.594 INFO 2468 --- [ main] > > org.apache.camel.main.MainSupport : Using Java 19.0.1 with PID 2468. > > Started by csanghavi in C:\work\batchsplit > > 2023-03-02 09:30:28.611 INFO 2468 --- [ main] > > mel.cli.connector.LocalCliConnector : Camel CLI enabled (local) > > org.apache.camel.FailedToCreateRouteException: Failed to create route > > route-a6b4 at: >>> Split[xtokenize{} -> > > [To[file:/work/batchsplit/out?fileName=${exchangeId}.xml]]] <<< in > > route: Route(route-a6b4)[From[file:/work/batchsplit/in] -> [Split[x... > > because of Namespaces is not instance of java.util.Map or > > org.apache.camel.support.builder.Namespaces > > at > org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:215) > > at > org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:75) > > at > org.apache.camel.impl.DefaultModelReifierFactory.createRoute(DefaultModelReifierFactory.java:49) > > at > org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:937) > > at > org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:800) > > at > org.apache.camel.impl.engine.AbstractCamelContext.doInit(AbstractCamelContext.java:3008) > > at > org.apache.camel.support.service.BaseService.init(BaseService.java:83) > > at > org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2679) > > at > org.apache.camel.support.service.BaseService.start(BaseService.java:111) > > at > org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2698) > > at > org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:262) > > at > org.apache.camel.main.KameletMain.doStart(KameletMain.java:274) > > at > org.apache.camel.support.service.BaseService.start(BaseService.java:119) > > at > org.apache.camel.dsl.jbang.core.commands.Run.runKameletMain(Run.java:732) > > at org.apache.camel.dsl.jbang.core.commands.Run.run(Run.java:564) > > at > org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:218) > > at org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:77) > > at picocli.CommandLine.executeUserObject(CommandLine.java:2041) > > at picocli.CommandLine.access$1500(CommandLine.java:148) > > at > picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461) > > at picocli.CommandLine$RunLast.handle(CommandLine.java:2453) > > at picocli.CommandLine$RunLast.handle(CommandLine.java:2415) > > at > picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273) > > at picocli.CommandLine$RunLast.execute(CommandLine.java:2417) > > at picocli.CommandLine.execute(CommandLine.java:2170) > > at > org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:134) > > at main.CamelJBang.main(CamelJBang.java:36) > > Caused by: java.lang.IllegalArgumentException: Namespaces is not > > instance of java.util.Map or > > org.apache.camel.support.builder.Namespaces > > at > org.apache.camel.language.xtokenizer.XMLTokenizeLanguage.createExpression(XMLTokenizeLanguage.java:119) > > at > org.apache.camel.reifier.language.XMLTokenizerExpressionReifier.createExpression(XMLTokenizerExpressionReifier.java:42) > > at > org.apache.camel.reifier.language.ExpressionReifier.createExpression(ExpressionReifier.java:177) > > at > org.apache.camel.reifier.AbstractReifier.createExpression(AbstractReifier.java:119) > > at > org.apache.camel.reifier.SplitReifier.createProcessor(SplitReifier.java:63) > > at > org.apache.camel.reifier.ProcessorReifier.makeProcessor(ProcessorReifier.java:857) > > at > org.apache.camel.reifier.ProcessorReifier.addRoutes(ProcessorReifier.java:598) > > at > org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:211) > > > > Let me get a JIRA started. > > > > ચિરાગ/चिराग/Chirag > > ------------------------------------------ > > Sent from My Gmail Account > > > > On Wed, Mar 1, 2023 at 4:14 PM Claus Ibsen <claus.ib...@gmail.com> > wrote: > > > > > > Hi > > > > > > Oh can you try using expression instead of path, so its > > > > > > expression: > > > xtokenize: > > > id: xtokenize-460a > > > expression: //Batchmaster > > > mode: w > > > > > > On Wed, Mar 1, 2023 at 10:13 PM Claus Ibsen <claus.ib...@gmail.com> > wrote: > > > > > > > Hi > > > > > > > > Ah there is a point that xtokenize is using @XmlValue to set that > "path". > > > > And the yaml-dsl is potentially not handing this correctly. > > > > Can you create a JIRA ticket and I will try to find some time to look > > > > at it? > > > > > > > > On Wed, Mar 1, 2023 at 7:35 PM Chirag <chirag.sangh...@gmail.com> > wrote: > > > > > > > >> I am using 3.20.0 > > > >> > > > >> > > > >> Here is my route in XML DSL: > > > >> <?xml version="1.0" encoding="UTF-8"?> > > > >> <!-- camel-k: language=xml --> > > > >> > > > >> <routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >> xmlns="http://camel.apache.org/schema/spring" > > > >> xsi:schemaLocation=" > > > >> http://camel.apache.org/schema/spring > > > >> https://camel.apache.org/schema/spring/camel-spring.xsd > "> > > > >> > > > >> <!-- Write your routes here, for example: --> > > > >> > > > >> <route> > > > >> <from uri="file:///c://work//batchsplit//in"/> > > > >> <split streaming="true"> > > > >> <xtokenize mode="w">//BatchMaster</xtokenize> > > > >> <to > uri="file:///c://work//batchsplit//out?fileName=${exchangeId}.xml"/> > > > >> </split> > > > >> </route> > > > >> > > > >> </routes> > > > >> > > > >> > > > >> Trying to redefine this to be Yaml so that this could be > > > >> edited/maintained thru Karavan. > > > >> > > > >> ચિરાગ/चिराग/Chirag > > > >> ------------------------------------------ > > > >> Sent from My Gmail Account > > > >> On Wed, Mar 1, 2023 at 1:14 AM Claus Ibsen <claus.ib...@gmail.com> > wrote: > > > >> > > > > >> > Hi > > > >> > > > > >> > What karavan version do you use? > > > >> > > > > >> > xtokenize only have > > > >> > - mode > > > >> > - group > > > >> > > > > >> > as options so it may seem you use an outdated karavan version, or > > > >> something? > > > >> > > > > >> > You can try karavan online via > > > >> > https://karavan.space/ > > > >> > > > > >> > And I copied your code and there is no "path" in the UI. Remove > that. > > > >> > > > > >> > > > > >> > > > > >> > On Tue, Feb 28, 2023 at 7:40 PM Chirag <chirag.sangh...@gmail.com > > > > > >> wrote: > > > >> > > > > >> > > This is actually two questions in one: > > > >> > > > > > >> > > I am trying to build YAML to perform an XML Splitter (I was > able to > > > >> > > build one using XML DSL). > > > >> > > > > > >> > > Now trying with YAML DSL. > > > >> > > > > > >> > > Here is YAML that I came up with using Karavan that looks / > feels > > > >> > > similar to XML DSL. > > > >> > > - route: > > > >> > > id: route-a6b4 > > > >> > > from: > > > >> > > uri: file:/work/batchsplit/in > > > >> > > id: from-d1ca > > > >> > > steps: > > > >> > > - split: > > > >> > > id: split-6d45 > > > >> > > expression: > > > >> > > xtokenize: > > > >> > > id: xtokenize-460a > > > >> > > path: //Batchmaster > > > >> > > mode: w > > > >> > > streaming: true > > > >> > > steps: > > > >> > > - to: > > > >> > > uri: > > > >> file:/work/batchsplit/out?fileName=${exchangeId}.xml > > > >> > > id: to-1a10 > > > >> > > > > > >> > > It is erroring out: > > > >> > > > > > >> > > C:\work\batchsplit>camel run batchsplitversion1.camel.yaml > > > >> > > 2023-02-28 13:25:15.565 INFO 5972 --- [ main] > > > >> > > org.apache.camel.main.MainSupport : Apache Camel (JBang) > 3.20.2 is > > > >> > > starting > > > >> > > 2023-02-28 13:25:15.860 INFO 5972 --- [ main] > > > >> > > org.apache.camel.main.MainSupport : Using Java 19.0.1 with > PID 5972. > > > >> > > Started by csanghavi in C:\work\batchsplit > > > >> > > 2023-02-28 13:25:15.873 INFO 5972 --- [ main] > > > >> > > mel.cli.connector.LocalCliConnector : Camel CLI enabled (local) > > > >> > > Unsupported field: path > > > >> > > in file:batchsplitversion1.camel.yaml, line 12, column 23: > > > >> > > path: "//Batchmaster" > > > >> > > ^ > > > >> > > > > > >> > > at > > > >> > > > > > >> > org.apache.camel.dsl.yaml.common.YamlDeserializerBase.handleUnknownProperty(YamlDeserializerBase.java:132) > > > >> > > at > > > >> > > > > > >> > org.apache.camel.dsl.yaml.common.YamlDeserializerBase.setProperties(YamlDeserializerBase.java:126) > > > >> > > at > > > >> > > > > > >> > org.apache.camel.dsl.yaml.common.YamlDeserializerBase.construct(YamlDeserializerBase.java:65) > > > >> > > > > > >> > > a) what would be the right way to provide xpath for splitting to > > > >> xtokenize. > > > >> > > b) how to provide that using Karavan (Screenshot attached). > > > >> > > > > > >> > > Info: > > > >> > > Karavan running within Visual Studio Code on Windows. Route > running > > > >> > > under Jbang 3.20.2 on Windows. > > > >> > > > > > >> > > Regards, > > > >> > > > > > >> > > ચિરાગ/चिराग/Chirag > > > >> > > ------------------------------------------ > > > >> > > Sent from My Gmail Account > > > >> > > > > > >> > > > > >> > > > > >> > -- > > > >> > Claus Ibsen > > > >> > ----------------- > > > >> > @davsclaus > > > >> > Camel in Action 2: https://www.manning.com/ibsen2 > > > >> > > > > > > > > > > > > -- > > > > Claus Ibsen > > > > ----------------- > > > > @davsclaus > > > > Camel in Action 2: https://www.manning.com/ibsen2 > > > > > > > > > > > > > -- > > > Claus Ibsen > > > ----------------- > > > @davsclaus > > > Camel in Action 2: https://www.manning.com/ibsen2 > -- Claus Ibsen ----------------- @davsclaus Camel in Action 2: https://www.manning.com/ibsen2