Tag: el

在JSF页面中定义和重用ELvariables

是否可以在ELexpression式中定义variables并重新使用variables? 例如 : <h:inputText value="#{myBean.data.something.very.long}" rendered="#{myBean.data.something.very.long.showing}" /> 我想到的是这样的: <!– somehow define a variable here like : myVar = #{myBean.data.something.very.long} –> <h:inputText value="#{myVar}" rendered="#{myVar.showing}" /> 有任何想法吗 ? 谢谢 !

如何使用JSTL / EL从JSP调用参数化方法

如何使用JSTL / EL从JSP中调用具有Java类中定义的参数的Java方法。 该方法正在返回数组。 任何返回值都可以使用。

如何在EL中评估scriptletvariables?

我想知道是否在<c:if>语句中使用了JSP。 例如 <c:if test="${ param.variable1 == 'Add' <% JSP variable clause %>}"> 所以我希望我的JSPvariables也被检查。 有什么build议么? 我已经无意中试图坚持条款,显然这是行不通的。 谢谢

没有bean属性的JSF组件绑定

下面的代码如何工作: #{aaa.id} <h:inputText id="txt1" binding="#{aaa}"/> 我的意思是,通常组件绑定工作,通过在一个bean中指定一个属性(types为UIComponent)。 在这里,没有bean和属性,但名称“aaa”被正确绑定(显示组件id – “txt1”)。 它是如何工作的/它在哪里指定? 谢谢 更新:JSF2.0规范(第3.1.5章)说:“组件绑定是一个特殊的值expression式,可以用来将组件实例连接到JavaBean的相应属性…指定的ValueExpression必须指向types为UIComponent(或适当的子类)的读写JavaBeans属性。

如何使用ELexpression式语言访问对象$ {}

如果我有一个 ArrayList<Person> persons 如何在EL中访问它? <c:foreach items="${what goes here??}" var="person">${person.title}</c:foreach>

如何比较ELexpression式语言中的两个对象variables?

我正在创build一个所有语言的下拉列表。 列表的默认语言select将由用户添加的信息决定: <select> <c:forEach items="${languages}" var="lang"> <c:choose> <c:when test="${lang}.equals(${pageLang})"> <option value="${lang}" selected>${lang}</option> </c:when> <c:otherwise> <option value="${lang}">${lang}</option> </c:otherwise> </c:choose> </c:forEach> </select> .equals在EL中看起来不存在。 看过这里,build议我编写自己的函数,然后导入并使用它。 由于这是一个微小的东西只是为了这个页面,我不想为了这个而开始创build库等。 我也不想开始创buildservlet的专用对象来返回这些额外的信息。 我唯一能想到的就是从servlet中返回整个选项行的实际html,而不仅仅是语言string,但是这样会让我觉得很难看,所以我希望有一个更优雅的解决scheme。 在EL中比较两个string的最佳scheme是什么? J2EE 1.4教程

EL通过Integer键访问映射值

我有一个由Integer键入的Map。 使用EL,我怎样才能通过它的键访问一个值? Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "One"); map.put(2, "Two"); map.put(3, "Three"); 我认为这将工作,但它不(在地图已经在请求的属性): <c:out value="${map[1]}"/> 跟进:我跟踪了这​​个问题。 显然${name[1]}会将数字作为Long进行地图查找。 当我将HashMap更改为TreeMap并收到错误时,我想到了这一点: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long 如果我改变我的地图是: Map<Long, String> map = new HashMap<Long, String>(); map.put(1L, "One"); 那么${name[1]}返回“One”。 那是什么? 为什么<c:out>把一个数字视为一个长整数。 这似乎违反我的想法(因为int比long更常用)。 所以我的新问题是,是否有一个通过Integer值访问映射的EL符号?

如何在JSF组件的id属性中使用<ui:repeat var>

我有以下代码: <ui:repeat var="class2" value="#{bean.list}" varStatus="status"> <h:form id="#{class2.name}"> <h:outputText value="#{class2.name}" /> </h:form> </ui:repeat> 但是,当我打开页面时,它的错误如下: 组件标识符不能是零长度的string 但它正确地打印在<h:outputText> 。 这是如何造成的,我该如何解决?

评估空的或空的JSTL c标签

如何使用JSTL的c标签validationString是否为空或空? 我有一个variables的名称var1 ,我可以显示它,但我想添加一个比较器来validation它。 <c:out value="${var1}" /> 我想validation它为空或空(我的值是string)。

如何在JSP / EL中调用静态方法?

我是JSP新手。 我试图连接MySQL和我的JSP页面,它工作正常。 但这是我需要做的。 我有一个名为“平衡”的表属性。 检索并使用它来计算一个新的值“量”。 (我不打印“余额”)。 <c:forEach var="row" items="${rs.rows}"> ID: ${row.id}<br/> Passwd: ${row.passwd}<br/> Amount: <%=Calculate.getAmount(${row.balance})%> </c:forEach> 看来在JSTL标签中插入scriptlet是不可能的。