Struts & bean - PullRequest
       21

Struts & bean

0 голосов
/ 18 марта 2009

У меня два вопроса:

1) Где мы называем bean-компонент в структурах (какова точная линия, через которую мы вызываем bean-компонент и из какого файла) и как вызываются методы getter и setter?

2) Также мы фиксируем область видимости как запрос или сеанс или что-то еще, я могу понять, что значения будут храниться в объекте запроса или объекте сеанса, но мой вопрос в том, в какой форме значения будут храниться?

Ответы [ 2 ]

2 голосов
/ 18 марта 2009

1) Если вы говорите о стойках из бобов, они автоматически заполняются через ActionServlet распорок и различные используемые вами теги.

2) Это определяется вашей конфигурацией struts-config.xml и вашим тегом <html:form action="/myAction">:

<form-beans>
    <form-bean name="myForm" type="com.example.struts.form.MyForm" />
<form-beans>
<action-mappings>
    <action path="/myAction"
            type="com.example.struts.action.MyAction"
            name="myForm"
            scope="request">
        <forward name="success" path="myjsp.jsp" />
        <forward name="failure" path="named.error.tiles.definition" />
    </action>
</action-mappings>

В этом примере ваша html-форма, содержащая теги html: form, будет заполнять ваш компонент формы myForm при отображении области запроса при отправке формы.

Затем вы получите его в своем классе MyAction с помощью:

public ActionForward execute(
        ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response) {

        if(isCancelled(request))
            form.reset(mapping, request);

        if(form != null)
            MyForm myForm = (MyForm)form;
}
0 голосов
/ 18 марта 2009

2) значения будут сохранены как объекты. Атрибутами запроса и сеанса являются Карты, содержащие ключ и сохраненный вами объект.

...