0

嗨,我有一个项目可以在 Netbeans 上完美运行,语法或连接没有任何问题,但是当我尝试在 tomcat 中运行相同的 jsp 页面时,它会产生错误。错误可能出在目录结构中。

我将 jsp 页面、html 页面、css、images 文件夹、web-inf 文件夹和 .js 文件都放在了 webapps\login 的一个文件夹中。当我运行 index.html 页面时,当我单击登录页面链接时它会运行 bUt,它会显示以下异常。

有人可以帮我吗?

HTTP 状态 500 - 消息描述 服务器遇到内部错误 () 阻止它完成此请求。

例外:

javax.servlet.ServletException: com.mysql.jdbc.Driver
        org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
        org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
        org.apache.jsp.login_jsp._jspService(org.apache.jsp.login_jsp:907)
        org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause 

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
        org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
        org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
        org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:150)
        org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:71)
        java.lang.Class.forName0(Native Method)
        java.lang.Class.forName(Unknown Source)
        org.apache.jsp.login_jsp._jspService(org.apache.jsp.login_jsp:445)
        org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
4

2 回答 2

0

看来这com.mysql.jdbc.Driver不是你的类路径。您必须将所有需要的罐子(在这种情况下应该是mysql-connector-java.jar,但应该有更多)添加到:

webapps/应用程序名称/WEB-INF/lib/

在您的情况下,app-name是登录名。

于 2012-08-30T07:00:11.667 回答
0

通常您会生成一个包含您的代码库以及所有相关库的 WAR(网络存档)文件,并将其部署到 tomcat 中(例如,通过复制到 webapp 文件夹中)。据我记得, NB 已经生成了 WAR 文件(stackoverflow:如何在 NetBeans 中创建我的项目的 war 文件?)并将其存储在dist/项目的文件夹中。检查您是否可以在该文件夹中找到调用<projectname>.war的文件并将其复制到您的 webapp 目录。

于 2012-08-30T07:15:03.220 回答