JSF HelloWorld 请求的资源 () 不可用
我正在尝试使用 JSF 制作 HellowWorld 应用程序。我制作动态 Web 项目,选择 JSF v 2.0 进行配置,然后禁用库配置。然后我将 jsf-api.jar、jsf-impl.jar、jstl-api.jar 和 jstl-impl.jar 添加到我的 lib 文件夹中。然后创建简单的 jsp,当尝试启动它时,我得到 请求的资源 () 不可用。
我认为这与 web.xml 中 Faces Servlet 的映射有关。
I'm trying to make HellowWorld app with JSF. I make Dynamic web proj, choose JSF v 2.0 for configuration, then Disable library configuration. Then I add jsf-api.jar, jsf-impl.jar, jstl-api.jar and jstl-impl.jar to my lib folder. Then create simple jsp and when try to start it i get The requested resource () is not available.
I think it's something with the mapping of the Faces Servlet in web.xml.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要确保
FacesServlet
映射到web.xml
中,并且请求 URL(显示在浏览器地址栏中)与匹配;
。FacesServlet
的例如,如果 webcontent 中有一个
simple.jsp
文件,并且FacesServlet
映射到的
,那么你需要通过 http://localhost:8080/contextname/ 打开它simple.jsf。
上*.jsf与具体问题无关:为什么您会更喜欢遗留/不鼓励的 JSP 而不是它的现代后继者 Facelets(自 JSF 2.0 以来的标准视图技术)?
You need to ensure that the
FacesServlet
is mapped inweb.xml
and that the request URL (which appears in browser address bar) matches the<url-pattern>
of theFacesServlet
.E.g., if you have a
simple.jsp
file in webcontent and theFacesServlet
is mapped on an<url-pattern>
of*.jsf
, then you need to open it by http://localhost:8080/contextname/simple.jsf.Unrelated to the concrete problem: why would you ever prefer the legacy/discouraged JSP over its modern successor Facelets which is the standard view technology since JSF 2.0?
这里的问题是 jsp 文件不应该出现在 WEB-INF 文件夹中,请将其移动到 Web 内容下。
这将解决您的问题。
The problem here is jsp file shouldn’t be present inside WEB-INF folder move it under web content.
This will solve your issue.