0

URLのデバッグモードでの私のstruts 2(2.3.1)アプリケーションhttp://localhost/app/check.action?13239 raises such kind of exceptions

2011-12-15 14:45:06,455 DEBUG [CommonsLogger.java:68] : Setting static parameters {}
2011-12-15 14:45:06,456 DEBUG [CommonsLogger.java:68] : Setting params NONE
2011-12-15 14:45:06,456 DEBUG [CommonsLogger.java:68] : Setting params 13239 => [  ]
2011-12-15 14:45:06,461 WARN  [CommonsLogger.java:60] : Error setting expression '13239' with value '[Ljava.lang.String;@33b4450e'
ognl.InappropriateExpressionException: Inappropriate OGNL expression: 13239
        at ognl.SimpleNode.setValueBody(SimpleNode.java:312)
        at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
        at ognl.SimpleNode.setValue(SimpleNode.java:301)

ドキュメントによると、黙って無視することを期待していました。この問題を解決する正しい方法は何ですか?

ちなみに、struts は値のセッター フィールドを探しているようですが、数値13239で開始されるプロパティには適していないと思います。

4

1 に答える 1

1

それは多かれ少なかれあなたの個人的な好みの問題です.アクションに一致するゲッター/セッターを持たないパラメーターが送信されたときはいつでも知りたい場合があり、アプリケーションの開発における一般的なユースケースです.アクションの getter/setter の場合、考えられるエラー ケースについて知りたいと考えています。

可能性のある方法の 1 つは、ロギング レベルを開発用と本番用で異なるように設定することです。これについては、Struts2 メーリング リストで長い議論がありました。

struts 2 から struts 2.1.7 へのアップグレード後に OgnlValueStack エラー設定式の警告が表示される

于 2011-12-15T13:02:36.343 に答える