Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HTTP状态404-tomcat 7_Java_Spring_Hibernate_Jakarta Ee - Fatal编程技术网

Java HTTP状态404-tomcat 7

Java HTTP状态404-tomcat 7,java,spring,hibernate,jakarta-ee,Java,Spring,Hibernate,Jakarta Ee,我正在构建一个spring+hibernate应用程序。当我运行这个项目时,我得到了一个404错误。编译器不显示任何错误消息,它指示应用程序服务器(tomcat 7)加载servlet,但不显示控制器类中指示的根页面 请帮忙 配置。。。。。 ` web.xml sdnext org.springframework.web.servlet.DispatcherServlet 上下文配置位置 /WEB-INF/config/dispatcher-servlet.xml 1. sdnext *.h

我正在构建一个spring+hibernate应用程序。当我运行这个项目时,我得到了一个404错误。编译器不显示任何错误消息,它指示应用程序服务器(tomcat 7)加载servlet,但不显示控制器类中指示的根页面

请帮忙

配置。。。。。 `

web.xml


sdnext
org.springframework.web.servlet.DispatcherServlet
上下文配置位置
/WEB-INF/config/dispatcher-servlet.xml
1.
sdnext
*.html
index.html
表示tomcat服务器正在获取请求,但现在不知道如何处理给定的请求路径

换句话说,您的URL中有一个bug,或者您的配置不符合您的要求


我们需要您的配置和所需的URL来帮助您。

问题是,您只将dispatcher servlet映射到*.html,而不使用.html后缀映射控制器

要使其工作,请以不同方式映射控制器,即:

@RequestMapping(value = "/index.html", method = RequestMethod.GET)
public String welcomeHome(){
    return "index";
}
或者(我会怎么做): 将dispatcher servlet映射到web.xml中的所有请求:

<servlet-mapping>
    <servlet-name>sdnext</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
然后您需要映射一些控制器方法,如下所示:

http://somehost:someport/YourApplication/
@RequestMapping(value = {"/", "/index"}, method = RequestMethod.GET)
public String home() {
  // your code here
}

这样,调用
http://somehost:someport/YourApplication/
http://somehost:someport/YourApplication/index
将导致调用相同的控制器方法。

您可以像:localhost:8080那样访问您的服务器吗?是的,我可以。我尝试了3种方式访问它,部署项目、在eclipse中运行项目和我的chrome浏览器。请再次验证您的URL,注意:您的web名称区分大小写。我已经映射了它,我希望它首先加载索引页面。我在问题中没有看到该映射。还可以显示dispatcher servlet映射吗?(在web.xml中)如果显式调用,会看到您的索引页吗?当我在浏览器的地址栏中显式调用它时,在服务器启动后,仍然会收到404错误。请看上面开头的问题,我发布了两段代码,如果您向我们展示servlet映射(web.xml),我们可能会有更多帮助。好的,我随后更新了我的答案。希望能有所帮助。
<servlet-mapping>
    <servlet-name>sdnext</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
http://somehost:someport/YourApplication/
@RequestMapping(value = {"/", "/index"}, method = RequestMethod.GET)
public String home() {
  // your code here
}