各位大虾:
我的jsp页面语句:
<%String forward="ScoreManageAction.do?action=ScoreManage";%>
insDoc(fourthlvl,gLnk('R',"<%=clist.getCourseName()%>","<%=forward%>&SplCode=<%=clist.getSplCode()%>"));在Action中对应语句为
if(mySmaForm.getAction().equals("ScoreManage")){
System.out.println("mySmaForm.getAction() is : "+mySmaForm.getAction());
System.out.println("mySmaForm.getSplCode() is : "+mySmaForm.getSplCode()); return actionMapping.findForward("scoreManage");
}
运行结果是mySmaForm.getAction() is : ScoreManage,即action取到了值ScoreManage
mySmaForm.getSplCode() is : null,即SplCode没有取到值。特别说明SplCode=<%=clist.getSplCode()运行正常,因为把鼠标放到该链接上时,能够很清楚的看到链接地址为
ScoreManageAction.do?action=ScoreManage&SplCode=2006,可这个2006就是传不到Action里面去。急啊!
我建了另一个页面,把forward地址改为scoreManage.jsp?SplCode=2006,再在scoreManage.jsp页面中使用
语句String SplCode=(String)request.getParameter("SplCode");可以准确获得这个2006附:ScoreManageActionForm的部分源程序
public class ScoreManageActionForm extends ActionForm{
private String action;
private String SplCode;
public void setAction(final String action) {
this.action = action;
}public String getAction() {
return action;
}public void setSplCode(final String splCode) {
SplCode = splCode;
}public String getSplCode() {
return SplCode;
}public ActionErrors validate(final ActionMapping actionMapping,
final HttpServletRequest httpServletRequest) {
return null;
}public void reset(final ActionMapping actionMapping,
final HttpServletRequest servletRequest) {
}}
我的jsp页面语句:
<%String forward="ScoreManageAction.do?action=ScoreManage";%>
insDoc(fourthlvl,gLnk('R',"<%=clist.getCourseName()%>","<%=forward%>&SplCode=<%=clist.getSplCode()%>"));在Action中对应语句为
if(mySmaForm.getAction().equals("ScoreManage")){
System.out.println("mySmaForm.getAction() is : "+mySmaForm.getAction());
System.out.println("mySmaForm.getSplCode() is : "+mySmaForm.getSplCode()); return actionMapping.findForward("scoreManage");
}
运行结果是mySmaForm.getAction() is : ScoreManage,即action取到了值ScoreManage
mySmaForm.getSplCode() is : null,即SplCode没有取到值。特别说明SplCode=<%=clist.getSplCode()运行正常,因为把鼠标放到该链接上时,能够很清楚的看到链接地址为
ScoreManageAction.do?action=ScoreManage&SplCode=2006,可这个2006就是传不到Action里面去。急啊!
我建了另一个页面,把forward地址改为scoreManage.jsp?SplCode=2006,再在scoreManage.jsp页面中使用
语句String SplCode=(String)request.getParameter("SplCode");可以准确获得这个2006附:ScoreManageActionForm的部分源程序
public class ScoreManageActionForm extends ActionForm{
private String action;
private String SplCode;
public void setAction(final String action) {
this.action = action;
}public String getAction() {
return action;
}public void setSplCode(final String splCode) {
SplCode = splCode;
}public String getSplCode() {
return SplCode;
}public ActionErrors validate(final ActionMapping actionMapping,
final HttpServletRequest httpServletRequest) {
return null;
}public void reset(final ActionMapping actionMapping,
final HttpServletRequest servletRequest) {
}}
UserSession myUserSession=new UserSession(servletRequest);
但问题还是没有解决。
<%String forward="ScoreManageAction.do?action=ScoreManage";%>
处为什么不写你要传的SqlCode的值?
<%String forward="ScoreManageAction.do?action=ScoreManage";%>
insDoc(fourthlvl,gLnk('R',"<%=clist.getCourseName()%>","<%=forward%>&SplCode=<%=clist.getSplCode()%>"));
因为<%String forward="ScoreManageAction.do?action=ScoreManage";%>写在jsp页面的开头,而后一句话insDoc(fourthlvl,gLnk('R',"<%=clist.getCourseName()%>","<%=forward%>&SplCode=<%=clist.getSplCode()%>"));是树形结构的一部分,在程序中快到最后,这里显示课程的名称,当用户点这个课程时,就链接到forward所指向的action,
如果不用forward,直接用链接地址,问题仍然存在。actionform只传递action的值“ScoreManage”,其他参数一概不传
public void setSplCode(final String splCode) {
SplCode = splCode;
}
public String getSplCode() {
return SplCode;
}
改为
public void setSplCode(String splCode) {
this.splCode = splCode;
}public String getSplCode(){
return splCode;
}