1

我可以使用 Codebehind 插件在 Struts 2 中将方法作为操作访问吗?由于没有struts.xml文件,它的工作方式action!method与 URL 相同。

只是我想知道访问一个方法

如何在课堂上使用 Struts 标签?

"@Action(name="action"), <s:url action="action" method="method" />

班级 :

@Action(name = "JSONexample")
@Result(name="success",type=JSONResult.class,value="",params={"root","List"})
public class PartAction extends ActionSupport {

public String JSONexample{
-----
return SUCCESS;
}

public String readxml { }
}

如果我在提交按钮单击时访问以下方法,我会得到 JSON 数据吗?

 $.getJSON('ajax/sayHi.action', formInput,function(data) 

所以我可以访问 URL 中的操作

localhost:7001/Sample/JSONmethod.action

获取 JSON 数据?

4

1 回答 1

1

至于Codebehind Plugin不支持您需要使用Convention Plugin的方法上的操作,然后在您想要成为您的操作的方法上使用约定注释@Action,那么您不需要!显式映射。

如果您继续使用 Codebehind 插件,那么您必须使用动态操作调用 (DMI)来调用映射到您的操作之外的方法。

另一次不得不重新阅读您的问题,您似乎想要访问尚未映射到其他方法的操作execute

  1. 代码隐藏插件不支持它;
  2. 您还没有通过struts.xml. 在这种情况下,答案是——不,你不能。但是你总是可以使用execute方法!

如果您继续使用 DMI,最好使用s:url标签来构造 URL 并使用method属性。

于 2013-06-29T16:03:03.660 回答