问题标签 [bindy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
521 浏览

csv - Camel csv splitter:解析动态标题

我正在用骆驼写一个 CSV 拆分器。我的要求是这些:

  1. 第一行是标题。
  2. 标头未定义。但可以包含任何属性
  3. 我需要拆分文件,然后每个拆分都包含一个键值属性映射。

样本 csv1:

预期分裂:

样本 csv2:

预期分裂:

如何使用 Bindy 或 BeanIO 在骆驼中实现这一点?

0 投票
2 回答
1416 浏览

apache-camel - 与本地不同的bindy csv编码

我在哪里可以定义输入文件的编码以便 Bindy 正确读取?我的输入文件是 ISO-8859-1,CRLF 我的本地是 UTF-8 (我不改变它...)

所以当我阅读我的文件时,一些字符是错误的......

骆驼:

宾迪:

0 投票
1 回答
378 浏览

apache-camel - 设置绑定字段的默认值

我正在生成一个由 Bindy 模型定义的大型 .CSV 文件。并非所有字段都已填写,因此有时我需要一个默认值,但我没有找到一个参数来定义它。

...

0 投票
1 回答
518 浏览

apache-camel - 绑定 paddingChar

在我的 Bindy 模型中,我想在一个字段上设置一个 paddingChar。我在文档中看到,使用@Fixed-length 记录我可以添加一个 paddingChar 属性,但使用@CsvRecord 似乎不可能?

此代码不使用“0”填充字段命令:

0 投票
1 回答
1754 浏览

java - 如何为 Camel Bindy 的模型类中的布尔字段设置默认值

我正在使用 Bindy 将 csv 文件数据映射到给定的模型类。整个过程工作正常,除了布尔字段的默认值。此字段不是 csv 文件的一部分,但在模型类中是进一步处理所必需的。我已将默认值设置为true,但这将被“忽略”false ,并且如果我运行骆驼路线,该字段当前始终设置为。

这是我的模型类的片段:

defaultValue需要一个字符串值,所以我不能将它设置为Boolean.TRUE. 我已经尝试过其他值,例如"TRUE""yes""y""1",但没有成功。

BindyCsvFactory的来源说 Format 类用于设置默认值,但它似乎无法处理布尔字段并使用默认值boolean而不是 this is false.

当前使用以下命令将语言环境设置为“en_Us” :

所以主要问题是:如何true在 Bindy 托管模型类中设置布尔字段的默认值?

0 投票
2 回答
1242 浏览

java - 如何在 Camel Bindy 中定义用于解析 BigDecimal 数字的分组分隔符?

我有一个 CSV 文件,其中包含这种格式的数字:1,234.56作为,分组分隔符和.小数分隔符。我想使用 Camel Bindy 将该数字解析为 BigDecimal。这是这个数字的模型类的一部分:

java.lang.NumberFormatException现在的问题是,即使应用了正确的模式,这也会导致错误。如果我从注释中删除该模式并从数据文件中的数字中删除分组分隔符,那么一切正常。或者,如果我使用Doubletype 而不是BigDecimal.

Camel Bindy 文档提到可以设置 BigDecimal 的分组分隔符,但该信息下方的表格表明该模式仅支持 Decimals 而不是 BigDecimal 类型。

此外,使用的FormatFactory类的源代码显示该模式不会用于 BigDecimal 类型。

所以我的问题是:如何为 BigDecimal 类型设置和使用分组分隔符,就像提到的文档一样?还是目前不支持此功能,我必须Double改用?

PS:语言环境当前设置为en_US.

0 投票
1 回答
1024 浏览

java - 在第一行加载带有标题的 CSV 文件时,有没有办法自动检测 FIELD / COLUMN 顺序?

我的 CSV 文件总是包含相同的字段或相同字段的子集。但是,它们来自不同的提供商,并且每个提供商都有不同的顺序。此外,如果该字段为空,则某些提供商会包含该字段,而其他提供商则将其删除。样本:

提供者 1.txt:

提供者 2.txt:

第一行始终是标题,并且标题始终相同(可能会省略一个或多个)。

我正在使用 Camel Route 进行处理,使用 Bindy 和带注释的类进行编组/解组。我对我的解决方案很满意,但是现在当我想处理不同的提供者时,我必须手动编辑 Bean 中字段的顺序。我的 Bean 中有这样的东西:

感觉很糟糕,我认为可能有一种方法可以从第一行推断字段。至少这是有道理的。我可以在处理器中做到这一点,但我喜欢 Bindy,它很棒,我想继续使用它。我想我可以为每个提供者使用不同的文件夹,并为每个文件夹使用不同的 bean,但这也不是我想要的。提供者可以更改顺序或字段,恕不另行通知。但他们总是需要在第一行发送字段。

所以最后一个问题:我可以使用Bindy (或其他组件,我愿意接受建议,我只是更喜欢继续使用Bindy)自动检测Camel中的CSV字段名称吗?

0 投票
0 回答
825 浏览

csv - 骆驼Bindy模型继承

我试图在使用bindy csv Dataformat(Camel 2.13.1)时进行一些继承我有一个抽象类和两个具体类,每个类都继承基类。

前任

当我在路线中使用具体类时,骆驼会抛出错误

好的,@CsvRecord 注解在抽象类上,无法被 Bindy Factory 识别。

但是如果我把这个注释放在每个具体的类上,我会得到另一个异常,因为 Bindy 没有找到第一个字段(pos = 1)。

我可以将这种模型与 Bindy csv Dataformat 一起使用吗?

0 投票
1 回答
2312 浏览

debugging - Apache camel bindy - how to log or debug

I'm trying to get some log informations from camel bindy. I had a working setup using an BindyCsvDataFormat bindyProduct with an annotated product-bean and an csv file as source.

Now I changed the CSV file and the annotated bean. The processing seams to get stuck within the bindy processor, but I do not get any Informations/logs. My debugProcessor is not reached at all. If I put it before the unmarshal step, then it logs some stuff and I can debug into it. I wonder why the new files do not fit / match any more and why there are no logs OR exceptions or whatever would be of an help.

Thanks in advance AJ

0 投票
1 回答
634 浏览

csv - 使用 BindyCsvDataFormat 解组 csv 和使用 Camel 解组 @CsvRecord 时出现 InstantiationException

使用 Camel,我将带有 CSV 的字符串发送到队列,在队列中将使用 BindyCsvDataFormat 将其解组为地图列表。我的问题很简单,为什么我会在这里收到 InstantiationException?CSV 格式或我设置绑定到哪个类的方式有问题?

路由看起来像这样:

Kostnadssted 看起来像这样:

我像这样发送到队列:

公共类 KostnadsstedRoutingTest {

}

我得到: