ошибка 404, сервер не найден при использовании щелчка правой кнопкой мыши на index.html затем запустите

#java #jsp #servlets #intellij-idea #tomcat9

#java #jsp #сервлеты #intellij-idea #tomcat9

Вопрос:

У меня возникла проблема с моим сервером Tomcat в IntelliJ. Моя программа будет запущена, когда Tomcat выбран в конфигурациях в правом верхнем углу программы. По какой-то причине мой профессор хочет, чтобы мы могли щелкнуть правой кнопкой мыши на index.html страница и выберите выполнить. Когда я делаю это таким образом, я получаю ошибку 404:

Описание Исходный сервер не нашел текущее представление для целевого ресурса или не желает раскрывать, что оно существует.

Я не уверен, что не так с моей настройкой. Я перенес свою программу в конфигурацию моих друзей, и у нее возникла та же проблема. Я также перенес ее проект, на котором не было этой проблемы на ее компьютере, на мой. У ее программы была такая же проблема при запуске на моей установке.

index.html

 <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="css/userEmailList.css">
</head>
<body>
<h1>Join our email list</h1>
<p>Please click any button below to perform the desired action </p>

<a href ="delete.jsp"><input type="button" value = "DELETE"></a>
<a href ="insert.jsp"><input type="button" value = "INSERT"></a>
<a href ="update.jsp"><input type="button" value = "UPDATE"></a>

<form action="emailList" method="post">

    <h1>Click the button below to view all records </h1>
    <input type="hidden" name="action" value="select_records">
    <input type="submit" name="action" value="SELECT RECORDS">

</form>
</body>
</html>
  

сервлет

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">

    <servlet>
        <servlet-name>EmailListServlet</servlet-name>
        <servlet-class>EmailListServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>EmailListServlet</servlet-name>
        <url-pattern>/emailList</url-pattern>
    </servlet-mapping>

</web-app>
  

Я должен иметь возможность запускать программу в обоих направлениях. Но щелчок правой кнопкой мыши на index.html -> Выполнить не работает

Комментарии:

1. Вы сравнивали URL-адреса, чтобы увидеть, что отличается?

2. localhost:8080/index.html это то, что появляется, когда я щелкаю правой кнопкой мыши и запускаю localhost:8080/Assignment2_EmailListMySql_war_exploded , это то, что происходит, когда я использую конфигурацию Tomcat. Это название моего проекта. Я довольно новичок в IntelliJ и веб-разработке, поэтому я не уверен, как это исправить. Приветствуется любая помощь

Ответ №1:

Пожалуйста, попробуйте изменить URL на «http://localhost:8080 //index.html «. Связанная проблема на YouTrack:https://youtrack.jetbrains.com/issue/IDEA-206534

Ответ №2:

Измените конфигурацию при tomcat/conf/server.xml поиске файла :

 Host name="localhost" appBase="webapps/manager" unpackWARs="true" autoDeploy="true">
  

Измените путь к appbase к вашему приложению