0

tomcat6で正常に動作します。

ビュー:<h:inputText>Beanでdoubleにマップされます。

私は見て、盲目でない限り、Tomcatが提供するELに依存しています。

代わりにTomcat7で実行すると、次のようにスローされます。

重大:javax.faces.FacesException:java.lang.IllegalArgumentException:引数タイプの不一致javax.faces.FacesException:java.lang.IllegalArgumentException:com.sun.faces.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:142での引数タイプの不一致)。

原因:javax.faces.component.UpdateModelException:java.lang.IllegalArgumentException:javax.faces.component.UIInput.processUpdates(UIInput。のjavax.faces.component.UIInput.updateModel(UIInput.java:853)での引数タイプの不一致。 java:735)at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:1242)at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:1242)at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase .java:1242)at javax.faces.component.UIForm.processUpdates(UIForm.java:281)at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:1242)at javax.faces.component.UIComponentBase.processUpdates( UIComponentBase.java:1242)at javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:1231)atcom。sun.faces.lifecycle.UpdateModelValuesPhase.execute(UpdateModelValuesPhase.java:78)at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)...30詳細

原因:java.lang.IllegalArgumentException:sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)atjavaでの引数タイプの不一致.lang.reflect.Method.invoke(Unknown Source)at dk.bording.inside.util.reflect.Reflection.set(Reflection.java:442)at dk.bording.inside.adapter.entity.MapAdapter.invoke(MapAdapter。 java:87)at dk.bording.inside.adapter.entity.MapAdapter.put(MapAdapter.java:50)at javax.el.MapELResolver.setValue(MapELResolver.java:94)at com.sun.faces.el.DemuxCompositeELResolver ._setValue(DemuxCompositeELResolver.java:255)at com.sun.faces.el.DemuxCompositeELResolver.setValue(DemuxCompositeELResolver.java:281)atorg.apache.el.parser.AstValue。setValue(AstValue.java:207)at org.apache.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:257)at org.jboss.weld.el.WeldValueExpression.setValue(WeldValueExpression.java:64)at com.sun.faces .facelets.el.TagValueExpression.setValue(TagValueExpression.java:131)at javax.faces.component.UIInput.updateModel(UIInput.java:818)... 40 more

助言がありますか?

4

1 に答える 1

0

これは、特定のフィールドが受信している入力が原因であると思われます。JSF2は、入力の推定dataTypeに基づいて暗黙的な変換を実行します。つまり、フィールドが0おそらく唯一のフィールドの入力として受け取った場合doubleでも、それをにキャストしようとしLongます。同じ問題についてこのスレッドで推奨されているように、コンバーターを使用する<f:convertNumber/>か、フィールドをにバインドする必要がありますjava.lang.Number

于 2012-09-25T03:02:21.017 に答える