我是jsp页面的新手,就在昨天我开了类似的讨论。 这可能是一个重复或非常相似的一个,我很抱歉这是否是这种情况,但是我正在开发jsp页面的几天,我还没有理解环境,文件夹等是如何“联系在一起。
我在 Apache Tomcat 7
上收到以下错误HTTP Status 500 - The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
因为我包含了这个 taglib
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
然后,我在“WEB-INF”中创建了一个文件夹“lib”,然后我把文件放在 jstl-1-2.jar 中。 用户建议进入另一个可从此处获得的讨论 The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application 删除 standard.jar 但我从未有类似的文件。
在网上阅读和浏览,我读到 Tomcat 7 应该足以将 jstl-1-2.jar 放入WEB-INF / lib文件夹如下所示,无论是否有该文件,都没有发生。错误不会改变。
/var/lib/tomcat7/webapps/jsp_test/web/WEB-INF/lib/jstl-1-2.jar
这是三个文件夹:
- webapps - ROOT - index.html
- META-INF - context.xml
- jsp_test - nbproject
- src - conf - MANIFEST.MF
- java - mypack - Display.java
- web - ROOT - index.jsp
- WEB-INF - lib -jstl-1.2.jar
- web.xml
- beans.xml
我还注意到tomcat 7文件夹中还有另一个 web.xml 文件:
/etc/tomcat7/web.xml
我是否必须更改 web.xml 文件中的内容?
此外,查看tomcat7-example文件夹中有一个 web.xml 文件,其中许多库都以.tld扩展名编写:
/usr/share/tomcat7-examples/examples/WEB-INF/web.xml
我迷失了这个愚蠢的事情,请帮帮我! :)
答案 0 :(得分:1)
您需要了解如何在Tomcat上正确创建和部署Web应用程序。
删除/web
根目录下的/jsp_test
文件夹。您应该只有/WEB-INF
及其子项位于根目录下。
答案 1 :(得分:1)
请浏览网址的内容:https://stackoverflow.com/tags/jstl/info。它可以帮助您解决问题。
答案 2 :(得分:1)
像duffymo一样说je webapp结构应该是这样的: 请注意,我还删除了'jsp_test'下的'ROOT'目录,不知道为什么你添加了这个目录。您现在可以直接从域的根目录访问index.jsp。
- webapps - ROOT - index.html
- META-INF - context.xml
- jsp_test - index.jsp
- WEB-INF - lib -jstl-1.2.jar
- web.xml
- beans.xml
我很好奇你用什么url来访问index.jsp以获得500错误?
类似“http://yourdomain.net/jsp_test/web/ROOT/index.jsp”的内容?
现在访问index.jsp的网址应如下所示:'http://yourdomain.net/jsp_test/index.jsp'
我不知道你是否在tomcat中为你的应用程序配置了一个上下文根,但是如果你这样做并在'jsp_test'上映射它,则url变为:'http://yourdomain.net/index.jsp'
如果您只是使用tomcat webserver处理开发环境,那么将应用程序放在tomcat的ROOT webapp中也非常方便。只需摆脱当前的ROOT webapp并将其替换为您的,所以您的结构将如下所示:
- webapps - ROOT - index.jsp
- WEB-INF - lib -jstl-1.2.jar
- web.xml
- beans.xml
答案 3 :(得分:0)
我认为我刚刚解决了这个问题。
希望它对某人有用,低于我们的解决方案。
我删除了旧项目,并在 webapps 的同一级别的名为“tsp_test”的新目录中添加了一个新项目。
在 server.xml 中设置新主机后,我为项目构建了一个新的文件夹结构:
- tomcat7 - jsp_test - conf
- java - mypack - Display.java
- test
- ROOT - META-INF - context.xml
- WEB-INF - web.xml
- lib - jstl-1.2.jar
- index.jsp
现在我收到了另一个与 taglib 问题无关的错误:
HTTP Status 500 - Unable to compile class for JSP
我认为这可能是因为某些类错误。
谢谢你的帮助!