問題タブ [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.
java - Camel CSVRecord Camel Bindy
csvファイルを解析するためにbindy(2.16.0)でキャメルを使用しています。ファイルには、ヘッダーとフッターが含まれています。どちらも、他のすべてのレコードの共通データを記述するメタデータとして使用されます。(お客様が定義したため、CSV 形式を変更することはできません)
Bindy を使用してデータを解析しています。私が抱えている問題は、CSVRecord ではフッターを除外できないことです。ヘッダーはスキップできますが、データ形式が異なるためフッターを解析できないため、データの解析に失敗します。
CSVRecord バインディングから最後の行/フッターを除外する方法はありますか、または別の方法でキャメルを読み取って最後の行を削除する方法はありますか?
java - Camel Bindy Fixed Length Format : 継承されたクラスを使用するには?
CommonRequest と AccountRequest の 2 つのクラスがあります。
そして AccountRequest.java
cmNumberaccountNumberaccountTypeaccountLocationのようなレコードを非整列化しようとすると
一般的なリクエストを適切にアンマーシャリングしますが、AccountRequest をアンマーシャリングしようとすると、一般的なリクエストに残された位置から続行するのではなく、最初から位置を取ります。
そして、これは AccountRequest のフィールド全体を一致させません。
apache-camel - Camel Bindy を使用してヘッダーとフッターを含むフラット ファイルを生成する方法
現在、camel Bindy を使用して POJO からフラット ファイルを生成できますが、完全なファイルにヘッダーとフッターを追加することはできません。
しかし、ファイルにヘッダー/フッターを追加しようとすると、単一のレコードに追加されますが、ファイル内の各レコードではなく、ファイル全体に単一のヘッダー/フッターを追加する必要があります。
以下はコード スニペットです。
プロセスクラスは
POJO クラス
ビンディクラス
apache-camel - Apache Camel Bindy - フィールドのデータ型をカスタマイズできますか?
「A」または「B」としましょう。FF4J (固定形式 4J) を使用する場合は、フォーマッターを使用して列挙型を定義できます。Apache Camel Bindy はどうですか。FF4J フォーマッターに似たものは見つかりません。
apache-camel - Apache Camel BindyFixedLengthDataFormat オブジェクトを介して isHeader/isFooter 注釈付きプロパティを取得する方法
これらのレコードの 1 つを介して BindyFixedLengthDataFormat オブジェクトを初期化する FixedLengthRecord オブジェクトがいくつかあります。最初に、その POJO がヘッダーまたはフッターであるかどうかを知る必要があります (これらの pojo に注釈を付けました)。次に、その他の手順を実行します。
私の問題は、その FixedLengthRecord isHeader/isFooter であるかどうかを取得する方法がわからないことです。どんな助けにも感謝します。(Google は役に立ちませんでした。)
apache-camel - bindy (Apache Camel DataFormat - FixedLength) を初期化し、同じルートで使用することが可能
私の入力ファイルはいくつかのタイプの FixedLengthRecord で構成されているため、各投稿を非整列化するための FixedLengthDataFormat がたくさんあります。
- 行ごとに体を分割します
- まず、どの DataFormat を使用すべきかを理解し、オブジェクトを作成する必要があります
- 次にアンマーシャル
このようなもの:
しかし、私の問題は、プロセスを介して初期化すると、そのバインド オブジェクトの NPE を取得することです。しかし、ルート定義の前 (from の前) にバインド オブジェクトを作成すると、正常に動作します。私のバインド オブジェクトはボディに依存しており、ルート定義の前に初期化できません。実際に Apache Camel はルートを開始する前に bindy オブジェクトの初期化を処理します
model - 複数の BindyFixedLengthDataFormat モデルをどのようにマーシャリングしますか (camel-bindy-2.16)
現在、camel-bindy-2.12.1からcamel- bindy-2.16.2 にアップグレードしようとしていますが、複数のクラスで構成されるモデルをデータ セットに適用しようとすると、単一のテキスト ファイルになるという問題が発生します。
パッケージ (com.sample.package) には、次のコード (Camel Spring DSL) を使用してマーシャリングに使用できるいくつかのクラスがありました。
次に、マーシャリング時に Bean を参照します。
この Bean 呼び出しにより、パッケージ内のすべてのクラスがマーシャリングされるデータに適用され、1 つのファイルが作成されます。
camel-bindy-2.12.1 ではうまく機能しましたが、上記のコンストラクターはcamel-bindy-2.16.2 では使用できなくなりました。
削除されたコンストラクターで同じ機能を実現する例を見つけることができませんでした。
誰かがこの状況に遭遇しましたか? もしそうなら、どんな提案/例も大歓迎です。
ありがとうございました
java - apache camelの「一部のフィールドが欠落しています(オプションまたは必須)、行:1」というエラーは何を意味しますか?
オブジェクトのリストにapache camelとbindyを使用してcsvファイルの変換を実装しようとしています。
ここのようにやろうとしましたhttp://www.mastertheintegration.com/camel/transforming-data-with-camel/transforming-csv-to-Java-objects-using-camel.html
残念ながら、次のエラーが表示されます。
ここに私のクラスがあります:
Main.java
CsvFileTransformService.java
CsvBean.java
ありがとう!
java - nullの場合、camel-bindyが最初の列をマッピングしない
これは私が持っているものに似ています:
列 2 または 3 が空の場合、まったく問題はありません。これらのフィールドには null 値が含まれているだけです (-> がタブ表現であると想像してください)。
次のような拘束力のある結果で
ここまでは順調ですが、最初の列が null の場合、列 2 の値 (sku) はバインダーによって列 1 のバインドされた属性 "vendor" に割り当てられ、列 3 の値は列 2 のバインドされた属性 ( sku)、列 3 にバインドされた実際の属性は null のままです。
次のようなことをします:
いつでも "required=true" にすることができることはわかっていますが (それが最初に行われた方法です)、それでも 2 番目のものが null でない場合でも失敗しません。一方、columns required true を実行するのは良い考えではありません。1 つの行に何かが欠けているため、ファイル全体が拒否されるため、私たちの戦略は、必須のフィールドを手動で検証することです。それを正しくログに記録し、すべての列で正しい行を処理できます。
これは、このライブラリの私の依存関係です:
そして、これはバインディング ライブラリの名前になります。
CsvRecord アノテーションと DataField アノテーションにあるすべての属性をチェックし、解決することを期待してそれらのいくつかをやみくもに試しました。
なぜこれが起こっているのか誰にも分かりますか?または、それが後のバージョンで解決されたライブラリの問題である場合は? または私が試すことができる提案はありますか?
もちろん、私が得ることができるどんな助けや答えにも前もって感謝しています!
java - 一部の列に引用符があり、一部の列に引用符がない場合、キャメルバインドでcsvファイルを解析する方法は?
Camel bindy を使用して csv ファイルを処理しようとしています。ファイルの行は次のようになります。
私のモデルファイルは次のとおりです。
unmarshall(bindy) メソッドを使用します。私が得た例外は次のとおりです。
問題は、最初の「id」値に引用符がなく、残りの列にあることだと思います。どうすれば解決できますか?