Jersey MVC:jsp 问题:请求的资源不可用
Jersey MVC: jsp issue: The requested resource is not available
我正在工作:
- Eclipse(版本:Neon.1a 发布 (4.6.1))
,使用:
- 泽西岛 2.25.1
- 泽西岛 MVC
- 阿帕奇 Tomcat 7.0.76.
这是我的应用程序的结构:
类:
Jsp:
我正在通过扩展 ResourceConfig:
配置我的应用程序
AppConfigs.java.
这是资源 class:
ForumsController.java
问题是我收到 404-Not found(对于:http://localhost:8080/StudSiteProj/)。
你能帮我了解一下是什么原因吗?
我在 return new Viewable(..) 中指定了绝对路径,所以我猜应用程序应该搜索 index.jsp 使用此路径。为什么这不起作用?
我终于找到了解决办法。
我发现了 2 个问题:
第一个问题
原因:
The way @ApplicationPath annotation was written.
结论:
不应该是这样的:
或
或
解法:
所以现在我的 AppConfigs class 是:
第二题
原因:
JspMvcFeature.TEMPLATE_BASE_PATH property was not set.
结论:
我通过查看 apidocs here 了解到这个 属性 可能是缺失的。它说:
所以,如果没有,我必须设置一些。
解法:
我设置为:/WEB-INF/app/views
现在,我的 AppConfigs class 看起来像这样:
资源 class ForumsController 现在是:
看,只有:
,因为JspMvcFeature.TEMPLATE_BASE_PATH
中的值会加在它的前面。所以 "index.jsp" 将在以下位置搜索:
此路径是相对于 servlet 上下文路径的(例如:对于我的项目,名为 StudSiteProj,上下文路径是 /StudSiteProj ).
这里我使用的是绝对路径(在 Viewable 中指定的路径)。
但是在 Jersey MVC(相对路径)中存在另一种方法。
是我对问题的回答 =) 在另一个 Whosebug 页面上。
我正在工作:
- Eclipse(版本:Neon.1a 发布 (4.6.1))
,使用:
- 泽西岛 2.25.1
- 泽西岛 MVC
- 阿帕奇 Tomcat 7.0.76.
这是我的应用程序的结构:
类:
Jsp:
我正在通过扩展 ResourceConfig:
配置我的应用程序AppConfigs.java.
这是资源 class:
ForumsController.java
问题是我收到 404-Not found(对于:http://localhost:8080/StudSiteProj/)。
你能帮我了解一下是什么原因吗? 我在 return new Viewable(..) 中指定了绝对路径,所以我猜应用程序应该搜索 index.jsp 使用此路径。为什么这不起作用?
我终于找到了解决办法。
我发现了 2 个问题:
第一个问题
原因:
The way @ApplicationPath annotation was written.
结论:
不应该是这样的:
或
或
解法:
所以现在我的 AppConfigs class 是:
第二题
原因:
JspMvcFeature.TEMPLATE_BASE_PATH property was not set.
结论:
我通过查看 apidocs here 了解到这个 属性 可能是缺失的。它说:
所以,如果没有,我必须设置一些。
解法:
我设置为:/WEB-INF/app/views
现在,我的 AppConfigs class 看起来像这样:
资源 class ForumsController 现在是:
看,只有:
,因为JspMvcFeature.TEMPLATE_BASE_PATH
中的值会加在它的前面。所以 "index.jsp" 将在以下位置搜索:
此路径是相对于 servlet 上下文路径的(例如:对于我的项目,名为 StudSiteProj,上下文路径是 /StudSiteProj ).
这里我使用的是绝对路径(在 Viewable 中指定的路径)。
但是在 Jersey MVC(相对路径)中存在另一种方法。