Я выполняю своего рода действие под названием ProfileSelector, которое загружается при вызове ajax (с использованием библиотеки JQuery).
Это код:
// BEAN
public class ProfileSelector extends ActionSupport implements ParameterAware {
private String profilePage;
private Map<String, String[]> parameters;
@Override
public String execute() throws Exception {
profilePage=getParameterValue("profilePage");
return profilePage;
}
public String getParameterValue(String param) {
if (getParameters().get(param)==null) return "main";
return ((String[])getParameters().get(param))[0];
}
public Map<String, String[]> getParameters() { return parameters; }
public void setParameters(Map<String, String[]> maps) { this.parameters=maps; }
public String getProfilePage() { return profilePage; }
public void setProfilePage(String profilePage) { this.profilePage=profilePage; }
}
// STRUTS.XML
<action name="profile" class="model.ProfileSelector" >
<result name="main">/profile/profile_main.jsp</result>
<result name="edit">/profile/profile_edit.jsp</result>
<result name="editConfirm">/profile/profile_edit.jsp</result>
<result name="pm">/profile/profile_pm.jsp</result>
<result name="articles">/profile/profile_articles.jsp</result>
</action>
// PAGE.JSP
<c:choose>
<c:when test="${profilePage=='edit'}">
<s:div>
EDIT
<s:url id="edit" action="profile.action"><s:param name="profilePage">editConfirm</s:param></s:url>
<sj:submit href="%{edit}" targets="profileContent" value="Edit" />
</s:div>
</c:when>
<c:when test="${profilePage=='editConfirm'}">
// HERE I NEED TO LOAD A VALUE FROM ANOTHER BEAN-ACTION, not the profile one
</c:when>
</c:choose>
Смотрит (в коде) на ЗДЕСЬ Я ДОЛЖЕН ЗАГРУЗИТЬ ЗНАЧЕНИЕ ИЗ ДРУГОГО ДЕЙСТВИЯ С БИНОМ, а не из профиля : здесь мне нужно загрузить (например) метод из другого действия -Bean. (пример <s:property value="someMethod" />
Как я могу это сделать? Я думаю, что это невозможно с Struts, потому что я могу вызвать только 1 действие за раз. Итак, перехватчики? Мне нужно изменить всю структуру приложения?
Дайте мне знать. Приветствия