Как объявить действие Generics в файле struts2.xml? - PullRequest
0 голосов
/ 25 марта 2010

Мои проблемы в действии Struts2 , где

У меня есть класс:

public class MyAction<T> extends ActionSupport

с личным членом, подобным этому:

private T myData;

И я хотел бы объявить об этом действии в файле struts.xml , как мне это сделать ?

Спасибо за ответ.

Ps: я пробовал без объявления T, но это не сработало

Ответы [ 2 ]

1 голос
/ 26 марта 2010

Например, вы не можете написать обвиоулсы (в Struts-XX.xml)

<action name="doSomething" class="xx.xx.MyAction<java.util.Date>">

Но вы можете легко кодировать класс (своего рода псевдоним) для каждой параметризации, которую вы намерены использовать.

public class MyAction_Date extends MyAction<java.util.Date> {}

и затем:

<action name="doSomething" class="xx.xx.MyAction_Date">
0 голосов
/ 25 марта 2010

В Struts2 объект действия создается платформой для каждого запроса. Тогда я не думаю, что вы можете использовать для этого параметризованный класс. (За исключением случаев, когда Struts позволяет вам указать конкретную параметризацию класса, скажем, MyAction , для конкретного отображения действия - я не думаю, что это позволяет)

...