0

私は問題があります:

  1. 私はJava EEプロジェクトで働いています.GUIは他の人が書いています。
  2. データベースを作成しました
  3. エンティティを含むJava SEアプリケーション(Netbeans 7.1を使用)を作成しました(Netbeansにデータベースからこれらを生成させて適合させました)
  4. テストクラスを書き、ejb を書き、それらをテストしました。
  5. 私は、他の Bean が注入されるシングルトン Web サービスを作成しました。
  6. すべてのインスタンス (データベース内の行) のリストを取得し、ID でインスタンスのインスタンスを取得し、更新して保存することができます。すべての CRUD 操作は問題ありません。
  7. クライアント、Java SE アプリケーション (Netbeans 7.1 を使用) で、(6 で作成した Web サービスの) WSDL URL を指定して「Web サービス クライアント」を追加しました。

私が手に入れたものはすべて切り離されたオブジェクトです。ID (主キー) を除くすべてのフィールド (文字列として) を持つすべてのオブジェクト。更新の代わりに、挿入を取得しました (編集されたオブジェクトにクライアント上の ID がないため)。削除はまったく機能しません。その他の操作(findAll、findById)はOKです。DTO (データ転送オブジェクト) を使用する必要がありますか? これらはejb3.1の時点ではもう必要ないことを読みました

クライアントでは、findAll 操作の場合、Netbeans はエンティティの使用を受け入れません。自動生成された「dtos」を使用する必要があります。これは、エンティティとほぼ同じフィールド (主キーまたは ID を除く) を文字列として持っています。

4

1 に答える 1

0

問題が解決しました。理由はわかりませんが、Netbeans は主キーなしで DTO を自動生成したため、すべての CRUD が可能ではありませんでした。これには長い時間がかかり、多くの頭痛の種になりました。

メジアン

于 2012-05-05T21:12:44.040 に答える