gpt4 book ai didi

eclipse - 绝对 uri : http://java. sun.com/jSTL/core 无法在 web.xml 或使用此应用程序部署的 jar 文件中解析

转载 作者:行者123 更新时间:2023-12-02 17:02:34 26 4
gpt4 key购买 nike

我需要一些帮助,我想做一个程序并使用

if(session.getAttribute("logged")!="1"){ 
String err="You must be logged in!!";
request.setAttribute( "error", err );
String nextJSP = "/login.jsp";
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(nextJSP);
dispatcher.forward(request,response); }

%>

在jsp中,但是我的老板告诉我使用jSTL所以我将其更改为:

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<c:if test="${session.getAttribute('logged')!=null}">
<jsp:forward page="login.jsp">
</jsp:forward>
</c:if>
<c:if test="${session.getAttribute('logged')==null}">
<jsp:forward page="princ.jsp"> </jsp:forward>
</c:if>

我遇到了一个严重的错误:

 "org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application " 

我在互联网上搜索了一些修复程序,我已将 javax.servlet.jsp.jSTL-api-1.2.1-javadoc.jar 放入我的库中,甚至将 javaee.jar 放入 Tomcat 库中,但仍然得到没有解决办法,有人可以帮助我吗?PS:我有适用于 Web 开发人员的 Eclipse Java EE IDE。(INDIGO) Tomcat 7.08

最佳答案

您的标签库 URI 错误。

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

此 URI 来自旧的且已停产的 JSTL 1.0 库。从 JSTL 1.1 开始,您需要在路径中添加一个额外的 /jsp,因为标记库的内部工作方式发生了变化,因为 EL 部分已从 JSTL 移至 JSP:

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

此外,您尝试放入 /WEB-INF/lib 中的 JAR 文件是错误的。 javax.servlet.jsp.jSTL-api-1.2.1-javadoc.jar 仅包含 JSTL javadocs,javaee.jar 包含整个 Java EE API,其中可能会很糟糕,因为 Tomcat 已经附带了它的一部分(JSP/Servlet),这可能 conflict .

将它们全部删除。您需要jstl-1.2.jar文件。

另请参阅:

关于eclipse - 绝对 uri : http://java. sun.com/jSTL/core 无法在 web.xml 或使用此应用程序部署的 jar 文件中解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9976281/

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