在jsp中useBean动作的问题。

lanfengjiyue 2003-04-05 03:44:19
我在jsp中运用javabean:
<jsp:useBean id="aaa" class="package.Myjavabean" scope="session"/>
同时把Myjavabean.java放在\jsp\beans\package路径下
运行我的jsp页面是出错如下:

type Exception report

message

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

exception

org.apache.jasper.JasperException: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.


An error occurred at line: 80 in the jsp file: /index.jsp

Generated servlet error:
D:\jwsdp-1_0_01\work\Standard Engine\localhost\bookstore\index$jsp.java:65: Class package.Myjavabean not found.
dbms.Conn aaa = null;
^


An error occurred at line: 80 in the jsp file: /index.jsp

Generated servlet error:
D:\jwsdp-1_0_01\work\Standard Engine\localhost\bookstore\index$jsp.java:68: Class package.Myjavabean not found.
aaa= (dbms.Conn)
^


An error occurred at line: 80 in the jsp file: /index.jsp

Generated servlet error:
D:\jwsdp-1_0_01\work\Standard Engine\localhost\bookstore\index$jsp.java:73: Class package.Myjavabean not found.
aaa = (package.Myjavabean) java.beans.Beans.instantiate(this.getClass().getClassLoader(), "package.Myjavabean");
^
3 errors, 1 warning


请问我哪里错了?
...全文
12 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lanfengjiyue 2003-04-06
谢谢 zxhong(红透半边天)
我换了台机子就行了,谢谢你的帮助。

同时也感谢icecloud(冰云)

回复
icecloud 2003-04-05
@_@

你的这些所有的.class应该放在
D:\bookstore\jsp\WEB-INF\classes
这样才能在jsp里面调用

比如,dbms下面的conn.class类,应该位于
D:\bookstore\jsp\WEB-INF\classes\dbms\conn.class
这样你调用的时候要 import dbms.*;或者直接用dbms.conn

回复
lanfengjiyue 2003-04-05
服务器:d:\jswdp1.0.01
d:\jsdk1.4.0

<Host name="localhost" appBase="webapps" debug="0" unpackWARs="false">

<Context
path="/bookstore"
docBase="D:\bookstore\jsp"
debug="0"
reloadable="true"/>

URL:http://127.0.0.1:8080/bookstore/index.jsp

我的程序是网上书店,网上下载的。
它的原来目录有:bookstore\jsp\:
beans\dbms\*.class,*.java; //(javabean)
data\bookstore.mdb;
login\*.html,*.jsp
reg\*.html,*.jsp
...(类似子目录)
index.jsp
1.css
bookinfo.jsp
addcounter.jsp
...(类似文件)

回复
zxhong 2003-04-05
这样吧
你把你的jsp文件,bean文件,以及文件的位置全部列出来
回复
lanfengjiyue 2003-04-05
<Host name="localhost" appBase="webapps" debug="0" unpackWARs="false">

<!-- Insert <Context> Elements Here As Needed -->
<Context path="/bookstore" docBase="D:\bookstore\jsp" debug="0" reloadable="true"/>



是不是webapps这个目录下啊?

我创建了WEB-INF后还是楼上的错误。
回复
lanfengjiyue 2003-04-05
我运行了几次后,错误信息改变了(没有用您的方法):
exception
javax.servlet.ServletException: dbms/Conn
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:481)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
...


root cause
java.lang.NoClassDefFoundError: dbms/Conn
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:1576)
...

回复
zxhong 2003-04-05
如果你创建了虚拟目录
e.g.
appBase="e:\test"
那么就在test目录下\web-inf\classes\package\*.class
回复
lanfengjiyue 2003-04-05
另,我没有用servlet
回复
lanfengjiyue 2003-04-05
to zxhong :
我在\web-inf\classes\创建了package,还是不行啊。我用的是tomcat(sun的jswdp1.0.01)

谢谢您的帮助。
回复
zxhong 2003-04-05
1,javabean要放在jsp文件所在目录下\web-inf\classes\package\*.class(不存在时要自己手动创建)
2,既然你使用了javabean为什么还要创建类的实例?直接用id.方法就可以用了
3,用javabean时不需要再import该类,如果用了会有错
4,用javabean时必需要有package(你好象已经有了)
回复
lanfengjiyue 2003-04-05
上面的dbms.Conn 就是代码里的package.Myjavabean。为了清楚期间在贴子里我用package.Myjavabean代替了,但是由于疏忽没有替换完全。在我的原代码里只有dbms.Conn ,而不存在package.Myjavabean
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2003-04-05 03:44
社区公告
暂无公告