2012-08-14 7 views
0

я следующий код в tiles.xml
Как отправить форму в struts2?

<definition name="m_st" extends="mmain"> 
    <put-attribute name="body" value="reports/st/list.jsp"/> 
</definition> 


И следующий код в struts.xml

<package name="m_st" namespace="reports/st" extends="struts-default, tiles-default"> 
    <action name="list" class="com.m.reports.StAction" method="list"> 
     <result type="tiles">m_st</result> 
    </action> 
</package> 


И в list.jsp,

<form name="rangeForm" method="post" action=""> 


В StAction.java,

private String type = ""; 

public String list() throws Exception { 

    type = "TEST"; //listStandard.get(0).getStatus(); 

    return SUCCESS; 
} 

Но когда я нажимаю кнопку отправить ничего не происходит, нет ошибок и нет выхода. Как получить ожидаемый результат, например, <s:property value="type"/> в list.jsp после отправки.

ответ

1

Это довольно запутанный вопрос, как сформулировано. Что вы на самом деле делаете? Если вы используете простой JSP, и действие пустое, вы отправитесь в тот же JSP, и никакое действие не будет выполнено.

Если вы на самом деле имеете в виду, что вы нажимаете на действие и не видите свойство в JSP, «почему нет» может зависеть от того, какую версию S2 вы используете (точнее, какую версию OGNL). Для более поздних версий OGNL напрямую будет обращаться к публичным полям, для более ранних версий требуется публичный метод getter.

+0

Я думаю, что мой метод list() в классе StAction не вызывается. Как выполнить метод list() при отправке формы? –

+0

@ aman.nepid Отправить форму для действия. –

1
<form name="rangeForm" method="post" action="list"> 

Вы забыли указать свое название действия.

Смежные вопросы