struts提交一个FORM时没有转到相应的页面(急急)
<global-forwards>
<forward
name="bookCreated" path="/BookView.jsp" />
</global-forwards>
============================================================
<action-mappings>
<action
path = "/createBook"
type = "BookAction"
name = "bookForm"
scope= "request"
input= "/CreateBook.jsp">
</action>
</action-mappings>
===========================================================
CreateBook.jsp
<html:form action="createBook.do" method="GET">
Title:<html:text property="title" /> <br>
<html:submit property="submit" />
</html:form>
=============================================================
BookAction.java
import javax.servlet.http.*;
import org.apache.struts.action.*;
public final class BookAction extends Action
{
public ActionForward perform(ActionMapping mapping,ActionForm form,HttpServletRequest req,HttpServletResponse res)
{
System.out.println("ok");
return mapping.findForward("bookCreated");
}
}
=====================================================================
BookFrom.java
import javax.servlet.http.*;
import org.apache.struts.action.*;
public class BookForm extends ActionForm
{
private Book book = new Book();
String title = "test";
public void setTitle(String title)
{
book.setTitle(title);
}
public String getTitle()
{
return book.getTitle();
}
public void setBook(Book book)
{
this.book = book;
}
public void reset(ActionMapping mapping , HttpServletRequest request)
{
this.book = new Book();
}
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
{
ActionErrors errors = new ActionErrors();
if((book.getTitle() == null) || (book.getTitle().length() <3))
{
//errors.add("Title",new ActionError("errors.book.title"));
}
return errors;
}
}
=====================================================================
=====================================================================
当我在CreateBook.jsp中输入字符,提交后出现的是一个全白的页面(没有出错的信息),在后台输出也没有我想要的“OK”
此时页面上的URL是http://localhost:8888/struts-test1/createBook.do;jsessionid=0BD130758DE86AFEF174A9D64E8C143C?title=xdsdsd&submit=Submit
问题点数:20、回复次数:6Top
1 楼blackdreamzg(基本靠手)回复于 2005-03-01 14:51:21 得分 0
private Book book = new Book();在form中调用实体么?
我印象里好像是不行。
还有你的form在struts-config里设置了么?
设置断点再调调Top
2 楼tinger(影虎)回复于 2005-03-01 14:59:54 得分 0
是可以调用实体的,Book这个类是我自己写的!
=========================
<form-bean
name="bookForm"
type="BookForm" />
=========================
断点怎么设?Top
3 楼hanml(find lost)回复于 2005-03-01 15:30:38 得分 20
用的eclipse版本多少?3.0后都用excute方法了,不是perform,换了试试看吧。Top
4 楼blackdreamzg(基本靠手)回复于 2005-03-01 15:52:11 得分 0
excute到没问题我也是eclipse,断点就是在你觉得可能出错的那行代码前面窗口上双击,能出现一个标志。再运行程序时,到那里就停了。你可以一步一步运行代码,看看是哪理出的错。Top
5 楼tinger(影虎)回复于 2005-03-01 15:52:56 得分 0
成功了,谢谢Top
6 楼blackdreamzg(基本靠手)回复于 2005-03-01 15:56:10 得分 0
哪里出的错?Top




