gpt4 book ai didi

java - jSTL c :set to set a bean property results in argument type mismatch

转载 作者:行者123 更新时间:2023-12-02 07:02:46 24 4
gpt4 key购买 nike

我正在尝试使用 c:set 来设置我的 bean 的属性。我的页面顶部有一个标签,如下所示:

<c:set value="true" target="#{patientChartManager}" property="editingForm" />

bean字段/方法是这样的:

public Boolean getEditingForm() {
return editingForm;
}


public void setEditingForm(Boolean editingForm) {
this.editingForm = editingForm;
}

但是,当页面尝试加载时,我收到以下异常:

java.lang.IllegalArgumentException:参数类型不匹配
sun.reflect.NativeMethodAccessorImpl.invoke0( native 方法)
sun.reflect.NativeMethodAccessorImpl.invoke(来源未知)
sun.reflect.DelegatingMethodAccessorImpl.invoke(来源未知)

我尝试将 boolean 对象更改为 boolean 原始类型。同样的问题。

但是如果我将标签更改为此,它就会起作用:

<c:set value="#{'1' eq '1'}" target="#{patientChartManager}" property="editingForm" />

实际上,#{'1' eq '1'} 可以是任何结果为 true 的测试。

最终它满足了我的需求,但感觉就像是黑客攻击,并且 Eclipse 添加了一个警告,表明测试结果将始终为 true。

谢谢!

最佳答案

你尝试过吗:

<c:set value="#{true}" target="#{patientChartManager}" property="editingForm" />

关于java - jSTL c :set to set a bean property results in argument type mismatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16451994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com