私はPOJOを持っています:
public class Foo {
public String getValue(Integer arg0, BigDecimal arg1) {...}
}
Spring MVC から JSP にモデル パラメータとして配置し、使用してみます。
<c:set var="ans" value="${foo.getValue(null, null)}"/>
しかしgetValue
方法 では
arg0 = 0
arg1 = 0
予想の代わりに
arg0 = null
arg1 = null
Tomcat 7.0.40 と jetty 9.0.3 で実行しようとしました
それはTomcatのバグですか、それともELの動作は正しいですか? ELでnullパラメータを使用してメソッドを呼び出すにはどうすればよいですか?
更新 1: いくつかのソースとドキュメント ( http://tomcat.apache.org/tomcat-7.0-doc/config/systemprops.html ) によると、JVM プロパティを追加すると
-Dorg.apache.el.parser.COERCE_TO_ZERO=false
それを解決します。
しかし、設定しても何も起こりません。正しく設定しました
System.getProperty("org.apache.el.parser.COERCE_TO_ZERO")`
実行時に戻り"false"
ます)
このパラメーターを使用するには、Tomcat で他の設定を変更する必要があるかもしれません...