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

コードビハインド プラグインがメソッドに対するアクションをサポートしていない限り、コンベンション プラグイン@Actionを使用する必要があり、アクションにしたいメソッドに対してコンベンション アノテーションを使用する必要があります!。明示的なマッピングは必要ありません。

Codebehind プラグインを引き続き使用する場合は、Dynamic Action Invocation (DMI)を使用して、アクションにマップされている以外のメソッドを呼び出す必要があります。

別の機会に質問を読み直さなければなりませんでした。次のメソッドにマッピングされていないアクションにアクセスしたいようですexecute:

  1. コードビハインド プラグインではサポートされていません。
  2. を介してマッピングしていませんstruts.xml。この場合、答えは - いいえ、できません。executeしかし、いつでもメソッドを使用できます。

DMI を引き続き使用する場合は、s:urlタグを使用して URL を構成し、method属性を使用することをお勧めします。

于 2013-06-29T16:03:03.660 に答える