Использование аннотаций для возврата пользовательских результатов в Struts2 - PullRequest
1 голос
/ 13 июля 2010

Я знаю, что вы можете вернуть пользовательские объекты, используя struts2, указав объявление в вашем файле struts.xml. Я сделал это, заставил это работать.

Что я хочу сделать, это отойти от этого и выполнить то же самое с помощью аннотаций. Если у меня есть действие, которое собирается вернуть пользовательский тип результата, я хотел бы иметь возможность сделать это. Я немного поиграл, но не смог заставить что-либо работать.

@Result(name="success", type="results.MyResult.class")
public class MyAction extends ActionSupport
{ ...

Это не работает

@Result(name="success", type=results.MyResult.class)
public class MyAction extends ActionSupport
{ ...

Это не компилируется

1 Ответ

0 голосов
/ 13 июля 2012

Я тоже сталкивался с этой проблемой и решил ее.

В таком случае вам нужно добавить одну строку в struts.xml, например:

<constant name="struts.convention.default.parent.package" value="test2"/>
<package name="test2" extends="struts-default">
  <result-types>
    <result-type name="imageResult"class="common.util.CustomizeStreamResult" />
  </result-types>
</package>
...