Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 尝试在我的jsp模板中使用JSTL进行OR测试_Java_Jsp_Jstl_El - Fatal编程技术网

Java 尝试在我的jsp模板中使用JSTL进行OR测试

Java 尝试在我的jsp模板中使用JSTL进行OR测试,java,jsp,jstl,el,Java,Jsp,Jstl,El,我的JSP中有以下代码,但不太有效: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <c:set var="contextPath" value="${pageContext.request.contextPath}" /> <c

我的JSP中有以下代码,但不太有效:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

<c:set var="contextPath" value="${pageContext.request.contextPath}" />
<c:set var="requestURI" value="${pageContext.request.requestURI}" />
<c:set var="isPeople" value="${fn:contains(requestURI, '/People/')}" />
<c:set var="isJobs"   value="${fn:contains(requestURI, '/Jobs/') || fn:endsWith(requestURI,contextPath+'/')}" />

请帮忙,谢谢

事实上,字符串串联在EL中不起作用

以下方面应起作用:

<c:set var="contextPath" value="${pageContext.request.contextPath}/" />
<c:set var="requestURI" value="${pageContext.request.requestURI}" />
<c:set var="isPeople" value="${fn:contains(requestURI, '/People/')}" />
<c:set var="isJobs"   value="${fn:contains(requestURI, '/Jobs/') || fn:endsWith(requestURI, contextPath)}" />


请注意,我将尾部斜杠从
fn:endsWith
移到了
实际上,字符串串联在EL中不起作用

以下方面应起作用:

<c:set var="contextPath" value="${pageContext.request.contextPath}/" />
<c:set var="requestURI" value="${pageContext.request.requestURI}" />
<c:set var="isPeople" value="${fn:contains(requestURI, '/People/')}" />
<c:set var="isJobs"   value="${fn:contains(requestURI, '/Jobs/') || fn:endsWith(requestURI, contextPath)}" />


请注意,我将尾随斜杠从
fn:endsWith
移到了

我认为有问题的部分是字符串连接:
fn:contains
不是有点弱吗?那么
/People/Jobs/
呢?您不想要
fn:startsWith
?最终用户通常可以将路径附加到URL的末尾,而不会以任何方式影响Web应用程序。并不真正担心这个特定应用程序的安全性,但这是一个好主意!我认为有问题的部分是字符串连接:
fn:contains
不是有点弱吗?那么
/People/Jobs/
呢?您不想要
fn:startsWith
?最终用户通常可以将路径附加到URL的末尾,而不会以任何方式影响Web应用程序。并不真正担心这个特定应用程序的安全性,但这是一个好主意!非常感谢:这是可行的,但是它可能会进一步影响我的代码中使用“contextPath”变量的地方,这在理想情况下是我希望避免的。非常感谢:这是可行的,但是它可能会进一步影响我的代码中使用“contextPath”变量的地方,这在理想情况下是我希望避免的。