网上也有好多人出现这样的问题但照样子改了还是不行所以发过来求助了。
环境:Myeclipse+tomcat运行自带例子没问题。错误:/BeanTest.jsp(26,3) The value for the useBean class attribute SimpleBean is invalid路径:
E:\jspDE\Apache Software Foundation\Tomcat 5.5\webapps\test
放的是BeanTest.jspE:\jspDE\Apache Software Foundation\Tomcat 5.5\webapps\test\WEB-INF\classes\simplebean
放的是SimpleBean.class //***SimpleBean.class放在了simplebean包下代码:jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@ page import="simplebean.SimpleBean"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'BeanTest.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head>
<body>
<jsp:useBean id="test" class="simplebean.SimpleBean" scope="application"/>
<jsp:setProperty name="test" property="message" value="hello jsp"/>
<%=test.getMessage()%>
</body>
</html>代码java:
package simplebean;
public class SimpleBean
{
private String messgae="no message";
public String getMessage()
{
return this.messgae;
}
public void setMessage(String message)
{
this.messgae=message;
}
}
运行方式:
http://localhost:8090/test/BeanTest.jsp
环境:Myeclipse+tomcat运行自带例子没问题。错误:/BeanTest.jsp(26,3) The value for the useBean class attribute SimpleBean is invalid路径:
E:\jspDE\Apache Software Foundation\Tomcat 5.5\webapps\test
放的是BeanTest.jspE:\jspDE\Apache Software Foundation\Tomcat 5.5\webapps\test\WEB-INF\classes\simplebean
放的是SimpleBean.class //***SimpleBean.class放在了simplebean包下代码:jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@ page import="simplebean.SimpleBean"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'BeanTest.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head>
<body>
<jsp:useBean id="test" class="simplebean.SimpleBean" scope="application"/>
<jsp:setProperty name="test" property="message" value="hello jsp"/>
<%=test.getMessage()%>
</body>
</html>代码java:
package simplebean;
public class SimpleBean
{
private String messgae="no message";
public String getMessage()
{
return this.messgae;
}
public void setMessage(String message)
{
this.messgae=message;
}
}
运行方式:
http://localhost:8090/test/BeanTest.jsp
应该在
<jsp:setProperty name="test" property="message" value="hello jsp"/>
<%=test.getMessage()%>加上scope="application"作用域。
E:\jspDE\Apache Software Foundation\Tomcat 5.5\webapps\test\WEB-INF\classes\simplebeanpackage simplebean;
public class SimpleBean
{
private String messgae="no message";
public SimpleBean(String message)
{
this.setMessage(message);
}
public String getMessage()
{
return this.messgae;
}
public void setMessage(String message)
{
this.messgae=message;
}
}
改过了还不行啊。
public class SimpleBean
{
private String messgae="no message";
public SimpleBean()
{
}
public SimpleBean(String message)
{
this.setMessage(message);
}
public String getMessage()
{
return this.messgae;
}
public void setMessage(String message)
{
this.messgae=message;
}
}
加上还是不行啊。
给分给分。
还有class中不用够造函数也可以啊我试了。
总结:
1.出现这问题先看路径。
2.再看大小写
3。看是否import
4.用IDE的话不用谢XML。