关于在JSP中的XML路径问题,100分送出,很简单的

lovingkane 2005-04-13 11:46:37
我定义了一个自定义标签
<dyn:select xml="111.xml" node="category"/>
xml属性是用来表示xml文件在WEB-INF/class下的相对路径

用dom4j来读取xml文件,运行时,111.xml已经在class目录下
但是dom4j的SAXReader reader= new SAXReader();//是不是SAXReader忘记了,差不多是这个
Document doc = reader.read(new File("111.xml"));时出错了,改成如下

File f= new File("111.xml");
Document doc = reader.read(f);还是出错

无奈,只好将<dyn:select xml="111.xml" node="category"/>改成
<dyn:select xml="f:\eclipse\webapps\jyserver\webcontent\WEB-INF\class\111.xml" node="category"/>
换成绝对路径,才可以读取成功

后来我发现File f=new File("111.xml"),f.getPath()竟然返回f:\eclipse\111.xml,
怪不得会出错了,问题找到了,但是如何解决呢?
...全文
228 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jFresH_MaN 2005-04-14
  • 打赏
  • 举报
回复
<dyn:select xml="<%=request.getContextPath%>\webcontent\WEB-INF\class\111.xml" node="category"/>
这样是不是更好呢,同样是绝对路径
VincentSailing 2005-04-14
  • 打赏
  • 举报
回复
如果你用xml的绝对路径没有问题,那说明你得xml没有错误。如果排除了这个因素,那么原因就在于你的文件放在那里了!不晓得你用的什么容器,这个似乎根容器的不同而不同。
thrive_li 2005-04-14
  • 打赏
  • 举报
回复
<dyn:select xml="<%=request.getContextPath()%>/WebContent/WEB-INF/class/111.xml" node="Category"/>
出错如下
org.apache.jasper.JasperException: /device/device_dynamicshow.jsp(12,25) attribute for %>" is not properly terminated
____________________________________________

这个问题应该是由于jsp 以为<dyn ...getContextPath()%>为一对<>了吧,而不是路径的问题
zch19850113 2005-04-14
  • 打赏
  • 举报
回复
打错喽 相对路径
zch19850113 2005-04-14
  • 打赏
  • 举报
回复
xml 我不知道,要是VXML的话,表示绝对路径<FORM ID ="222.VXML"> <GOTO NEXT="111.VXML"/> </FORM> 代表的是<goto>到222.vxml文件所在的同一个路径的〈111.vxml〉文件

JSP 我不懂 吓说的,嘴下留情啊
lovingkane 2005-04-14
  • 打赏
  • 举报
回复
<%=request.getContextPath()%>取到的不是绝对路径,也是相对路径
lovingkane 2005-04-14
  • 打赏
  • 举报
回复
<dyn:select xml="<%=request.getContextPath()%>/WebContent/WEB-INF/class/111.xml" node="Category"/>
出错如下
org.apache.jasper.JasperException: /device/device_dynamicshow.jsp(12,25) attribute for %>" is not properly terminated

81,095

社区成员

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

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