JSP中调用JavaBean时报错的问题

兵兵 2011-09-17 11:41:59
小弟初学jsp,在做javabean调用时报错:org.apache.jasper.JasperException: /useBean.jsp(9,2) The value for the useBean class attribute Circle is invalid,现把配置及代码贴出:
1、server.xml中的配置:<Context path="/WelcomePage" docBase="E:\Java\MyWorkSpace\WelcomePage\WebRoot"/>
2、Circle.class源码:
package first;
import java.io.*;
public class Circle
......
3、jsp中调用的源码:
<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="first.Circle"%>
<html>
<body bgcolor=cyan><font size=4>
<jsp:useBean id="girl" class="Circle" scope="page">
</jsp:useBean>
......
4、Circle.class放置目录:E:\Java\MyWorkSpace\WelcomePage\WebRoot\WEB-INF\classes\first\Circle.class
5、jsp文件放置目录:E:\Java\MyWorkSpace\WelcomePage\WebRoot\useBean.jsp

小弟查了很多资料,没有发现有什么问题,纠结了两天,麻烦各位高手帮小弟看一下是哪里出了问题,不胜感激
...全文
162 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
兵兵 2011-09-21
  • 打赏
  • 举报
回复
多谢光弟们,问题解决了,可能是因为我myeclipse部署的有问题,现在把myeclipse卸载了,就没有问题了。现在用EditPlus开发,因为还有很多东西没搞清楚,尤其是部署方面的,搞得有点晕,等都搞懂了以后,再装myeclipse试下,散分,结贴
anly_hz 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 shunbing 的回复:]
to zhouyuqwert兄:我要怎么重新部署呢?
[/Quote]

再tomcat里把以前的东西删掉,重新生成class文件和jsp文件
兵兵 2011-09-19
  • 打赏
  • 举报
回复
to zhouyuqwert兄:我要怎么重新部署呢?
dalianwang74 2011-09-19
  • 打赏
  • 举报
回复
bean 里面注入get 和set 方法了么?
阳明 to life 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 shunbing 的回复:]

to zhouyuqwert兄:我要怎么重新部署呢?
[/Quote]
你用的myeclipse部署的还是配置过context指向项目物理路径的
如果用的myeclipse部署的如15楼所说 将tomcat webapp里面的对应你工程的文件夹删掉
然后在myeclipse重新部署 运行
如果配置过context就重启服务器就行了 把什么浏览器的都关掉重新来。。。
阳明 to life 2011-09-18
  • 打赏
  • 举报
回复
帮你试了下 一点问题都没有的 你试下重新部署吧
package first的Circle.java

package first;


public class Circle
{
int radius;

public Circle()
{
radius = 1;
}

public int getRadius()
{
return radius;
}

public void setRadius(int newRadius)
{
radius = newRadius;
}

public double circleArea()
{
return Math.PI * radius * radius;
}

public double circleLength()
{
return 2.0 * Math.PI * radius;
}
}


<jsp:useBean id="Circle" scope="page" class="first.Circle"></jsp:useBean>

成一粒 2011-09-17
  • 打赏
  • 举报
回复
JavaBean这个类要是public的和它的构造函数也要是public得不能是默认的,你看看你的是不是~!
闷头挣钱 2011-09-17
  • 打赏
  • 举报
回复
这样写试试看

<jsp:useBean id="girl" class="first.Circle" scope="page">
</jsp:useBean>
完美灬缺陷 2011-09-17
  • 打赏
  • 举报
回复
顶下。等下在看。。。
兵兵 2011-09-17
  • 打赏
  • 举报
回复
全名:first.Circle,已经试过了,也是一样的报错
游一游走一走 2011-09-17
  • 打赏
  • 举报
回复
<jsp:useBean id="test" scope="page"
class="com.zhangyz.tools.UseBeanTest"></jsp:useBean>

class要使用全限定名import是无效的
ap8eg2k9 2011-09-17
  • 打赏
  • 举报
回复
好像这里有点问题:<jsp:useBean id="girl" class="Circle" scope="page">
兵兵 2011-09-17
  • 打赏
  • 举报
回复
下面是我的class文件的源代码:
//=========================== Circle.java ============================
package first;
import java.io.*;
public class Circle
{
int radius;
public Circle()
{
radius=1;
}
public int getRadius()
{
return radius;
}
public void setRadius(int newRadius)
{
radius=newRadius;
}
public double circleArea()
{
return Math.PI*radius*radius;
}
public double circleLength()
{
return 2.0*Math.PI*radius;
}
}

麻烦帮我看下,谢谢
阳明 to life 2011-09-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 shunbing 的回复:]

构造函数是已经有的
[/Quote]
把你构造函数贴出来下 这个错误应该是报的找不到无参构造函数
兵兵 2011-09-17
  • 打赏
  • 举报
回复
构造函数是已经有的
yetianlin 2011-09-17
  • 打赏
  • 举报
回复
要不直接使用纯粹的coon.jsp试试看数据库是否可以正常连接
阳明 to life 2011-09-17
  • 打赏
  • 举报
回复
需要一个无参构造函数
兵兵 2011-09-17
  • 打赏
  • 举报
回复
to pease兄: 已经试过,结果是一样的

to wuda236556254兄:类和它的构造函数都是public的

谢谢两位兄弟,自己顶

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧