学习JavaBean,有个小程序弄不出来

liupeipeipei 2011-01-21 10:56:07
最近看参考书学javaBean的用法,其实很简单,就是一个注册页面,然后写进数据库里,但本人菜鸟,实在是弄不出来,只能代码贴出来,问问各位 总是报500的错,错误信息最后贴出
---------UserInfo--------------
package com.jspdev.ch5;
import java.util.*;
public class UserInfo {

private String password;

private String name;


public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}


}



------------UserRegist.java----------------
package com.jspdev.ch5;

import java.sql.*;
public class UserRegist {
private UserInfo userInfo;
private Connection con;

public UserRegist() {
String CLASSFORNAME="oracle.jdbc.driver.OracleDriver";
String URL="jdbc:oracle:thin@127.0.0.1:1521:orcl10";
String USER="sys";
String PWD="oracle";
try {
Class.forName(CLASSFORNAME);

con=DriverManager.getConnection(URL,USER,PWD);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//设置用户注册信息
public void setUserInfo(UserInfo userInfo){
this.userInfo=userInfo;
}
//进行注册
public void regist()throws Exception{
String reg="insert into roeee.test values(?,?)";
try{
PreparedStatement pstmt=con.prepareStatement(reg);
//创建一个预处理语句,然后设置他们的参数
pstmt.setString(1,userInfo.getName());
pstmt.setString(2,userInfo.getPassword());
//执行更新操作
pstmt.executeUpdate();
}
catch(Exception e){
e.printStackTrace();
throw e;
}
}

}


-------------regist.jsp------------------ <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'index.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>
This is my JSP page.


<br><br><form method="post" action="newuser.jsp" name="form1">
<p> 用户名 <input type="text" name="name"></p>
<p> 密码   <input type="text" name="password"></p>
<p> <input type="submit" name="button1"></p><p> </p><p> </p>
<p> </p>
</form>


</body>
</html>

-----------------newuser.jsp---------------------


<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030" import="com.jspdev.ch5.*"%>

<jsp:useBean id="userInfo" class="com.jspdev.ch5.UserInfo" sope="page">
<jsp:setProperty name="userInfo" property="*"/>
</jsp:useBean>
<jsp:useBean id="regist" class="com.jspdev.ch5.UserRegist" sope="page"/>
<%regist.setUserInfo(userInfo);
regist.regist();
out.print("注册成功");
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>

<title>Insert title here</title>
</head>
<body>
TEST
</body>
</html>



------------------错误信息----------------
HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

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

exception

org.apache.jasper.JasperException: /newuser.jsp(3,0) UseBean: Invalid attribute, sope
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:428)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:219)
at org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:337)
at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:383)
at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:592)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028)
at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:1070)
at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:1076)
at org.apache.jasper.compiler.Node$Root.accept(Node.java:232)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028)
at org.apache.jasper.compiler.Validator.validate(Validator.java:607)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:226)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:474)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:184)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
at org.apache.tomcat
...全文
245 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
starbhhc 2011-01-26
  • 打赏
  • 举报
回复
UserRegist()你的这个类就有问题,Connection 连接数据库不能写在构造方法中,自己写一个方法,返回值为Connection,就可以了,记得关闭数据库操作。
starbhhc 2011-01-26
  • 打赏
  • 举报
回复
晕,你都没有关闭数据库,
liupeipeipei 2011-01-25
  • 打赏
  • 举报
回复
回13楼,21楼,我也知道是传不到值,可是不知道该怎么改啊。。。帮帮忙吧~~~
24K純帥 2011-01-25
  • 打赏
  • 举报
回复
regist.jsp没传到newuse.jsp,userInfo没值。。
liuchao1989 2011-01-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xiaoye2892 的回复:]
<jsp:useBean id="userInfo" class="com.jspdev.ch5.UserInfo" sope="page">
是scope
[/Quote]+1
yaganblw 2011-01-24
  • 打赏
  • 举报
回复
来此纯粹是想在技术帖中灌点水找骂,最近太他马舒坦了。
过往记忆 2011-01-24
  • 打赏
  • 举报
回复
newuser_jsp.java:77这里不是说了嘛?newuser这个文件77行出错…
chenleijiangjun 2011-01-24
  • 打赏
  • 举报
回复
自学吗?楼主!找个视频教程好好看看吧!
热带鱼2020 2011-01-24
  • 打赏
  • 举报
回复
建议楼主做个javabean-servlet 的例子,就赶紧学 jstl el SSH 吧。
Broker_Yu 2011-01-24
  • 打赏
  • 举报
回复
楼主是自学成才么。。。
chenjl_mail 2011-01-24
  • 打赏
  • 举报
回复
在行号前面双击下
gonglil 2011-01-24
  • 打赏
  • 举报
回复
lz你肯定会报空指针异常的,你打印一下你那个register()方法里面的userInfo应该可能会是空值的,还有就是第一个错误你的jsp页面写得有问题。
liupeipeipei 2011-01-24
  • 打赏
  • 举报
回复
怎么断点啊,我这MyEclipse怎么点那昆虫的标志也是老报错啊,能详细说一下吗,真是不太会这个。。。
tt986101dpc 2011-01-21
  • 打赏
  • 举报
回复
没有获取到值,或者。。类型转换时导致的空指针。。
断点跟一下看看吧,在哪抛得异常
happyxlh111 2011-01-21
  • 打赏
  • 举报
回复
java.lang.NullPointerException
有空值啊 !断点 跟下!
sustbeckham 2011-01-21
  • 打赏
  • 举报
回复
java.lang.NullPointerException
at com.jspdev.ch5.UserRegist.regist(UserRegist.java:30)


空指针 很明显了。
liupeipeipei 2011-01-21
  • 打赏
  • 举报
回复
谢谢ls大哥指点,改了后还是报错,我觉得还是程序有什么问题,麻烦再帮忙看看

HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

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

exception

org.apache.jasper.JasperException
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Unknown Source)


root cause

java.lang.NullPointerException
at com.jspdev.ch5.UserRegist.regist(UserRegist.java:30)
at org.apache.jsp.newuser_jsp._jspService(newuser_jsp.java:77)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Unknown Source)



--------------------------------------------------------------------------------

Apache Tomcat/4.1.18-LE-jdk14
莫寻千百度 2011-01-21
  • 打赏
  • 举报
回复
楼上都说完了,我还说什么了,,楼主先改过来,看看还没其他的错误,,
yexiongMYBH 2011-01-21
  • 打赏
  • 举报
回复
哈哈,,原来是scope写错了。。
Epiphone 2011-01-21
  • 打赏
  • 举报
回复
楼主 因该细心点哈 scope
加载更多回复(4)

81,114

社区成员

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

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