Estou estudando struts 2 e vi pouca coisa de strutus 1, mas lembro que no 1 havia algumas classes form que era usada nas telas para carregar os elementos da tela mas no modo que estou apredendo no Struts 2 não ensina assim (tutoriais de internet).
Quando chamo algum método da action no Struts 2 eu só preencho o objeto que crio a partir de uma classe modelo e retorno a string com o result do mapeamento do action no struts.xml que vai chamar a jsp:
Método da classe action que preenche o objeto e retorna a string:
public String detalhar()
{
Carro = new Carro();
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
carro = CarroDAO.getInstance().buscaPorId(Integer.parseInt(request.getParameter("id")));
return SUCCESS;
}
Action mapeada no struts.xml:
<action name="detalharCarroAction!*" class="controle.carro.DetalharCarroAction" method="{1}">
<result name="success">/WEB-INF/pages/carro/detalhar_carro.jsp</result>
</action>
Está funcionando, na jsp eu só coloco no value do text box o nome do objeto e o atributo que quero (%{carro.placa}) quero saber se isso está correto, pq não entendo o conceito de actionFom e classes Form.