Java Tomcat和STS上的Spring Web MVC-请求的资源不可用

Java Tomcat和STS上的Spring Web MVC-请求的资源不可用,java,spring,macos,spring-mvc,tomcat,Java,Spring,Macos,Spring Mvc,Tomcat,使用SpringToolSuite(STS)和TomcatV8.0,我按照教程学习并获得了一些关于Spring的知识。我的意图是显示一个简单的“Hello World”或其他东西,并在此基础上进行构建 这是我的密码。这些文件中的大多数是在启动项目时自动创建的: HomeController.java: home.jsp: 在控制台日志中,我没有看到 我做错了什么?您的请求应该是http://localhost:8080/{applicationname} 由于返回“home”您的HomeCont

使用SpringToolSuite(STS)和TomcatV8.0,我按照教程学习并获得了一些关于Spring的知识。我的意图是显示一个简单的“Hello World”或其他东西,并在此基础上进行构建

这是我的密码。这些文件中的大多数是在启动项目时自动创建的:

HomeController.java:

home.jsp:

在控制台日志中,我没有看到


我做错了什么?

您的请求应该是
http://localhost:8080/{applicationname}

由于
返回“home”
您的
HomeController
将自动调用名为
home.JSP的JSP文件


如何找到http请求的实际应用程序名?

  • 双击STS窗口内的服务器。在本例中,它是关键的tc Server Developer Edition v3.1
  • Web模块文件现在已打开。然后单击模块,您将看到请求应用程序名称,在本例中为/mvc:

  • 因此,浏览器url现在是

    感谢您的澄清。运行项目会自动指向该页面。输入
    http://localhost:8080/samplemvcproject
    导致了同样的结果。我的返回/spring。当我输入的时候,它工作了!谢谢面对同样的问题,这个解决方案对我不起作用。
    public class HomeController {
    
        private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
    
        /**
         * Simply selects the home view to render by returning its name.
         */
        @RequestMapping(value = "/", method = RequestMethod.GET)
        public String home(Locale locale, Model model) {
            logger.info("Welcome home! The client locale is {}.", locale);
    
            Date date = new Date();
            DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
    
            String formattedDate = dateFormat.format(date);
    
            model.addAttribute("serverTime", formattedDate );
            model.addAttribute("welcomeMessage", "Spring MVC trial: Welcome!");
    
            return "home";
        }
    }
    
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <%@ page session="false" %>
    <html>
    <head>
        <title>Home</title>
    </head>
    <body>
    <h1>
        Hello world!  
    </h1>
    
    <P>  The time on the server is ${serverTime}. </P>
    <P> ${welcomeMessage} </P>
    </body>
    </html>
    
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    
        <!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/root-context.xml</param-value>
        </context-param>
    
        <!-- Creates the Spring Container shared by all Servlets and Filters -->
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
    
        <!-- Processes application requests -->
        <servlet>
            <servlet-name>appServlet</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>appServlet</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
    </web-app>
    
    "Welcome home! The client locale is XXXXX"