Пакет не существует ошибка при попытке импортировать свой собственный пакет в сервлет - PullRequest
1 голос
/ 20 апреля 2020

Я пытаюсь импортировать свои собственные пакеты в созданный им сервлет, используя tomcat.

Два java файла, с которыми я работаю, это сервлет (movieServlet. java) и другой класс, который я пытаюсь импортировать из пакета (Mov ie. java)

Иерархия папок:

classes
|
+--movieServlet.java
|
+--movie
   |
   +--Movie.java

movieServlet. java

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;
import movie.Movie;

@WebServlet(urlPatterns = {"/movieServlet"})
public class movieServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    PrintWriter out = response.getWriter();

    Movie Movie = new Movie();
    request.setAttribute("movies", Movie.getAllMovies());

    RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/jsps/movies.jsp");
    dispatcher.forward(request,response);
} 


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    PrintWriter out = response.getWriter();


    RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/jsps/movieDetails.jsp");
    dispatcher.forward(request,response);
} 

}

и это вершина Mov ie. java (это длинный файл)

package movie;
import java.util.*;
import java.util.List;
import javax.sql.*;
import java.sql.*;
import javax.naming.InitialContext;

public class Movie implements java.io.Serializable
{
private static DataSource dataSource = null;
private static Connection c = null;

private int id;
private String title;
private String url;
private int year;

public Movie(){}

если вам нужна дополнительная информация, пожалуйста, спросите :), это было действительно раздражает меня.

1 Ответ

0 голосов
/ 21 апреля 2020

Я новичок здесь, так что извините, если мой ответ не идеален. Как вы уже сказали, вы хотите импортировать свой собственный пакет, который содержит класс Mov ie. Я попытался реализовать все ваши основные методы, и он работает отлично, и я получаю свою ценность от Mov ie. java.

movieServlet. java

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import movie.Movie;

public class movieServlet extends HttpServlet {

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
              PrintWriter out = response.getWriter();
               Movie Movie = new Movie();
               request.setAttribute("movies", Movie.getAllMovies());
               out.println(request.getAttribute("movies"));
   }


 }

Mov ie. java

package movie;
public class Movie {
String s;
   public Movie(){
      s="hello zDoctor";   
   }
   public String getAllMovies(){
       return s;
   }
}

выход сервлета

структура файла

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...