Java 为什么我会出错;找不到类。加载类“时出错”;?
我有一个Java 为什么我会出错;找不到类。加载类“时出错”;?,java,ejb,Java,Ejb,我有一个接口和一个servlet文件,每当我试图运行应用程序时,它都会给我以下错误 严重:未找到类[LDir/DirSessionLocal;]。加载[class DirServlet]时出错 接口代码 package Dir; import javax.ejb.Local; @Local public interface DirSessionLocal { String getContact(String name1); String getDetails(String name2)
接口
和一个servlet
文件,每当我试图运行应用程序时,它都会给我以下错误
严重:未找到类[LDir/DirSessionLocal;]。加载[class DirServlet]时出错
接口代码
package Dir;
import javax.ejb.Local;
@Local
public interface DirSessionLocal {
String getContact(String name1);
String getDetails(String name2);
void rater(String r);
}
servlet的代码
import Dir.DirSessionLocal;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns = {"/DirServlet"})
public class DirServlet extends HttpServlet {
@EJB
private DirSessionLocal dirSession;
/**
* Processes requests for both HTTP
* <code>GET</code> and
* <code>POST</code> methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
/* TODO output your page here. You may use following sample code. */
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet DirServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet DirServlet at " + request.getParameter("name") + "</h1>");
out.println("<br>");
out.println("<h1>" + request.getParameter("nameD") + "</h1>");
out.println("<br>");
out.println("<h1>" + request.getParameter("rate") + "</h1>");
String a=request.getParameter("nameD");
if(a.equals("abc"))
out.println("<h1>" + dirSession.getContact(a) + "</h1>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
* Handles the HTTP
* <code>GET</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP
* <code>POST</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}这意味着运行servlet/webapp的JVM无法找到名为
Dir.DirSessionLocal
的类的“.class”文件
根据“部署”servlet的方式,您需要将缺少的类添加到JAR文件、WAR文件、web服务器上的webapp树、,等等。但是DirSession和DirSessionLocal的类文件已经在Dir目录中成功创建,那么为什么它无法加载?向我们展示stacktrace。我可能有类似的问题,如何用有效的方法部署应用程序来改进答案?在我的例子中,我只是部署了企业应用程序。问题是OP和您都没有提供足够的信息来编写更好的答案。提出新问题,提供所有相关细节,包括完整的stacktrace。