Amigos,
Como faço para, uma vez selecionado um determinado funcionário, exibir os dados endereço, email e sexo obtidos do meu banco através da classe FuncFormAction? Segue abaixo a classe FuncAction. A classe Form só tem os métodos getters e setters e o metodo validate.
Muito obrigado,
José Marques
[color=“green”]Estou tentando aprender o struts[/color]
<%@ page language=“java” %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix=“bean” %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix=“html” %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix=“logic” %>
<html:html locale=“true”>
<head>
<title><bean:message key=“index.title”/></title>
<html:base/>
</head>
<body bgcolor=“white”>
<html:form action="/cadastre">
<h2>Cadastro de funcionários</h2>
<table>
<tr><td>Funcionário:</td>
<td>
<html:select property=“funcionario”>
<html:options collection=“funcionarios” property=“idFunc” labelProperty=“nome”/>
</html:select>
</td>
</tr>
<tr><td>Endereço:</td><td><html:text property=“end”/><html:errors property=“end”/></td></tr>
<tr><td>email:</td><td><html:text property=“email”/><html:errors property=“email”/></td></tr>
<tr><td>Sexo:</td><td><html:radio value=“M” property=“sexo”/>Masculino<html:radio value=“F” property=“sexo”/>Feminino<html:errors property=“sexo”/></td></tr>
<tr><td><html:submit/></td><td><html:reset/></td></tr>
</table>
</html:form>
</body>
</html:html>
[color=“olive”]==== Classe FuncFormAction =========================[/color]
package br.com.datamed.struts.actions;
import org.apache.struts.action.*;
import br.com.datamed.struts.FachadaModelo;
import javax.servlet.http.;
import java.util.;
import java.sql.*;
/**
- Classe responsável por obter as listagens necessárias a preencher os campos
- do formulário
*@author freitas
@created 31 de Janeiro de 2003
/
public final class FuncFormAction extends Action {
/
- O método perform deve ser sobrescrito nas classes filhas de Action e
- prover os mecanismos para acessar o modelo. Os parâmetros são passados
- automaticamente pelo controlador Struts.
*@param mapping - A ActionMapping utilizada para selecionar esta instância
*@param form - ActionForm para este request (caso exista)
*@param req Description of the Parameter
*@param res Description of the Parameter
*@return ActionForward indicando nova visão a ser renderizada
*/
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) throws Exception {
try {
FachadaModelo fachada = FachadaModelo.getInstance();
Collection funcionarios = fachada.getFuncionarios();
req.getSession(true).setAttribute("funcionarios", funcionarios);
return mapping.findForward("cadastro");
} catch (SQLException e) {
ActionErrors erros = new ActionErrors();
erros.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.sqlerror"));
saveErrors(req, erros);
return mapping.findForward("excecoes");
}
}
}