問題タブ [struts2-interceptors]
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.
java - 「allowedTypes」パラメータを使用して struts2 のファイル タイプを制限する
ユーザーが pdf ファイルのアップロードのみを許可されているフォームがあります。次の struts アクションを使用してサイズとファイルの種類を制限していますが、サイズ制限のみが機能します。私が欠けているものについてのアイデアはありますか? ありがとう!
validation - 検証xmlファイルから検証エラーが発生したときにStruts2カスタムインターセプトが呼び出されませんか?
struts2 アプリケーションのインターセプターを作成し、struts 構成ファイルで構成しました。ここでは、このインターセプターをグローバルではなく一部のアクションにのみ使用しています。そのため、カスタムインターセプターが機能していないときに ActionName-validation.xml から検証エラーが発生した場合に問題が発生します。提案/解決策を教えてください。
java - 移行ストラット 2.1.8.1 -> 2.3.24
Struts 2 のアップグレード中に、以下の問題に直面しています。
「HTTP ステータス 404」エラー メッセージ。
以下の手順を実行して、Struts 2.1.8.1からStruts 2.3.24に struts をアップグレードしました。
JARS を次のように置き換えました。
- struts2-core-2.3.24.jar
- struts2-dojo-plugin-2.3.24.jar
- struts2-json-plugin-2.3.24.jar
- xwork-core-2.3.24.jar
- ognl-3.0.11.jar
- log4j-1.2-api-2.4.jar
- log4j-api-2.4.jar
- freemarker-2.3.22.jar
- commons-fileupload-1.3.1.jar
- commons-digester-2.1.jar
- commons-io-2.4.jar
追加された JARS:
- asm-3.3.1.jar -asm-tree-3.3.jar
- asm-commons-3.3.jar
- commons-lang3-3.4.jar
- commons-collection-3.2.1.jar
- hamcrest-core-1.3.jar
- javassist-3.11.0.GA.jar
- junit-4.12.jarjunit-4.12.jar
- struts2-convention-plugin-2.3.24.jar
StrutsPrepareAndExecuteFilter
web.xml でフィルターとして使用します。DTD を struts 2.1 および 2.0 から struts 2.3 に変更しました。
commons-lang3 が xwork-core から分離されたために間違っていた imports クラスを変更しました。
書きます
struts.xml で。
ant build でクラスをビルドします。ローカルの開発でビルドを置き換えます。環境。
Apache Tomcat サーバー (V7.0.54) を起動しました。
サーバーは正常に起動しましたが、アプリケーションを開くことができません。アプリケーション コンテキストが起動していません。Web 上で 404 エラーが生成されます。
間違った手順を行っている場合は、問題を診断するためにご案内いただけますか?
以下のように、log4j.properties ファイルを log4j2.xml に変更しました。
しかし、まだログを印刷できません
アクションが呼び出されていますが、コマンド ライン コマンドは実行されていません。
取得していません。struts を使用してコマンド ライン コマンドを実行する場合の依存関係は何ですか
私たちが間違っていることを知るように私たちを導いてください
file-upload - Struts2 アップロード ファイル エラー
ファイルを自分の Web プロジェクトにアップロードしたいのですが、次のようになります。
WARN oastruts2.dispatcher.Dispatcher -マルチパート保存ディレクトリ '/temp' の作成が見つかりませんでした。警告 oasdmJakartaMultiPartRequest -リクエスト org.apache.commons.fileupload.FileUploadBase$IOFileUploadException を解析できません: multipart/form-data リクエストの処理に失敗しました。
/temp/upload_1e39874d_effe_405b_9a92_3050ca60a661_00000000.tmp
(そのようなファイル、又はディレクトリはありません)
アップロードディレクトリを変更したい
しかし、それは機能しません。同じエラーが発生し続けます
java - Struts ファイルのアップロードを使用する場合の NullPointerException
ここの例に従っていますhttp://www.tutorialspoint.com/struts_2/struts_file_uploads.htm
この例では、interceptor fileUpload と basicStack が使用されています
この例を実行した後、.NullPointerException
これらのインターセプターを削除すると(インターセプターが指定されていない場合はdefaultStackが使用されることを理解しています)、正常に機能しました.問題は、インターセプターparams
が適切に使用/参照されていないことだと思います
ただし、basicStack にはparams
が含まれています。したがって、フォーム内のパラメーターはアクションに渡されず、この例外が発生します
任意の応答をいただければ幸いです。
以下は、完全なスタック トレースです。
java - Struts 2 の Scoped Model Driven インターセプターがモデルをセッション スコープにバインドしない
複数のリクエスト間でモデル(フォームデータ)を共有したいので、アクションクラスにScopedModelDriven Interceptorを実装しました。
以下は私のコードです
モデル - EventSearchBean.java
アクション - EventSearchAction
struts.xml
1)リクエストごとに新しいモデルが作成されます(モデルデータは、後続のリクエストのためにセッションからコピーされません)。モデルをセッション スコープに入れるには、コードで何を変更する必要がありますか?
モデルをStruts1のセッションスコープのActionFormのように動作させるには?
2) モデルの宣言中にアクション クラスの new 演算子を削除すると、それは
private EventSearchBean eventSearchBean;
アクション クラスでモデルにアクセスすると、Null Pointer 例外が発生します。
モデルを宣言/初期化する方法は?
3)フォームが UI で送信された場合にのみ、セッションでモデルをオーバーライド/更新する方法は?
java - Struts が間違った戻り文字列を取得しています。「入力」の代わりに「成功」を取るべきです
struts 2 と hibernate を使用してアプリケーションを開発しています。アクションを実行しているjspページに送信ボタンがありますEvaluateRating
JSPページ
このアクションはstruts.xml
struts.xml
私のEvaluateRating()
方法は次のようになります。
RatingAction.java
私が直面している問題はsuccess
、メソッドから戻ってきたことですが、それでもinput
戻り文字列として取得され、ページにリダイレクトされていIndex.jsp
ます。代わりにsuccess
、アクションを実行してリダイレクトする必要がありMgrPage
ます。
そして、 struts.xml<result name="input">/Index.jsp</result>
に行を書かないと。次のエラーが表示されます:
Struts 問題レポート
Struts が未処理の例外を検出しました:
メッセージ: アクション Action.RatingAction および結果入力に対して結果が定義されていません
java - Struts 2 インターセプターをオーバーライドする
store
インターセプターを使用しています。ごくまれに、このインターセプターがSession Already Invalidate
例外をスローし、エラー メッセージをセッションに入れようとすることがあります (MessageStoreInterceptor
行: 282)。
このインターセプターをオーバーライドして、黙って例外を浅くし、アクションを実行させようとしました。
単純に思えますが、例外が発生したときに何を返す必要があるのか わかりません(次のインターセプターを取得するにはどうすればよいですか?!):