как вернуть разные действия в Struts2 - PullRequest
0 голосов
/ 12 июля 2011

Я кодирую модуль входа в систему, основываясь на роли, которую я хочу вернуть другому действию. У меня есть код для различных действий в моем Struts.xml:

if (role == 1) {
   Sysyem.out.println("I am a admin");
   return "adminaction";
} else if (role == 2) {
   Sysyem.out.println("I am a Manager");
   return "adminaction";
} else if (role == 3) {
   Sysyem.out.println("I am a BA");
   return "adminaction";
}

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

1 Ответ

1 голос
/ 12 июля 2011

youractionClass

if (role == 1) {
   Sysyem.out.println("I am a admin");
   return "admin";
} else if (role == 2) {
   Sysyem.out.println("I am a Manager");
   return "manager";
} else if (role == 3) {
   Sysyem.out.println("I am a BA");
   return "ba";
}

Теперь внутри struts.xml просто упомяните строку в атрибуте name result следующим образом

<action name="loginAction" class="youractionClass">  
   <result name="admin" type="redirect">adminaction</result>
   <result name="manager" type="redirect">managerAction</result>
   <result name="ba" type="redirect">baAction</result>
</action>
...