HTTP状态 500 - 内部服务器错误
类型 异常报告
消息 /jsp/TestJavaBean.jsp (行.: [6], 列: [0]) [UseBean]有一个无效属性:[Class]
描述 服务器遇到一个意外的情况,阻止它完成请求。
例外情况
org.apache.jasper.JasperException: /jsp/TestJavaBean.jsp (行.: [6], 列: [0]) [UseBean]有一个无效属性:[Class]
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:292)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:98)
org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:207)
org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:634)
org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1188)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2391)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2443)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2449)
org.apache.jasper.compiler.Node$Root.accept(Node.java:472)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2391)
org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1857)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:224)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:386)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:362)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:346)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:400)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:379)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:327)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:770)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
):注意 主要问题的全部 stack 信息可以在 server logs 里查看
Apache Tomcat/10.0.4
调用JSP语句使用JAVABean提示--"[UseBean]有一个无效属性:[Class]"
存放bean.Dog.class文件位于/WEB-INF/classes/bean目录下.
使用class文件内容如下:
package bean;
import java.io.*;
public class Dog implements Serializable{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Dog() {
super();
}
public Dog(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
JSP文件内容如下:
<%@ page errorPage = "ErrorPage.jsp" %>
<%@ page language = "java" pageEncoding = "utf-8" %>
<%@ page import = "bean.*" %>
<jsp:useBean id="dog" Class="bean.Dog">
</jsp:useBean>
<jsp:setProperty name = "dog" property = "name" value = "dahuang"/>
<jsp:getProperty name = "dog" property = "name"/>
<%-- 在注释掉以上4句jsp语法后,以下面JAVA语法调用javabean后可以显示结果:dahuang --%>
<%
Dog dog = new Dog();
dog.setName("dahuang");
out.println(dog.getName());
%>
userBean的结尾是不是直接/就行了,就像这样<jsp:useBean id="dog" Class="bean.Dog" />。不是
<jsp:useBean id="dog" Class="bean.Dog"></jsp:useBean>
和你一样的问题,楼主解决了吗?
把Class改成class试试