5

質問はほとんどすべてを物語っていますが、Java EE6環境でのSeam2についておそらく見逃してしまうこと(「損失」)を明示的に探しています。

私の最新の(小さな)プロジェクトでは、JavaEE6またはより具体的にはJSF2が修正要件であったため、Seam 2を使用することはできませんでした(そしてそうはなりません)。Seam2をJSF2で動作させると言う人もいましたが、私はそれを実現しませんでした。これまで私はSeam2のみを使用してきましたが、プレーンなJavaEE環境に切り替えると、現在認識しているよりも多くの問題が発生するのではないかと心配しています。

プロジェクトには、次の基本/コア要件があります。

  • 役割と権限ベースのセキュリティの概念(最大50ユーザー)
  • JPA2トランザクションの永続性
  • ..。

残りはかなりGUIベースで、検索フォーム、クライアント検証などがRichFaces4およびJavaEE6Bean検証で処理されます。Webサービス、RESTful URL、メッセージング、Eメールはありません。

Seamセキュリティを使用すると間違いなく損失になることがわかりますが、Seamの永続性、エンティティ/クエリフレームワーク、JBoss ELなど、特にプログラミングモデル全体(ナビゲーション、EL、Bean)がどうなるかはわかりません。。必要に応じてSeam3モジュールを追加できるため、「ゲイン」セクションの説明にSeam3を含めることができます。

それで、誰かがこれを少し片付けることができますか?(完全なまとめである必要はありません。頭に浮かんだことは何でも、先に進んでください)

PS:Seamフォーラムに接続できなかったので、ここで質問する必要があると感じました。

4

2 に答える 2

6

私が言えること-さまざまなJavaEE5 /Seam2およびJavaEE6 / Seam 3アプリケーションの背景:

Java EE 6 / Seam 3で解決できないことはなく、多くのことがはるかに成熟していると感じます(たとえば、タイプセーフCDIはSeam 2文字列ベースのコンポーネントよりもはるかに優れており、JBoss AS 7は他のすべてのリリースよりもはるかに優れています)。

ただし、Seam 2は、エンタープライズWebアプリケーションで発生する可能性のあるすべての要件に対するワンストップソリューションのようなものですが、Java EE 6を使用すると、ほぼ確実に、さまざまなモジュールからの不可解な結果になります

Seam 3は素晴らしいスタートですが、少なくともすべての部分で、完全に本番環境に対応しているわけではありません。したがって、まだ解決しなければならない問題や例外に対処する必要があります。これは確かに、道路がかなり舗装されていると感じたSeam2.xとの違いです。

Seam2の統合されたナビゲーション/ページフローの概念に相当するものはありません。JSF 2ナビゲーションを使用するか、Droolsなどを自分で統合する必要があります。

ネストされた会話は、Seam 2で気に入ったかもしれません。CDIにはそのようなものはありませんが、OpenWebBeans/CODIはCDI拡張機能として優れたソリューションを提供します。

すべてのGUI関連(pdf、メーリング、レポート)はSeam 3で進行中ですが、まだ100%準備ができていません(2011年9月)。次回は変更されますが、現在、アルファ版とベータ版を使用しています。

これを言って、ここに私のアドバイスがあります:

できるだけ早く(そして議論の余地がある)Java EE 6/CDIに切り替えてください。それはとても未来です。:-)

于 2011-09-05T09:01:27.853 に答える
1

私も同じことを経験しました。Java EEはいくつかのケースで十分ではなく、意図されていませんでした。したがって、CDI拡張機能があります。私は数日前に他の人も同じことを経験したことを学びました:

JavaEE必要なものすべて

簡単すぎて真実ではない場合

Seam2ユーザーの場合は、Seam3を使用して(同様の機能を再度提供する予定です。会話は非常に貧弱です)、安定させたり、見逃した機能を追加したり、他の拡張機能に切り替えたりするのに役立ちます。MyFaces CODIは非常に安定していて高速であり、会話の概念が優れているため、MyFacesCODIを好むなど多くのことがあります。非常にオープンなコミュニティもあり、彼らはまた、多くのことを助け、アイデアを聞いて、...

問題は「何」ではなく、「いつ拡張機能で利用可能になるか」です。誰かが機能を要求するとすぐに推測します。

于 2011-09-04T20:23:59.353 に答える