标签: el

连接facelets标记的属性中定义的EL表达式中的字符串

我需要为属性写一个EL表达式,如下所示:

#{cc.attrs.appreciatedByCurrentUser ? (cc.attrs.count +'<br/>'+ (cc.attrs.count-1)) : ((cc.attrs.count+1) +'<br/>'+ cc.attrs.count)}
Run Code Online (Sandbox Code Playgroud)

现在的问题是,这会产生错误,因为字符串无法连接,就像我这样做.那我怎么能纠正这个呢?

我正在使用带有facelets的JSF 2.0.


编辑:

我正在使用以下内联JavaScript解决问题

            <script type="text/javascript">
                var count=#{cc.attrs.count};
                document.write(#{cc.attrs.appreciatedByCurrentUser} ? (count-1) +'<br/>'+count  : count+'<br/>'+ (count+1));
            </script>
Run Code Online (Sandbox Code Playgroud)

你能想到这个问题吗?

jsf facelets el jsf-2

39
推荐指数
2
解决办法
8万
查看次数

使用JSF在EL中表示if-elseif-else

以下JSF代码包含两个单独的<c:if></c:if>.我们来看看吧.

<?xml version='1.0' encoding='UTF-8' ?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:c="http://java.sun.com/jsp/jstl/core">
    <h:head>
        <title>JSF EL</title>
    </h:head>
    <h:body>
        <h:form>

            <c:set scope="request" var="row" property="x" value="10"/>

            <c:if test="#{row==10}">
                <h:outputLabel value="value = 10"/>
            </c:if>

            <c:if test="#{row==15}">
                <h:outputLabel value="value = 15"/>
            </c:if>

        </h:form>
    </h:body>
</html>
Run Code Online (Sandbox Code Playgroud)

它只是在运行时在JSF页面上显示value = 10.我需要<c:if></c:if>使用以下if-elseif-else(Java上下文)来表示上述内容.

if(row.equals(10))
{
    //Do something...(JSF stuff)
}
else if(row.equals(15))
{
    //Do something...(JSF stuff)
}
else
{
    //Do something...(JSF stuff)
}
Run Code Online (Sandbox Code Playgroud)

如何使用JSF用表达式语言(EL)表示?

jsf el

38
推荐指数
3
解决办法
15万
查看次数

这个表达式语言$ {pageContext.request.contextPath}在JSP EL中的作用是什么?

我有一个网络应用程序,我有不同的导航锚标签,如家庭,个人资料等.

我想要的是:

当我按下主页或个人资料等锚标签时.我只想确保当前用户在Tags/JSP页面中获取其信息.

我正在尝试的示例示例:

<a  href="${pageContext.request.contextPath}/JSPAddress.jsp">Profile</a>
Run Code Online (Sandbox Code Playgroud)

java jsp el

37
推荐指数
2
解决办法
15万
查看次数

instanceof检查EL表达式语言

有没有办法instanceof在EL 进行检查?

例如

<h:link rendered="#{model instanceof ClassA}">      
    #{errorMessage1}
</h:link>
<h:link rendered="#{model instanceof ClassB}">      
    #{errorMessage2}
</h:link>
Run Code Online (Sandbox Code Playgroud)

jsf el instanceof

35
推荐指数
2
解决办法
2万
查看次数

使用EL获取列表或数组中的特定元素

是否可以在Java EE页面(Facelets或JSP)中使用EL获取列表或数组中的特定元素,还是必须创建自定义EL方法?

arrays list el java-ee

34
推荐指数
1
解决办法
4万
查看次数

Concat在JSF EL表达式中的两个字符串

我有以下表达式:

<af:outputText value="#{viewArticle.publish ? ('Publish on ' + viewArticle.publishDate + ' by ' + viewArticle.publishFirstName + ' ' + viewArticle.publishLastName) : 'Draft version'}"/>
Run Code Online (Sandbox Code Playgroud)

但我得到了

java.lang.NumberFormatException: For input string: "Publish on "
Run Code Online (Sandbox Code Playgroud)

我该如何加入字符串?

java string jsf concat el

34
推荐指数
2
解决办法
8万
查看次数

如何使用JSTL对表示URL路径的String进行编码?

使用JSTL对表示URL路径(而不是请求参数)的String进行URL编码的最佳方法是什么?

<c:url value="/user/${user.name}"/>
Run Code Online (Sandbox Code Playgroud)

根据我发现的任何文件,这应该照顾它.但事实并非如此.它精美地编码参数(<c:url value="/user/${user.name}"><c:param name="section" value="employment 4u so good"/></c:url>)但我没有传递任何参数.如何安全地编码一个简单的URL,如上所述,而不用担心${user.name}会是什么?

jsp jstl el uriencoding

32
推荐指数
2
解决办法
6万
查看次数

如何使用EL获取JSP中的request/session/servletcontext属性?

我知道这并不难,但我没有运气.

我想fooList从JSP中提供的Servlet中创建.所以在Servlet中我有:

request.setAttribute("list", fooList);
RequestDispatcher dispatcher = 
  getServletContext().getRequestDispatcher("/myJsp.jsp");
dispatcher.forward(request, response);
Run Code Online (Sandbox Code Playgroud)

然后在JSP中,我希望:

<c:forEach var="post" items="${SOME_EL_HERE}">
    <!-- stuff -->
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

哪个SOME_EL_HERE表达式检索我在其上设置的属性request.

有什么想法吗?我的偏好是不通过添加框架使一个简单的任务复杂化,但我对战略的变化持开放态度.

java jsp servlets jstl el

31
推荐指数
1
解决办法
4万
查看次数

访问scriptlet中的jstl变量

以下代码导致错误:

       <c:set var="test" value="test1"/>
      <%
        String resp = "abc"; 
        resp = resp + ${test};  //in this line I got an  Exception.
        out.println(resp);
       %>
Run Code Online (Sandbox Code Playgroud)

我不是在scriptlet.why中使用表达式语言"$ {test}"吗?

jsp jstl el scriptlet

31
推荐指数
1
解决办法
7万
查看次数

JSP:不评估EL表达式

我有一个在Tomcat 5.5上运行的JSP页面.我有以下代码:

 <c:forEach var="i" begin="1" end="10" step="1">
  <c:out value="${i}" />
  <br />
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

我得到的输出是:

${i} 
${i} 
${i} 
${i} 
${i} 
${i} 
${i} 
${i} 
${i} 
${i} 
Run Code Online (Sandbox Code Playgroud)

我无法解决为什么forEach循环工作但输出不起作用.任何人都可以提供任何帮助都会很棒.

java jsp el taglib

30
推荐指数
4
解决办法
3万
查看次数

标签 统计

el ×10

jsp ×5

java ×4

jsf ×4

jstl ×3

arrays ×1

concat ×1

facelets ×1

instanceof ×1

java-ee ×1

jsf-2 ×1

list ×1

scriptlet ×1

servlets ×1

string ×1

taglib ×1

uriencoding ×1