問題タブ [seam2]
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.
seam2 - シームゲン(カード操作の流れ)
私はシームを初めて使用します。シームで生成されたエンティティと一緒にEclipseでシームアプリケーションを作成しましたが、カード操作の実行の流れを理解できません。誰か助けてください
jsf - Seam +RichFacesfileUploadはreRenderを刺激する必要があります
私はRichFaces3.3とSeam2を使用してWebアプリケーションを開発しています。
次のページがあります。
このservice.uploadEvent
メソッドでは、ファイルを受け取り、FacesMessageを追加して、ファイルが正常にアップロードされたことをユーザーに通知します。
実際に起こることはこれです:
- ブラウザがページをリクエストします
- サーバーは一時的な会話#1を開始します
- サーバーがページをレンダリングします
- サーバーは完成したページを送信し、会話#1を強制終了します
- クライアントはAJAXfileUpload呼び出しを開始します
- サーバーは一時的な会話#2を開始します
- サーバーはを呼び出します
service.fileUpload()
。FacesMessage
このメソッドは、会話スコープのFacesMessages
シームコンポーネントにを追加します。 - サーバーはAJAXリクエストの応答を返し、キューに入れられたすべて
FacesMessage
のを含む会話#2を強制終了します。
- 'onuploadcomplete'イベントが受信され、クライアントは'myPanel'の再レンダリングを要求します
- サーバーは一時的な会話#3を開始します
- サーバーはページをレンダリングし、
FacesMessages
会話#3用に新しい空を作成します - サーバーはAJAXリクエスト(空を含む)の応答を返し、
<h:messages/>
会話#3を強制終了します
私はこれをいくつかの方法で解決することができます:
- PAGEスコープの新しいFacesMessagesコンポーネントを作成する。
- 会話を長時間実行としてマークし、実行する
service.fileUpload()
と終了しますfileUploadComplete()
。
適切な方法は、と同じ会話でページを再レンダリングすることservice.fileUpload()
です。これは可能ですか?
jsf - Seam テストで JSF 検証を手動で呼び出す
アプリケーションの統合テストを作成したいと考えています。required=true
テキスト コンポーネントの属性が一部の JSF ページに設定されていることをテストしたいと考えています。
を拡張するSeamTest
と、 をシミュレートでき、ここでPhaseFacesRequest
を上書きできます。processValidations
という bultin メソッドがありますが、validateValue
これは Hibernate Validator Validations のためだけのものです。では、JSF Validators を手動で呼び出すにはどうすればよいでしょうか? 以前にこれを成功させた人はいますか?
JBoss JIRA全体とJBossフォーラムで解決策を検索しましたが、何も見つかりませんでした。それ以外にも、非常に頻繁に尋ねられましたが、答えられませんでした:(
richfaces - rich:dataTableを再レンダリングする方法
<rich:dataTable>
JSFでの再レンダリングに問題があります。ページに更新リンクがあり、コンテンツのみを更新する必要があります
しかし、このボタンを押しても何も起こりません。F5を押しても何も起こりません。現在のページに移動するリンクをクリックしても、何も起こりません。別のページへのリンクをクリックして戻る(ブラウザの戻るボタンを経由しない)場合にのみ、コンテンツが再レンダリングされます。reRenderでその効果を強制するにはどうすればよいですか?
hibernate - Seam EntityHome サブクラス呼び出し getter が TransactionRequiredException で失敗する: joinTransaction 呼び出しでアクティブな JTA トランザクションがありません
最近 Web アプリケーションを拡張しましたが、実際には機能を拡張していません。1作品を除く全ページ。その1ページはまさにこれを示すはずです:
http://www.bbstats.net/team-home.seam?roster=10
JSF コードも DAO/RosterHome クラスも変更されておらず、LAZY ローディングをサポートするためにエンティティ クラスのみが更新されました。ただし、次のスタック トレースを取得し続けます。
上記では、関連する RosterHome.getLabel() 呼び出しを確認できます (*)。RosterHome コードは次のとおりです。
スーパークラス PersistenceContextEntityHome は次のようになります。
そこにはかなり基本的なものがあります。永続化コンテキスト名だけです。
Eclipse コンソールでは、次の警告も表示されます。
次に、persistence.xml を確認しました。
編集:
com.kawoolutions.bbstats.util.CustomJBossAS7JtaPlatform.java:
私は webapp で hibernate.transaction.factory_class をオーバーライドしていません-少なくとも私が知っていることではありません。
このスタック トレースと上記の警告が表示されるのはなぜですか? これは基本的に、#{rosterHome.label}
ページ表示用のカスタム HTML ラベルを作成するために呼び出し続ける JSF ページです。
私は JBoss AS 7 (7.0.0.Final から 7.1.0.CR1 まで試してみました)、Seam 2.2.2、JSF 1.2 (+ Facelets)、RichFaces 3.3.3、および Hibernate 4 を使用しています。
ヘルプは大歓迎です。
ありがとう
java - Hibernate/Seam キャッシングの問題
キャッシュ値があると思われる名前付きクエリを返す Hibernate (Seam 経由) に問題があります。私のコードは、単一の行の単一の列を変更し、新しい値で更新します。私はsQLQuery.executeUpdate()
(クエリを作成した後に)使用し、その後データベースで値が更新されたことを確認できます。
ただし、名前付きクエリを再度実行するメソッドを呼び出した後、クエリは新しいデータを返さず、直前とまったく同じ結果を返します。余分な行を返すようにデータを十分に変更すると、正しいデータが返されます (データベースに送られると想定しているため)。
問題を追跡する方法を知っている人はいますか? キャッシュだと思いますが、何を削除する必要があるのか わかりません?! 私も使ってみhibernateSession.flush()
ましたが、これもうまくいきませんでした。
seam - @jndiPattern@ の値を確認するにはどうすればよいですか?
Seam の component.xml は、デフォルトで jndiPattern 用に設定されています@jndiPattern@
。ランダムなグーグル検索は、これが実際の値のプレースホルダーであることを示唆しています。どうすれば本当の価値を知ることができますか?
jsf - 表示するエラーがない場合は、エラーページからリダイレクトします
表示するエラーメッセージがない場合(ユーザーがエラーページをブックマークしている場合など)、seamアプリケーションのエラーページをホームページにリダイレクトしたい。
pages.xmlには、次のようなエラーページにつながるルールがいくつかあります。
失敗したEL式をいくつか試し、メッセージがないことを確認した後、確認を行うためにバッキングBeanを追加しました。
。
上記のメソッドは、手動でエラーを生成したときに呼び出されますが、これはホームにリダイレクトされ、そこにエラーメッセージが表示されます。ログメッセージは、私が使用しているクラスが表示されているメッセージの可視性を持っていないように見えることを報告します:
- シーム2に、メッセージがあるかどうかを確認できるクラスはありますか?
- 追加のBeanなしでこのチェックを実行できるEL式はありますか?
servlets - Seam: Servlet-Request からセッション ID を取得する方法
大きな Seam プロジェクトがあり、JSF アクションや干渉なしで XML またはバイナリ データを提供したいと考えています。
そこで、サーブレットを使用することにしました。私が使用した方法はここで説明されています: http://www.seamframework.org/Documentation/ReplaceingServletsWithSeamResources
実際、私は異なる情報を提供する 2 つのサーブレットを使用しています。
ここで実装したいのは、セッション ID を使用してすべてのセッションを追跡できるようにすることです。しかし: サーブレットが呼び出されるたびに、新しいセッション ID を取得します。
あるフォーラムでは、セッショントラッカーを実装する必要があると書いています (https://community.jboss.org/thread/190326)。つまり、次のことを意味します。
a)最初の呼び出しの後、セッションIDをクライアントに送り返す必要があります
b) その後、すべての呼び出しで、クライアントはセッション ID をサーバーに送信する必要があります。
c) これで、サーバーはセッション トラッカーからセッションを取得できます。
もっと簡単な解決策はありませんか?つまり、呼び出しが以前と同じクライアントからのものであることを Seam-servlet が自動的に検出する可能性があるはずです。
ありがとう!
java - TDS エラーが頻繁に発生する (20 秒間隔で 50 MB のログ ファイル)
MS SQL Server 2008 R1 に接続している Glassfish サーバーにデプロイされた Seam アプリケーションに問題があります。
Glassfish サーバーが突然、次のエラーのログを記録し始めました。
停止する前に 30GB に達したため、これをグラスフィッシュ経由でログに記録するのを停止する必要がありました。
これを引き起こした可能性のある理由を見つけることができませんでした。
誰もこれを前に見たことがありますか??!