問題タブ [bean-io]

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 投票する
0 に答える
2905 参照

java - BeanIO 解析 - 固定長と区切り文字 (改行) の組み合わせ

ファイルの例:

私はこのようなPojoを持っています:

Bean xml 構成:

私の問題:

「\n」区切り文字を固定長と組み合わせて使用​​する方法が必要です。

したがって、3 つのオブジェクト (各行から 1 つ) の結果が必要です。

で試しました

しかし、私は受け取ります:java.lang.IllegalArgumentException:レコードターミネータは単一の文字でなければなりません

0 投票する
1 に答える
1936 参照

java - BeanIO - UTF8 ファイルの解析時の UnidentifiedRecordException

UTF8 でエンコードされたファイルを解析するときに問題が発生します。

エンコーディングを除いて完全に同一の 2 つのファイルがあります。(ファイルをコピーしてUTF8で保存しただけなので、内容は同じです)。1 つは ANSI を使用してエンコードされ、もう 1 つは UTF8 を使用してエンコードされます。ANSI でエンコードされたファイルは正常に解析されますが、他のファイルは BeanReader.read() メソッドを呼び出すときに BeanIO が UnidentifiedRecordException をスローする原因になります。

このコードを使用してエンコーディングを明示的に UTF8 に設定することで、これを解決しようとしました。

これは問題を解決しません。

このエラーの原因は何ですか?

0 投票する
0 に答える
1263 参照

java - BeanIO - @Field のプロパティを設定して ConfigurableTypeHandler の新しいインスタンスを取得する

BeanIO を使用して、いくつかのカスタム フィールドを含む固定形式のファイルを作成しています。これらのフィールドは同じ基本ハンドラー クラスを使用する必要がありますが、パラメーターが若干異なります。

@Recordデータを格納するカスタムを作成しました。例:

使用するフィールドに基づいて、handlerclass をカスタマイズしたいと思います。だから私はこのクラスを作成しました:

ただし、各フィールドのプロパティを設定する方法が見つからないようです。これどうやってするの?型のプロパティを定義する方法はあります@Fieldか? カスタム パラメーターを使用してオブジェクトのハンドラー クラスを定義するより良い方法はありますか?

0 投票する
2 に答える
727 参照

apache-camel - Camel での BeanIO の動的マッピング

私は以下のようなものを達成したいと思います:

作成できない行をコメントアウトしました。beanio を初期化するために、前のエンドポイントの出力から動的な値を渡したいと思いました。私が考えることができるのは、事前定義されたエンドポイントを動的に選択する受信者リストを使用することだけです。私の場合、純粋にテキストである「activemq:queue:test」のようなものとは異なり、そのエンドポイントは beanio で非整列化されるためです。私の質問が明確になったことを願っています。さらに詳細が必要な場合はお知らせください。キャメル2.15.2を使用しています

0 投票する
1 に答える
1412 参照

java - BeanIO を使用して xml 要素とその属性の両方をマッピングする

以下のxmlファイルで、値100と属性Ccyの両方でtotalAmtタグをマップしたいと思います。

ここの BeanIO リファレンス ガイドと投稿を読んで、マップできるのは 1 つだけだという印象を受けました。

だから私の質問は: BeanIO はこのタグを処理できますか? また、その方法を教えてもらえますか?

私が試してうまくいかなかったこと: