2012-12-13 36 views
2

我在共享文件夹中有一个html文件(即不在web服务器位置),我必须使用 <jsp:include page="//TestFolder/Sample.html">将它包含在jsp中。 在运行的页面上会出现以下错误的应用程序:JSP在链接中包含项目名称的前缀

The requested resource (/projectName//TestFolder/Sample.html) is not available 

这里的应用程序名称(/项目名)被前缀的目标路径。如何摆脱应用程序名称,使html可以包含在jsp中?

任何澄清将是可观的。

谢谢。

+0

将包含html代码粘贴到jsp页面中... –

+0

对不起,我在编辑时错过了它。现在它已被添加。 – Marshal

+0

您是否试过'' - 在路径前加'/'而不是'//'? – techfoobar

回答

1

jsp:include操作只能在同一个servlet上下文中使用。它仅接受相对url(无论是相对页面还是应用相对)

+0

感谢您对Sree的回应。我必须找到一个替代方案。 – Marshal

1

根据您的评论,您试图实现的目标不能用jsp inclued标记或jsp include指令实现。这是因为,在一天结束时,所有JSP都成为servlet。而一个具有WAR(或任何其他包装)之外的依赖性的servlet会非常棘手,现在不是吗?

但是,我想象一下,您可以创建自己的标签,该标签可以动态读取静态HTML文件并在响应中包含其内容。只要考虑到绕过这个限制就会让你的应用程序面临这种HTML不可用的风险,除非你准备好你的标签。

+0

感谢Michal M.可能作为替代方案,我必须尝试'c:import file =“filetoBeIncluded”'这是一个JSTL标记。 – Marshal

+0

那么,我打算写这是不可能的,除非目标文件本身是可用的Web资源,但事实证明,我会错的 - 这里的人用c:import:http:/ /www.coderanch.com/t/287204/JSP/java/JSTL-import所以不需要编写自己的标签;我的错! –

相关问题