Java EL与equalIgnoreCase的比较

Java EL与equalIgnoreCase的比较,java,jsp,jsf,el,Java,Jsp,Jsf,El,如何在EL中检查均衡器 String a = "hello"; a.equalsIgnoreCase("hello"); 现在在JSP页面上 <h:panelGroup rendered="#{patientNotePrescriptionVar.prescriptionSchedule == patientNotePresBackingBean.sendPrescription}"> ... Some code here .... </h:pane

如何在EL中检查均衡器

String a = "hello";
a.equalsIgnoreCase("hello");
现在在JSP页面上

<h:panelGroup rendered="#{patientNotePrescriptionVar.prescriptionSchedule ==  patientNotePresBackingBean.sendPrescription}">
            ... Some code here ....
</h:panelGroup>

... 这里有一些代码。。。。

有没有办法将PatientNotesBackingBean.sendPrescription作为equalIgnoreCase兼容?

您可以将两个操作数都转换为小写,然后将它们相等

如果是JSTL,我会这样做

fn:toLowerCase(patientNotePrescriptionVar.prescriptionSchedule) eq fn:toLowerCase(patientNotePresBackingBean.sendPrescription)
只需检查一下是否可以在JSF中执行类似的操作。很抱歉,我最近与JSF失去了联系。

如果您使用的是EL2.2(Servlet 3.0的一部分)或JBoss EL,那么您应该能够在EL中调用该方法


如果你还没有上EL2.2,那么你最好的办法就是把两个字符串都通过(或),然后进行比较


...

不过,最好不要让它们区分大小写。如果它们代表某种常量,最好将它们设为枚举或其他形式。

如果我没有错,您首先回答的是完全不同的问题吗?否则我不会发布重复的答案。不,我只是回答了第一行,然后在后面添加了JSTL示例:)此外,你的答案不是重复的。它补充了我的答案。它给出了一个错误。。。属性前缀fn不对应于任何导入的标记库谢谢BalusC,但是在这种情况下,adarshr的回答甚至给出了错误,如
属性前缀fn不对应于任何导入的标记库
,您当然需要在JSP顶部声明
fn
标记库(与JSF
h
taglib完全相同)检查文档中的确切语法:否,它以
fn:
开头,而不是以
c:
开头。