我想在使用struts1配置文件调用时传递一个值。我创建了一个具有以下属性的表单bean
public class MyForm extends ActionForm {
private String task;
public String getTask() {
return task;
}
public void setTask(String task) {
this.task = task;
}
}
在struts-config.xml中,我已经定义了表单bean和action,如下所示。
<form-bean name="myForm" type="demo.MyForm"></form-bean>
<action path="/myAction" name="myForm" type="demo.MyAction" scope="request">
<set-property value="view" property="task" />
<forward name="success" path="/result.jsp"></forward>
</action>
我正在尝试使用这些配置在web sphere 6.1中运行它,它提供以下异常
Deregister the mbean because of uncaught init() exception thrown by servlet action: javax.servlet.UnavailableException: Parsing error processing resource path file:/D:/workspaces/j-space/myProject/Web Content/WEB-INF/struts-config.xml
at org.apache.struts.action.ActionServlet.handleConfigException(ActionServlet.java:761)
at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:744)
at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:689)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:356)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)
....
我认为我错过了某些内容或以错误的方式使用了set-property标记。有人可以帮忙吗?
答案 0 :(得分:1)
“自定义”元素在自定义子类时特别有用 与,,,或一起使用 元件。
使用您想要倾斜的属性
创建ActionMapping的子类public class CustomActionMapping extends ActionMapping {
private String task;
public String getTask() {
return task;
}
public void setTask(String task) {
this.task = task;
}
}
在struts-config.xml
<action-mappings type="CustomActionMapping">
<action path="/myAction" name="myForm" type="demo.MyAction" scope="request">
<set-property value="view" property="task" />
<forward name="success" path="/result.jsp"></forward>
</action>
</action-mappings>
使用doGet/doPost
类<{1}}类
Action
希望这会对你有所帮助。
答案 1 :(得分:-1)
你的struts-config.xml是否遵循架构? 请参阅http://struts.apache.org/1.3.10/index.html
上的示例