0

ローカル EJB インターフェイスを使用する Java EE/JSF のアプリケーションがあり、別のクライアント アプリケーション (別の JVM) でビジネス レイヤーを使用したいと考えています。

したがって、新しいクライアント アプリケーションで依存性注入を使用するには、リモート EJB インターフェースを使用する必要があります。

しかし、EJB インターフェイスを変更すると、「最初の」クライアント アプリケーションの managedBean のすべての依存性注入も変更する必要がありますか?

4

1 に答える 1

0

ローカル インターフェイスは参照渡しを使用しますが、リモート インターフェイスはディープ コピー渡しを使用します。これは、(1) すべてのパラメータと戻り値がシリアライズ可能である必要があること、(2) パフォーマンス (非常に大きなマップなど) または正確性 (オブジェクトをメソッドに渡す、オブジェクトを変更し、結果が呼び出し元に表示されることを期待してください。

とはいえ、「ローカル EJB インターフェース」とは@Local、EJBLocalHome のことですか? 前者の場合は、に変更してみてください@Remote。うまくいくかもしれません。後者の場合は、EJBHome/を使用するようにインターフェイスを更新する必要EJBObjectがあります。つまり、インターフェイスのすべてのメソッドに RemoteException を追加する必要があります。つまり、少なくとも呼び出し元を更新して例外を処理する必要があります。

于 2012-09-21T16:17:54.860 に答える