Java论坛网»Java技术»关于<html:link>的问题
关于<html:link>的问题
问?:
struts-config.xml
---------------------
<form-beans>
<form-bean name="myLinkForm" type="strutshtml.MyLinkForm" />
</form-beans>
MyLinkForm
---------------------
package strutshtml;
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class MyLinkForm extends ActionForm {
private String topicID;
private String typeID;
public void setTopicID(String topicID) {
this.topicID = topicID;
}
public String getTopicID() {
return topicID;
}
public void setTypeID(String typeID) {
this.typeID = typeID;
}
public String getTypeID() {
return typeID;
}
}
MyLinkAction
------------------------
package strutshtml;
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class MyLinkAction extends Action {
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
/**@todo: complete the business logic here, this is just a skeleton.*/
//throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
return actionMapping.findForward("ok");
}
}
HtmlTagTest.jsp中
------------------------------
<html:link page="/myLinkAction.do" paramId="p" paramProperty="topicID" paramName="myLinkForm">链接到OK.jsp页面</html:link>
问题1:运行报错:javax.servlet.ServletException: Cannot find bean myLinkForm in any scope
问题2:在MyLinkAction中如果取得参数的值?
---------------------
<form-beans>
<form-bean name="myLinkForm" type="strutshtml.MyLinkForm" />
</form-beans>
MyLinkForm
---------------------
package strutshtml;
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class MyLinkForm extends ActionForm {
private String topicID;
private String typeID;
public void setTopicID(String topicID) {
this.topicID = topicID;
}
public String getTopicID() {
return topicID;
}
public void setTypeID(String typeID) {
this.typeID = typeID;
}
public String getTypeID() {
return typeID;
}
}
MyLinkAction
------------------------
package strutshtml;
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class MyLinkAction extends Action {
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
/**@todo: complete the business logic here, this is just a skeleton.*/
//throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
return actionMapping.findForward("ok");
}
}
HtmlTagTest.jsp中
------------------------------
<html:link page="/myLinkAction.do" paramId="p" paramProperty="topicID" paramName="myLinkForm">链接到OK.jsp页面</html:link>
问题1:运行报错:javax.servlet.ServletException: Cannot find bean myLinkForm in any scope
问题2:在MyLinkAction中如果取得参数的值?
答!: 1:
忘了还有:
<action-mappings>
<action type="org.apache.struts.actions.ForwardAction" parameter="/OK.jsp" path="/ok" />
<action name="myLinkForm" type="strutshtml.MyLinkAction" scope="request" path="/myLinkAction" />
</action-mappings>
<action-mappings>
<action type="org.apache.struts.actions.ForwardAction" parameter="/OK.jsp" path="/ok" />
<action name="myLinkForm" type="strutshtml.MyLinkAction" scope="request" path="/myLinkAction" />
</action-mappings>
答!: 2:
问题1:myLinkForm没有创建!
<html:link page="/myLinkAction.do" paramId="p" paramProperty="topicID" paramName="myLinkForm">链接到OK.jsp页面</html:link>
不知到你写这句话的时候要做什么.服务器翻译这句话的时候是这样的:
1按顺序从page-->session-->application寻找myLinkFrom
2调用myLinkForm.getToopicID()获得变量值(假设值是x)
3生成连接<a href=/工程目录/myLinkAction.do?p=x">链接到OK.jsp页面</a>
问题2
在该方法
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
OkForm okForm=(Okform)actionForm;
String id=okForm.getTopicID();
不知到你写这写代码的目的是什么,如果一定要按你的思路那么麻烦的传参数的话
HtmlTagTest.jsp改成这样
<jsp:useBean id="myLinkForm" scope="request" class="strutshtml.myLinkForm"/>
<jsp:setProperty name="myLinkForm" property="topicID" value="100"/>
<html:link page="/myLinkAction.do" paramId="topicId" paramProperty="topicId" paramName="myLinkForm">
链接到OK.jsp页面</html:link>
</h1>
好像很无聊的说-_-!
<html:link page="/myLinkAction.do" paramId="p" paramProperty="topicID" paramName="myLinkForm">链接到OK.jsp页面</html:link>
不知到你写这句话的时候要做什么.服务器翻译这句话的时候是这样的:
1按顺序从page-->session-->application寻找myLinkFrom
2调用myLinkForm.getToopicID()获得变量值(假设值是x)
3生成连接<a href=/工程目录/myLinkAction.do?p=x">链接到OK.jsp页面</a>
问题2
在该方法
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
OkForm okForm=(Okform)actionForm;
String id=okForm.getTopicID();
不知到你写这写代码的目的是什么,如果一定要按你的思路那么麻烦的传参数的话
HtmlTagTest.jsp改成这样
<jsp:useBean id="myLinkForm" scope="request" class="strutshtml.myLinkForm"/>
<jsp:setProperty name="myLinkForm" property="topicID" value="100"/>
<html:link page="/myLinkAction.do" paramId="topicId" paramProperty="topicId" paramName="myLinkForm">
链接到OK.jsp页面</html:link>
</h1>
好像很无聊的说-_-!
相关JAVA教程:
大家帮忙解决一下一个系统的设计问题?
请多交流架构、设计角度,基础问题请到java基础版;框架问题请到框架、开元版;j2ee问题请到j2ee版
有关JBoss的课题
=========做一个服务器和客户端,但是怎么传image呢?=========
JDBC3.0问题 是高手就进来看看
JDBC3.0问题 找高手
请问 netbeans 的语法检查功能是如何实现的?小女子恳求大家的帮忙!!
怎么在显示一个formA时隐藏另一个formB,formB关闭后formA又显示???
tomcat问题
想学JAVA了,请大家指点一下
XML文件中取值问题!急!急!急!急!急!急!急!
请教怎么用NetBeans打开一个工程源码