首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GuiceConfig和JSP_TEMPLATES_BASE_PATH

GuiceConfig和JSP_TEMPLATES_BASE_PATH
EN

Stack Overflow用户
提问于 2013-12-17 09:39:13
回答 1查看 145关注 0票数 1

我有一个GuiceConfig:

代码语言:javascript
复制
public class GuiceConfig extends GuiceServletContextListener

..。使用执行以下操作的configureServlets()方法:

代码语言:javascript
复制
params.put(ServletContainer.FEATURE_FILTER_FORWARD_ON_404, "true");
params.put(ServletContainer.JSP_TEMPLATES_BASE_PATH, "/WEB-INF/jsp");

serve("/*").with(GuiceContainer.class, params);

该类使用@Path("/admin/index")将请求馈送到资源中,它只返回一个可查看的JSP资源:

代码语言:javascript
复制
return new Viewable( "/admin/index" ) ;

当我运行这个源代码并访问我的本地URL localhost:8046/admin/index时,我成功地检索到了所需的JSP资源。

但是,我不想提供(“/*”).with(GuiceContainer.class)。这样做会干扰在我的服务器上运行的其他模块。我只想处理与/rest预先挂起的请求。如果我将上面的源代码修改为以下代码:

代码语言:javascript
复制
params.put(ServletContainer.FEATURE_FILTER_FORWARD_ON_404, "true");
params.put(ServletContainer.JSP_TEMPLATES_BASE_PATH, "/WEB-INF/jsp");

serve("/rest/*").with(GuiceContainer.class, params);

我现在可以成功访问本地URL localhost:8046/rest/admin/index。但是,尽管此页面成功返回,但JSP不能正确显示。控制台日志表明JSP资源、新的可视对象(“/admin/index”)已正确解析...但是页面的输出如下所示:

代码语言:javascript
复制
Error 404 /WEB-INF/jsp/admin/index.jsp

我一直在挖掘,但一直无法找到一个解释这个问题的答案。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2013-12-18 08:03:37

根据servlet规范,正常请求无法访问整个/WEB-INF/树。

但是,它可以通过各种分派技术在内部引用。

Error 404 /WEB-INF/jsp/admin/index.jsp似乎表明有东西试图直接引用该路径。

如果你击中了你的http://localhost/admin/indexhttp://localhost/admin/index.jsp,会发生什么?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20624416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档