本文介绍了是什么导致此jsp错误500?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我写了一个非常简单的jsp问题,该问题从一个类中获取一个数字并显示出来,但遇到错误500.

I wrote a very simple jsp problem that gets a number from a class and show it but I encountered error 500.

我在tomcat 5.5中使用eclipse:

I use eclipse with tomcat 5.5:

 <%@page import="java.io.IOException"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<h1>number of shown :</h1>
<body>
<%
try{
out.print(Model.getCount());
}
catch(IOException k)
{
    out.println("Eror");
}
%>
</body>
</html>

我的模型课=>

public class Model {
    static int number=0;
    public static int getCount()
    {
        number++;
        return number;
    }
}

我的任何模型类都是默认程序包.

any my model class is default package.

我看到的错误:

消息

说明服务器遇到一个 内部错误()阻止了它 满足此请求.

description The server encountered an internal error () that prevented it from fulfilling this request.

例外

org.apache.jasper.JasperException: 无法为JSP编译类:

org.apache.jasper.JasperException: Unable to compile class for JSP:

在第14行的第一个行发生了错误 jsp文件:/show.jsp模型不能为 已解决11:12:<%13:尝试{ 14:out.print(Model.getCount()); 15:} 16:catch(IOException k)17:{

An error occurred at line: 14 in the jsp file: /show.jsp Model cannot be resolved 11: 12: <% 13: try{ 14: out.print(Model.getCount()); 15: } 16: catch(IOException k) 17: {

Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:93) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:451) org.apache.jasper.compiler.Compiler.compile(Compiler.java:328) org.apache.jasper.compiler.Compiler.compile(Compiler.java:307) org.apache.jasper.compiler.Compiler.compile(Compiler.java:295) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:309) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259) javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:93) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:451) org.apache.jasper.compiler.Compiler.compile(Compiler.java:328) org.apache.jasper.compiler.Compiler.compile(Compiler.java:307) org.apache.jasper.compiler.Compiler.compile(Compiler.java:295) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:309) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259) javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

note根的完整堆栈跟踪 原因在Apache中可用 Tomcat/5.5.33日志.

note The full stack trace of the root cause is available in the Apache Tomcat/5.5.33 logs.

Apache Tomcat

Apache Tomcat

推荐答案

切勿将任何类放入默认包中.程序包中的类无法访问默认程序包,并且由于Tomcat在Servlet类中转换了JSP,并且该类在程序包中,因此它无法访问您的Model类.

Never put any class in the default package. The default package is not accessible to classes in a package, and since the JSP is transformed in a servlet class by Tomcat, and this class is in a package, it can't access your Model class.

一旦它位于定义明确的程序包中,就必须将其导入,如mschonaker在他的回答中所示:

Once it's in a well-defined package, you'll have to import it, as mschonaker shows in his answer:

<%@page import="somepackage.Model"%>

这篇关于是什么导致此jsp错误500?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-17 09:30
查看更多