私はこのようにELでobjectMapper.writeValueAsString
メソッドコールを呼び出していました。ELでパラメータ化されたメソッド呼び出しの引数型
<%@ attribute name="actionItems" required="true" rtexprvalue="true" type="java.util.List"%>
<jsp:useBean id="objectMapper" class="org.codehaus.jackson.map.ObjectMapper" scope="page" />
<jsp:useBean id="actionItemsMap" class="java.util.HashMap" />
<c:set target="${actionItemsMap}" property="actionItems" value="${objectMapper.writeValueAsString(actionItems)}" />
writeValueAsString
method signatureでオブジェクトのパラメータを取ります。私がactionItems
に合格すると、それはArrayList
です。
は今、私は7.0.70に7.0.52から私のApacheTomcat 7をアップグレードしていて、コードがMethodNotFoundException
で破壊されています
javax.el.MethodNotFoundException:java.lang.NoSuchMethodException:org.codehaus。 json.apache.jasper.el.JasperELResolver.invoke(JasperELResolver.java:139)の のjackson.map.ObjectMapper.writeValueAsString(java.util.ArrayList) のjavax.el.BeanELResolver.invoke(BeanELResolver.java:422)
方法を見つけようとしています引数タイプがArrayList
の7.0.53のthis changeに関連しているようです。コードを変更して動作させるにはどうすればよいですか? Object引数を使ってメソッド呼び出しを行う必要がありますか?もしそうなら、私はArrayList
をELのObjectにキャストして、メソッド呼び出しを行う方法がありますか?