不明白哪错了
我从另外一个页面跳转过来 得到传过来的ID 从数据库中LOAD这个对象 属性放在FORM 里面
如果不执行start到end的代码 页面不会报错 Category .update那行报错 调试了很久也没查出来 谢谢<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ page import="shopping.*" %>
<%@ include file="_sessioncheck.jsp" %><%
int id = Integer.parseInt(request.getParameter("id"));
Category c=CategoryDAO.loadById(id);
%><% ////START
String action = request.getParameter("action");
if(action=="modify"){
String name = request.getParameter("name");
String descr = request.getParameter("descr");
Category.update(name,descr,id); //-------------报错行数
} ////END %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>CATEGORY MODIFY</title>
</head>
<body>
<form action="categorymodify.jsp" method="post">
<input type="hidden" name="action" value="modify"/>
ID<input type="text" name="id" value="<%=id%>" readonly="readonly"><br/>
NAME<input type="text" name="name" value="<%=c.getName() %>"><br/>
DESCRIPTION<textarea name="descr" rows="8" cols="40"><%=c.getDescr() %></textarea><br/>
PID<input type="text" name="pid" value="<%=c.getPid() %>" readonly="readonly"><br/>
LEAF<input type="text" name="leaf" value="<%=c.isLeaf() %>" readonly="readonly"><br/>
GRADE<input type="text" name="grade" value="<%=c.getGrade() %>" readonly="readonly"><br/>
<input type="submit" value="ENTER"/><input type="reset" value="RESET">
</form>
</body>
</html>
我从另外一个页面跳转过来 得到传过来的ID 从数据库中LOAD这个对象 属性放在FORM 里面
如果不执行start到end的代码 页面不会报错 Category .update那行报错 调试了很久也没查出来 谢谢<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ page import="shopping.*" %>
<%@ include file="_sessioncheck.jsp" %><%
int id = Integer.parseInt(request.getParameter("id"));
Category c=CategoryDAO.loadById(id);
%><% ////START
String action = request.getParameter("action");
if(action=="modify"){
String name = request.getParameter("name");
String descr = request.getParameter("descr");
Category.update(name,descr,id); //-------------报错行数
} ////END %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>CATEGORY MODIFY</title>
</head>
<body>
<form action="categorymodify.jsp" method="post">
<input type="hidden" name="action" value="modify"/>
ID<input type="text" name="id" value="<%=id%>" readonly="readonly"><br/>
NAME<input type="text" name="name" value="<%=c.getName() %>"><br/>
DESCRIPTION<textarea name="descr" rows="8" cols="40"><%=c.getDescr() %></textarea><br/>
PID<input type="text" name="pid" value="<%=c.getPid() %>" readonly="readonly"><br/>
LEAF<input type="text" name="leaf" value="<%=c.isLeaf() %>" readonly="readonly"><br/>
GRADE<input type="text" name="grade" value="<%=c.getGrade() %>" readonly="readonly"><br/>
<input type="submit" value="ENTER"/><input type="reset" value="RESET">
</form>
</body>
</html>
改成"modify".equals(action)
不过奇怪的是用了equals还是抱原来的错
The method update(String, String, int) is undefined for the type Category
13: if(action.equals("modify")){
14: String name = request.getParameter("name");
15: String descr = request.getParameter("descr");
16: Category.update(name,descr,id);
17: }
18:
19: %>
Stacktrace:] with root cause
org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 16 in the jsp file: /admin/categorymodify.jsp
The method update(String, String, int) is undefined for the type Category
13: if(action.equals("modify")){
14: String name = request.getParameter("name");
15: String descr = request.getParameter("descr");
16: Category.update(name,descr,id);
17: }
18:
19: %>
Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:443)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:367)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:345)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:332)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:594)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:327)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:363)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:306)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:203)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:558)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:242)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)没有在category里面定义 可我是定义了的 奇怪
手误