Spring-проект при запуске выдает ошибку 404
Пишу первое Spring-MVC веб-приложение по туториалу(https://java-master.com/spring-mvc-%D0%BF%D0%B5%D1%80%D0%B2%D0%BE%D0%B5-%D0%B2%D0%B5%D0%B1-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5/). Все сделал, все настроил, но при запуске TomCat выдает 404. Хотя должно вывести:
Пробую следующие адреса:
http://localhost:8080/untitled2/war_exploded
http://localhost:8080/untitled2/
При запуске TomCat он и сам автоматический развертывает мне окно chrome / везде ошибка 404.
Tomcat vers 9.0.30; Intelij Ultimate; Spring MVC 5.2.4; jstl 1.2; javaee-api 8.0.1; Maven build;
package com.javamaster.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.ViewResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.view.InternalResourceView;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.javamaster")
public class WebConfig {
@Bean
ViewResolver viewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/");
resolver.setSuffix(".jsp");
return resolver;
}
}
package com.javamaster.controller;
import com.javamaster.domain.Order;
import com.javamaster.service.OrderService;
import com.javamaster.service.OrderServiceImp;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import java.util.List;
@Controller
public class OrderController {
private OrderService orderService = new OrderServiceImp();
@RequestMapping(value = "/", method = RequestMethod.GET)
public String getOrderPage(Model model){
List<Order> orders = orderService.getAll();
model.addAttribute("orderList", orders);
return "order";
}
}
package com.javamaster.domain;
public class Order {
private Integer id;
private String title;
private Double price;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public Double getPrice() {
return price;
}
public void setPrice(Double price) {
this.price = price;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
result = prime * result + ((price == null) ? 0 : price.hashCode());
result = prime * result + ((title == null) ? 0 : title.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Order other = (Order) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
if (price == null) {
if (other.price != null)
return false;
} else if (!price.equals(other.price))
return false;
if (title == null) {
if (other.title != null)
return false;
} else if (!title.equals(other.title))
return false;
return true;
}
@Override
public String toString() {
return "Order [id=" + id + ", title=" + title + ", price=" + price + "]";
}
}
TOMCAT:
"C:\Program Files\TomCat\apache-tomcat-9.0.30\bin\catalina.bat" run
[2020-03-10 06:24:28,613] Artifact untitled2:war exploded: Waiting for server connection to start artifact deployment...
Using CATALINA_BASE: "C:\Users\Ђавга\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2"
Using CATALINA_HOME: "C:\Program Files\TomCat\apache-tomcat-9.0.30"
Using CATALINA_TMPDIR: "C:\Program Files\TomCat\apache-tomcat-9.0.30\temp"
Using JRE_HOME: "C:\Program Files\Java\jdk-12.0.2"
Using CLASSPATH: "C:\Program Files\TomCat\apache-tomcat-9.0.30\bin\bootstrap.jar;C:\Program Files\TomCat\apache-tomcat-9.0.30\bin\tomcat-juli.jar"
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name: Apache Tomcat/9.0.30
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Dec 7 2019 16:42:04 UTC
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.30.0
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Windows 10
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 10.0
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: C:\Program Files\Java\jdk-12.0.2
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 12.0.2+10
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\Артур\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2
10-Mar-2020 18:24:30.097 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: C:\Program Files\TomCat\apache-tomcat-9.0.30
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\Артур\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2\conf\logging.properties
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.password.file=C:\Users\Артур\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2\jmxremote.password
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.access.file=C:\Users\Артур\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2\jmxremote.access
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\Артур\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_30_untitled2
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\Program Files\TomCat\apache-tomcat-9.0.30
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\Program Files\TomCat\apache-tomcat-9.0.30\temp
10-Mar-2020 18:24:30.112 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Java\jdk-12.0.2\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\iCLS\;C:\Program Files\Intel\Intel(R) Management Engine Components\iCLS\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Java\jre1.8.0_141\bin;C:\Program Files\apache-maven-3.6.2\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\MySQL\MySQL Shell 8.0\bin\;C:\Users\Артур\AppData\Local\Microsoft\WindowsApps;C:\Users\Артур\AppData\Local\atom\bin;.]
10-Mar-2020 18:24:30.471 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
10-Mar-2020 18:24:30.503 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
10-Mar-2020 18:24:30.518 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [814] milliseconds
10-Mar-2020 18:24:30.596 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
10-Mar-2020 18:24:30.596 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.30]
10-Mar-2020 18:24:30.596 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
10-Mar-2020 18:24:30.612 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
10-Mar-2020 18:24:30.628 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [102] milliseconds
Connected to server
[2020-03-10 06:24:30,909] Artifact untitled2:war exploded: Artifact is being deployed, please wait...
10-Mar-2020 18:24:31.674 WARNING [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [203] milliseconds.
[2020-03-10 06:24:31,721] Artifact untitled2:war exploded: Artifact is deployed successfully
[2020-03-10 06:24:31,721] Artifact untitled2:war exploded: Deploy took 812 milliseconds
10-Mar-2020 18:24:40.620 INFO [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Установка веб приложения в папку [C:\Program Files\TomCat\apache-tomcat-9.0.30\webapps\manager]
10-Mar-2020 18:24:40.730 INFO [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\Program Files\TomCat\apache-tomcat-9.0.30\webapps\manager] has finished in [110] ms
Все классы добавлять не стал.