未显示欢迎页面 JSP

Not Showing Welcome Page JSP

我已经在 eclipse 中创建了动态 web 项目并添加了 index.jsp 文件,显然这是我的欢迎 page.I 已经在 web.xml 中添加了它,我正在使用 angular js用于前端接口管理。

这是我的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" metadata-complete="false" version="3.0">
<welcome-file-list>

    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
    <servlet>
    <description></description>
    <display-name>ValidateLogin</display-name>
    <servlet-name>ValidateLogin</servlet-name>
    <servlet-class>ValidateLogin</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>ValidateLogin</servlet-name>
    <url-pattern>/ValidateLogin</url-pattern>
  </servlet-mapping>

</web-app>

现在我的问题是当我 运行 项目显示正在加载但未打开任何内容时。但是,如果我在浏览器地址栏中添加了项目 url+index.jsp,则页面加载成功。我在 angular js 脚本中使用路由提供程序,如下

app.js

var myApp = angular.module('myApp', [
    'ngRoute',
    'appController'
    ]);

myApp.config(['$routeProvider',function ($routeProvider) {

    $routeProvider.
    when('/home', {
        templateUrl: 'views/login.jsp',
        controller: 'LoginController'
    }).
    when('/main', {
        templateUrl: 'views/Home.jsp',
        controller: 'MainController'
    }).
    otherwise({ redirectTo: '/home' });

}]);

这是我的目录结构

问题是什么?有人能回答吗?

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

Add.jsp 索引中的扩展

确保您的 index.jsp 在 WEB-INF 文件夹之外

为了访问 jsp,正确的 url 将

http://localhost:8080/ProjectName/index.jsp

根据您的服务器更改端口号。您需要提供项目 url 才能访问 jsp。假设您在服务器上部署了 4 个项目,每个项目都有 index.jsp。如果您不提供项目 url.

,容器将如何确定 index.jsp 到 运行

您提到了没有任何文件扩展名的欢迎文件

     <welcome-file>index</welcome-file>

只需添加带有文件扩展名的有效欢迎页面,如果您的文件可能是 index.jsp

   <welcome-file>index.jsp</welcome-file>

并且您的 $routeProvider 配置不会影响您在 web.xml 中提到的欢迎页面加载。路由提供者仅在你的 angular js 加载后影响...

  1. 确保欢迎文件 属性 是这样提到的: index.jsp

  2. 确保 index.jsp 与 WEB-INF 平行存在。

希望这有效。