問題タブ [seam3]
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.
jsf-2 - jsf 2セッションがクラスターで複製されませんか?
数日前にここでいくつかの質問を読み、ビュー スコープ Bean がセッション上にあることを理解しました。これは正しいですか?
単一のノードでビュー スコープ Bean と完全に連携する jsf 2 + seam 3 + cdi アプリがあり、クラスターに配置されるとすぐに 1 つの要求が機能し、次はビューになるため、私は尋ねています。期限切れの例外。
では、セッションが正しく複製されていないと仮定するのは正しいでしょうか? 私の web.xml には、配布可能なタグがあります。jboss 6.1 を使用しています。アプリまたは jboss で (すべてのコンテキストを使用する以外に) 機能させるために何か他のことをする必要がありますか?
または、クラスター化された環境でビュー スコープ Bean を使用できませんか?
primefaces - @ViewScoped Bean および s:viewAction を使用した primefaces fileUpload
JBoss 7.1.1.Final、Seam 3.1、CDI、JSF 2、Primefaces 3.4RC1 を使用しています。次の s:viewAction を持つページがあります。
entryActionManager は @ViewScoped であるため、ページが読み込まれると、entryId GET パラメータが取得され、対応するエントリがこの @ViewScoped Bean に読み込まれます。
さらに、同じページに次の fileUpload コンポーネントがあります。
ファイルをアップロードしたい場合、@ViewScoped Bean が停止し、s:viewAction が再度実行されることがわかりました。ただし、何らかの理由で GET パラメーター (entryId) がなくなったため、失敗します。
私は設定しようとしました:
しかし、うまくいきません。これに対する回避策を知っていますか?1 つのオプションは @ConversationScoped を使用することですが、@ViewScoped を使用することをお勧めします
ありがとう
jsf-2 - ViewScoped Bean でのメモリ リーク?
JBoss 7.1.1上の JavaEE6プロジェクト ( EJB3、JSF2 )では、SeamFacesでメモリ リークが発生しているようです。@ViewScoped
事実を確認するために小さなプロトタイプを作成しました。
- JMeter を使用してページを 200 回呼び出します。
- ページには、ステートフル EJB を注入する viewscoped Bean が含まれており、それを呼び出します。
- セッション タイムアウトを 1 分に固定します。
テストの最後に、VisualVM を使用してメモリの内容を確認すると、次の結果が得られました。
- Bean を使用し
@ViewScoped
ても、ステートフルの 200 のインスタンスを取得できますMyController
。@PreDestroy
メソッドは呼び出されません。 @ConversationScoped
Bean を使用すると、@preDestroy
メソッドがセッション終了と呼ばれ、クリーンなメモリが得られます。
ビュースコープの使い方が悪いのか、それとも本当にバグなのか?
XHTML ページは次のとおりです。
今含まれている Bean myBean
。バリアントの場合@ConversationScoped
、コメント化されたすべての部分はコメント化されていません。
そして、注入されたステートフル Bean MyController
:
jboss - Jbpm 5 と Seam 3 の統合
私と 14 人の同僚は、今から 12 週間かかるエンジニアリング ソフトウェア プロジェクト コースを受講しています。プロジェクトの主な提案は、既に作成されたプロジェクトのバージョン間でテクノロジを移行することです。
目標は、Seam 2.2 および Jbpm3 から Seam 3 および Jbpm5 に移行することです。Web で検索すると、それらの間に統合がないことがわかりました。そのため、続行する方法がよくわかりません。また、Java EE、Seam、Jbpm での開発経験もありません。
質問は、
- Seam3 と Jbpm5 の統合を試みたことはありますか? 見つからなかったウェブ上の情報はありますか?対象分野の経験がない 14 人の開発者が 12 週間でできるでしょうか?
- 不可能な場合、Jbpm5 と以前のバージョンの Seam を統合することは可能ですか? それとも、Seam3 を使用した Jbpm 4.3 ですか?
- Jbpm5 の利点は、移行に含めることができるほど重要ですか? それとも、Jbpm 4.3 が良い目標ですか?
いくつかの提案として送信していただければ幸いです。
ありがとう!
java - Seam 3/HibernateでエンティティがDBにフラッシュされない変更
Beanを使用したSeam3/ JBoss/Hibernateプロジェクトがあり@ConversationScoped
ます。このBeanは、の作成/編集を管理し@Entity
ます。エンティティに加えられた変更を保存し、ユーザーを現在のページに維持できるようにしたいと思います。
がsave()
呼び出されると、会話内のエンティティが更新されます(つまり、変更は会話とWebページに表示されます。ただし、会話を終了しても、データはデータベースに書き込まれません。
サイトの別の部分では、メソッドが呼び出されfaces-config.xml
たときに別のページにリダイレクトすることで、データベース内のエンティティを更新することができました。save()
ただし、このエンティティを保存するときに、ユーザーを同じページに保持したいと思います。
java - 独自のscaffoldプラグインの作成:forgeコンソール内で実行した場合にのみmetawidgetリソースの読み込み例外
いくつかの理由でscaffoldfacesプラグインを個別に再構築しようとしましたが、解決できない非常に厄介なバグを見つけました。
いくつかのトリックを試した後、問題を解決する方法が見つからないので、metawidget構成コードを確認してください。
正常に動作しますが、
失敗します。
誰かが同じ問題を抱えていますか?何かを台無しにしてもいいですか?
アップデート#1:
forgeコンソール内で実行した場合にのみ、リソースのロードが失敗します。JUnitテストは正常に機能します。metawidgetプラグインのリソースローダーは、新しいプラグインからではなく、元のscaffold-apiのコンテキストからmetawidget-*。xmlを読み込もうとしていると思います。
アップデート#2:
問題は、メタウィジェットとフォージの関係のどこか深いところにあります。SimpleResourceResolver.openResource()
を直接使用すると、結果が有効であることがわかりました。しかし、を追加するStaticHtmlWidget.setConfig()
と、結果はUnable to locate com/domain/customfaces/metawidget-entity.xml on CLASSPATH
最初のwrite()
呼び出しになります。この動作を解決する方法がわかりません。
jsf-2 - Tomcat7 の SeamFaces
SeamFaces を Tomcat 7 で動作させようとしています。これは可能ですか? http://www.seamframework.org/Seam3/FacesModuleから取得した (Maven) POM に以下のエントリを追加しました。
org.jboss.seam.transaction.SeamTransaction クラスが必要なようですが、見つかりません。どんな助けでも大歓迎です。Tomcat 7 で SeamFaces を適切に動作させる方法を知っている人はいますか?
どうもありがとう!POM:
スタックトレース:
jpa-2.0 - JPA 検証を CDI および Seam 検証と統合する方法
私の以前の質問、JSR 303 Bean 検証、拡張された ConstraintValidator は CDI を使用できません、Seam 検証モジュールは、コードを繰り返さずにすべての JSF および EJB ビジネス検証を一元化するための完璧なソリューションを提供してくれます。
とにかく、 JPA (EclipseLink)に検証を実行させようとすると、システムは次のように表示します。
java.lang.IllegalStateException: WEB9031: WebappClassLoader はリソース [javax.enterprise.inject.spi.BeanManager] をロードできません。まだ開始されていないか、既に停止されているためです
完全なスタック トレースは次のとおりです。
Constraint Validator で CDI を JPA と一緒に使用できるかどうかはわかりません。さらにアドバイスをお願いできますか?よろしくお願いいたします。ご連絡をお待ちしております。
私の環境は次のとおりです。
- Windows 7 64 ビット
- JDK 1.6.0_31 64 ビット
- Eclipse インディゴ SR1 64 ビット
- グラスフィッシュ 3.1.2.2
- EclipseLink 2.3.2 (GF にバンドル)
- 溶接 1.1.10-最終
- Hibernate Valiation 4.3.0.Final
- シームはんだ 3.1.1.Final
- Seam Validation 3.1.0.Final
私のコーディング例
ユーティリティ
制約アノテーション
制約バリデーター
エンティティ Bean としてのデータ Bean
JSF バッキング Bean
Persistence.xml
Validation.xml
上記の Persistence.xml に関して、検証モードを削除すると、システムから例外が発生します。現時点では、暫定的な解決策として JPA 検証を無効にしています。
mysql - javax.enterprise.event.ObserverException
今、私は不快な問題に直面しています。JBoss AS 7 で 6 つのプロジェクトを実行しています。それらはスタンドアロン モードでデプロイされています。しばらく作業した後 (5 ~ 25 時間)、すべてのプロジェクトで同じエラーが発生し始めます: javax.enterprise.event.ObserverException。
スタックは次のとおりです。
ログで回答を検索した後、前の例外が発生する前にこれが発生することがあることがわかりました。
私はこの問題について多くのことを考えてきました。私の提案の 1 つは、 JPA CriteriaBuilderを使用してデータベースから情報を取得するメソッドがたくさんあるため、MySQL が原因であるということです。MySQL のステータスを確認すると、約 100 の遅いクエリがあることがわかります。
私のプロジェクトでは、SEAM、Hibernate、JPA、PrimeFaces を使用しています。
私はいくつかの同様の問題を見つけることができましたが、まだ答えはありません。
前もって感謝します、イリヤ・シドロビッチ
seam3 - jsf ページなしで RequestParam を使用するバッキング Bean の分離テスト
比較的簡単なテストを行いたい。テストされるクラス (簡略化されていますが、アイデアは得られます):
そしてテスト:
これを試してみると、例外が発生します。
これは理にかなっています。
私が本当に疑問に思っているのは:
Arquillian (または他の何か) を介してそのような Bean をテストする方法はありますか?
言い換えれば、この Bean を生成するテストを介して http 要求を呼び出すにはどうすればよいでしょうか。ただし、jsf ファイルなどを配置する必要はありません。
ヘルプ/提案をありがとう。