Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我会出错;找不到类。加载类“时出错”;?_Java_Ejb - Fatal编程技术网

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。