- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 jSTL 标签时遇到问题 <c:if>
在jsp文件中。基本上我应该将其作为 2 个问题,尽管它们是相关的。
在我的 WEB-INF/lib 中,我放了一个 jSTL 1.2.jar
在我的 jsp 文件中,我把这个 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
.
在我的 jsp 文件中,我使用 <c:if>
做某事。如果条件为真,它会显示一些特殊的信息
基本上里面的内容<c:if>
不起作用,因为即使条件为真也不会显示消息。
但是如果我改为使用旧的命名空间,<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
.其他没有改变,那么if标签就起作用了,因为显示了if标签里面的信息。
我的第一个问题是为什么我必须在 namespace 中使用/jSTL 而不是/jsp/jSTL。我正在使用 jSTL1.2.jar。所以我应该为 1.2 使用较新的 uri。但是,较旧的 uri 有效但较新的 uri 无效。
我忽略了我的第一个问题,只使用/jSTL 作为我的命名空间,因为它使我的网络应用程序按照我想要的方式工作。但是,当我将我的网络应用程序部署到 tomcat 7.X 时,它显示如下异常:
org.apache.jasper.JasperException: /mywebapp.jsp (line: 35, column: 10) According to TLD or attribute directive in tag file, attribute test does not accept any expressions org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
在/mywebapp.jsp line:35, column:10,即
如果我将命名空间从 <%@ taglib prefix="c"uri="http://java.sun.com/jSTL/core"%> 更改为 <%@ taglib prefix="c"uri="http://java.sun.com/jsp/jSTL/core"%>,在tomcat中可以部署成功,但是
<c:if>
之外的其他代码标签工作。
所以我很困惑,真的很想知道如何解决这个问题。
顺便说一句,我使用的是servlet 2.5、jsp 2.0、jSTL 1.2。我确实尝试将 jsp2.0 升级到 jsp2.1 以查看是否可以解决第一个问题,但我不知道如何升级 jsp 版本。
最佳答案
But if I changed to use the older namespace,
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
. others are not changed, then the if tag is working, because the message inside the if tag is shown.
如果你有一个 standard.jar
就会发生这种情况/WEB-INF/lib
中的 JSTL 1.0 .摆脱它。另见 our JSTL wiki page .顺便说一下,我假设您没有触及 Tomcat 和 JRE 自己的 /lib
文件夹并且没有在其中放置任何与 JSTL 相关的 JAR,或者在粗心地尝试解决问题时提取了 JSTL JAR 的内容。
By the way, I am using servlet 2.5, jsp 2.0, jstl 1.2. I did try to upgrade the jsp2.0 to jsp2.1 in order to see if I can fix the first problem, but I have no idea how to upgrade jsp version. I am very new to programming.
您绝对不应该在 /WEB-INF/lib
中提供任何 Servlet 或 JSP 库你自己。 servlet 容器(在您的例子中是 Tomcat)已随附。另见 How do I import the javax.servlet API in my Eclipse project?
您只需要确保您的 web.xml
根声明符合您的 servlet 容器支持的任何内容。 Tomcat 7 is a Servlet 3.0 compatible container , 所以你的 web.xml
根声明应如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<!-- Config here. -->
</web-app>
关于java - jSTL <c :if> tags not working in jsp file, 在 tomcat 7 中出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11573725/
我们与一位客户存在某种问题,该客户认为我们发送的 XML 文件中的两个版本的空标记之间存在语义差异(纯 XML 没有 HTML ..)。 他们期望: 我们发送: 我
我想计算文本中 pp/np/vp 的数量,但我不知道如何在 openNLP chunker 中识别 PP-tags/NP-tags/VP-tags?我已经尝试过这段代码,但它不起作用。 Chunker
从我正在阅读的代码的上下文来看,它看起来像 $("")创建一个标签,其中 $('')是一个搜索标签的选择器。这里发生了什么?实际上,我可能没有掌握第二个语法,但我确信我已经完成了 $('idName'
我正在使用 Builder::XmlMarkup 创建 xml。我想创建一个没有内容的标签,因为 api 强制我创建它。如果我使用博客 xml.tag do end 我得到了我想要的 但我希望它更短
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Using the XHTML closing slash (/) on normal tags? Are
默认情况下, someXmlWriter.WriteElementString("my-tag", someString); 产生 我环顾四周XmlWriterSettings强制作者生成 的可能选
如何修改tag-it ui插件https://github.com/aehlke/tag-it (版本 v2.0)因此它只允许选择 x 个标签,以及如何仅允许“availableTags-option
我能够解析这样的内容: value 通过: File inputFile = new File("input.xml"); DocumentBuilderFactory dbFactory = Doc
我不太确定如何编写这个查询,它可以在一个查询中完成。案例如下: 我需要选择标签名称列表,并为每个标签获取最近标记的专辑信息。这意味着,如果用户创建名为“Pamela Anderson”的专辑并将该专辑
这个问题在这里已经有了答案: Where should I put tags in HTML markup? (21 个回答) JavaScript at bottom/top of web pa
Django 2 by Example 中的教程,我不明白: step (2): Why is `Count('tags')` **not** counting the total number of
我是 jekyll 的新手,正在构建我的网站。 我有一个“帖子”布局,我希望与帖子相关的所有标签都出现在左栏中。我遇到的问题是,使用 {{ page.tags }} 会返回一个未以逗号分隔且看起来很乱
如何将一个目录下的所有hash tag重写为slash tag? ( Apache ) http://www.domain.com/company/index#about => http://www.
在查询 Flickr API 并检查返回的标签时,我注意到我收到了未在 Web 界面上显示的其他标签。例如对于此图像: http://www.flickr.com/photos/77060598@N0
我有类似 的东西我想得到这个: <1> <2> 但我只想在 中应用它标签而不是其他任何地方。 我已经有了这个: $txt = $this->input->post('
我想删除 xxx yyyy zzz 用 php。但是,首先,我想控制字符串是否以 开头并以 结尾 是否有用于此目的的函数? if(string begins with '' and ends wi
在我的模板中加载自定义标签时出现此错误。我访问了许多关于此的主题,并且确保确认我没有犯一些常见错误: 包含标签的文件在 templatetags 中文件夹。 此 templatetags文件夹包含 _
API doc中没有关于构造函数的文档。我想了解SvgElement.tag()的用途/用例。 最佳答案 SvgElement.tag(String tag)构造函数为对应的SvgElement值创建
$('*').data('tag', "tagged"); $('li[tag=tagged]').length 返回零... 最佳答案 $('*').data('tag', "tagged"); $
下面的代码出错了。我该如何解决这个问题? {% block header %} {% endblock %} 错误输出: TemplateSyntaxError : Invalid bloc
我是一名优秀的程序员,十分优秀!