在jsp中使用jstl标签时出现的问题:

songjun37 2008-07-29 01:47:04
我的xml文件是:
==============
<?xml version="1.0" encoding="UTF-8"?>
<users>
<user id ="1">
<sex>男</sex>
<name>张三</name>
<age>xx</age>
<add>四川江油</add>
</user>

<user id = "2">
<sex>男</sex>
<name>李四</name>
<age>xx</age>
<add>四川广安</add>
</user>

<user id = "3">
<sex>男</sex>
<name>王五</name>
<age>xx</age>
<add>江西永新</add>
</user>

<user id = "4">
<sex>男</sex>
<name>刘六</name>
<age>xx</age>
<add>湖南永州</add>
</user>
</users>
===========================================
在jsp页面中使用是:
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
<html>
<head>

<title> <jstl > study</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>

<body>
输出XML文件标签 x:out 用法举例:<hr>
<x:parse var="users" scope="application">
<c:import url="users.xml" charEncoding="GBK" />
</x:parse>
学生:(id=001):</br>
<x:out select="$users/user@[id=4]" /></br>
</body>
</html>
==========================
问题:通过以上使用时浏览器会报一个错误是:
org.xml.sax.SAXParseException: The element type "sex" must be terminated by the matching end-tag "</sex>".
=================================
但是我检测了好几次有那个结束的</sex>啊
请问各位大虾们 ,问题是出自哪里呢?
...全文
256 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
辰安绿 2011-05-04
  • 打赏
  • 举报
回复
楼主你好,我也遇到了和你同样的问题,我想问一下你说的那几个jar文件在哪有下呀,还有就是把这些jar包放到哪里呢?
cbj6655 2009-08-11
  • 打赏
  • 举报
回复
xalan.jar
songjun37 2008-07-29
  • 打赏
  • 举报
回复
问题得到了解决了。
解决的办法是:

缺少了两个文件 ,网上是说的两个,但是我却下了五个,不知道是那两个,所以都个用上了,

呵呵 结果一运行 成功了

文件如下 大家可以看看到底是那几个是有用的:
xsltc.jar
xml-apis.jar
xercesImpl.jar
xalan.jar
serializer.jar


====================
那些是必须的呢?
songjun37 2008-07-29
  • 打赏
  • 举报
回复
还是不对啊 应该不是字符编码集的问题


请问我其他的地方有什么不对的吗?
Tongates 2008-07-29
  • 打赏
  • 举报
回复
那就不用GBK编码,有可能XML不支持GBK,你改为GB2312看看。
songjun37 2008-07-29
  • 打赏
  • 举报
回复

现在改了 <?xml version="1.0" encoding="GBK"?> 以后报错的位置如下:
学生:(id=4): <x:out select="$users/user@[id=4]" />

错误类型是:java.lang.NoClassDefFoundError: org/apache/xpath/XPathException
songjun37 2008-07-29
  • 打赏
  • 举报
回复
现在改了<?xml version="1.0" encoding="GBK"?> 以后报错的位置如下:
学生:(id=4):<x:out select="$users/user@[id=4]" />

错误类型为:<?xml version="1.0" encoding="GBK"?>
songjun37 2008-07-29
  • 打赏
  • 举报
回复
用了 怎么还是不行啊
Tongates 2008-07-29
  • 打赏
  • 举报
回复
问题出现在ENCODING上。
你把XML的ENCODING也改为GBK应该就可以了。
<?xml version="1.0" encoding="GBK"?>

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧