当我从Eclipse使用Tomcat 8.0启动Java EE项目时,无法设置在浏览器中加载的默认页面。我正在尝试学习JSF,因此我遵循了本教程
一切正常,但是当我右键单击login.xhtml或welcome.xhtml文件并选择“运行方式/在服务器上运行” 时,我只能看到创建的页面。
到目前为止,当我启动整个项目时,我创建的所有其他Web应用程序都加载了默认页面。默认行为是加载index.html页面(如果有的话,也可以加载index.jsp)。因此,我在项目的文件夹中添加index.html和index.xhtml页面WEB-INF,希望它们中至少显示一个。但是,什么也没有发生。浏览器始终仅在localhost:8080/JSFFaceletsTutorial/URL 上显示页面,但是页面是白色的,甚至没有错误消息。我认为在解决此问题的过程中一直遇到错误404,但是,我不再能够重现此错误,并且我不记得是什么原因引起的。
我发现可以更改默认的起始页面
但是,它对我也不起作用。无论是否编辑web.xml文件,都得到相同的结果。
更令人困惑的是,当我尝试更改Web浏览器时:“ Window / Web Browser / ...”在外部Web浏览器中的行为与在内部Eclipse Web浏览器中的行为有所不同。内部页面始终是空白页面-但是外部网络浏览器曾经设法显示该index.html页面-但是它是一些过时的版本。尽管我绝对确定要编辑,保存更改,重新启动服务器……但仍然可以看到页面的过时版本。即使在这种情况下,它仍然会忽略web.xml文件中所做的更改。但是当我现在尝试时,它再次在所有浏览器中显示空白页面。除了编辑web.xml文件外,我不知道所做的任何更改。
我的猜测是问题出在我尚未完全掌握的JSF技术中。这是因为当我选择使用右键单击“运行方式/在服务器上运行” 来运行login.xhtml和welcome.xhtml页面时,这些页面的URL上localhost:8080:带有path /JSFFaceletsTutorial/faces/login.xhtml和/JSFFaceletsTutorial/faces/welcome.xhtml。这很奇怪,因为我的项目中没有任何目录“ faces”。输入以下所有可能的排列:
<welcome-file-list>
<welcome-file>faces/index.html</welcome-file>
<welcome-file>faces/index.xhtm</welcome-file>
</welcome-file-list>
在web.xml没有帮助。当我在此处输入完整地址时也无济于事。
这是我进入控制台的警告(我跳过了INFO日志条目):
“ 2014年12月19日上午9:39:55 org.apache.tomcat.util.digester.SetPropertiesRule开始警告:[SetPropertiesRule] {Server / Service / Engine / Host / Context}将属性'source'设置为'org.eclipse。 jst.jee.server:JSFFaceletsTutorial'找不到匹配的属性... ...警告:JSF1074:名为'loginBean'的托管bean已被注册。用com.tutorial.LoginBean替换现有的托管bean类类型com.tutorial.LoginBean。 2014年12月19日上午9:39:57 org.apache.coyote.AbstractProtocol开始”
我不确定这是否有帮助。我现在没主意了。
喵喔喔