3

struts 2.3.1.2 を使用して Web アプリケーションを構築しました。警告/通知として OGNL 例外が発生しない次のページ/アクションがあります。

  1. JSP ページ - name、address、phone の 3 つのテキスト フィールドを含む
  2. struts.xml ファイル - devMode = true およびデフォルトのインターセプタ スタックを使用した対応するアクション エントリ
  3. 2 つのリクエスト パラメータ、つまり名前とアドレスのプロパティのみを持つアクション クラス

上記は正常に実行されており、警告/通知の例外は発生しません。

最近、struts 2.3.14.2 にアップグレードし、ログ ファイルで以下の警告/通知例外が発生し始めました。

Developer Notification (set struts.devMode to false to disable this message): 

Unexpected Exception caught setting 'start' on 'class com.xyz.DetailsActionSupport: 
Error setting expression 'start' with value ['0', ] - Error setting expression 'start' with value ['0', ] - [unknown location]        at  
com.opensymphony.xwork2.ognl.OgnlValueStack.handleRuntimeException(OgnlValueStack.java:201)  at
com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:178) at
com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:152) at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:329)   at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:241)     at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) and more ...

Google検索で、2つの答えが見つかりました:

  1. Param インターセプタの struts.xml に除外パラメータを追加する
  2. struts.xml で定義されている開発モードを無効にする

私はそれを行うことができますが、Struts バージョンで何が変更されたのか理解できないため、通知/警告として例外を出力し始めましたか?

以下のリンクは、警告例外がどのように表示されるかを教えてくれます: http://struts.apache.org/release/2.3.x/docs/parameters-interceptor.html上記のリンクから欠落しているパラメーターに関する警告 のセクションを参照してください。

4

0 に答える 0