Search code examples
intellij-ideatomcat9java-17

tomcat simple war 404


Hello I have trouble on my new machine when deploy war on Tomcat(9.0.80) with Intellij. Project very simple have only one class Main:

package org.example;

import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.io.PrintWriter;

@WebServlet("/first")
public class Main extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        PrintWriter writer = resp.getWriter();
        writer.println("WORKING!");
        writer.flush();
    }
}

My pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>Test</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>6.0.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
</project>

My run configuration in IDEA: https://i.sstatic.net/zF8ff.png https://i.sstatic.net/FyCoW.png

Result: https://i.sstatic.net/HtZU4.png

Catalina logs from intellij:

C:\Users\Oleks\Java\apache-tomcat-9.0.80\bin\catalina.bat run
[2023-10-06 03:09:00,086] Artifact Test:war exploded: Waiting for server connection to start artifact deployment...
Using CATALINA_BASE:   "C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999"
Using CATALINA_HOME:   "C:\Users\Oleks\Java\apache-tomcat-9.0.80"
Using CATALINA_TMPDIR: "C:\Users\Oleks\Java\apache-tomcat-9.0.80\temp"
Using JRE_HOME:        "C:\Program Files\jdk-17.0.8.101-hotspot"
Using CLASSPATH:       "C:\Users\Oleks\Java\apache-tomcat-9.0.80\bin\bootstrap.jar;C:\Users\Oleks\Java\apache-tomcat-9.0.80\bin\tomcat-juli.jar"
Using CATALINA_OPTS:   ""
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.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
06-Oct-2023 15:09:00.798 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/9.0.80
06-Oct-2023 15:09:00.804 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Aug 23 2023 21:59:38 UTC
06-Oct-2023 15:09:00.804 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.80.0
06-Oct-2023 15:09:00.804 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 11
06-Oct-2023 15:09:00.804 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            10.0
06-Oct-2023 15:09:00.804 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
06-Oct-2023 15:09:00.805 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             C:\Program Files\jdk-17.0.8.101-hotspot
06-Oct-2023 15:09:00.805 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           17.0.8.1+1-LTS
06-Oct-2023 15:09:00.805 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Microsoft
06-Oct-2023 15:09:00.805 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999
06-Oct-2023 15:09:00.805 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\Users\Oleks\Java\apache-tomcat-9.0.80
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999\conf\logging.properties
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
06-Oct-2023 15:09:00.806 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.password.file=C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999\jmxremote.password
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.access.file=C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999\jmxremote.access
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\Oleks\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c7ed3630-c20c-4433-a730-6eadeead1999
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\Users\Oleks\Java\apache-tomcat-9.0.80
06-Oct-2023 15:09:00.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\Users\Oleks\Java\apache-tomcat-9.0.80\temp
06-Oct-2023 15:09:00.811 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The Apache Tomcat Native library which allows using OpenSSL was not found on the java.library.path: [C:\Program Files\jdk-17.0.8.101-hotspot\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\jdk-17.0.8.101-hotspot\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:\Users\Oleks\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA 2023.2.2\bin;C:\Users\Oleks\AppData\Local\Programs\Microsoft VS Code\bin;.]
06-Oct-2023 15:09:00.976 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
06-Oct-2023 15:09:00.995 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [393] milliseconds
06-Oct-2023 15:09:01.046 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
06-Oct-2023 15:09:01.047 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.80]
06-Oct-2023 15:09:01.061 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
06-Oct-2023 15:09:01.128 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [131] milliseconds
Connected to server
[2023-10-06 03:09:01,188] Artifact Test:war exploded: Artifact is being deployed, please wait...
[2023-10-06 03:09:01,564] Artifact Test:war exploded: Artifact is deployed successfully
[2023-10-06 03:09:01,564] Artifact Test:war exploded: Deploy took 376 milliseconds
06-Oct-2023 15:09:11.076 INFO [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\Users\Oleks\Java\apache-tomcat-9.0.80\webapps\manager]
06-Oct-2023 15:09:11.179 INFO [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\Users\Oleks\Java\apache-tomcat-9.0.80\webapps\manager] has finished in [104] ms

Any idea how to make it work?

P.S. https://i.sstatic.net/9Uk1k.png


Solution

  • This problem solved after I see that https://i.sstatic.net/kU73v.png. Just use Jakarta with 10+ tomcat version.