Bom dia a todos, estou fazendo uma tela de cadastro de clientes e queria saber se tem como utilizar na mesma action mais de um form exemplo:
public class Cliente extends ActionForm implements Serializable {
private static final long serialVersionUID = 1L;
private long id;
private String nome;
private String sobrenome;
private Endereco endereco;
private List<Email> emails;
private long telefone;
private Long cpf;
private Long rg;
gets e sets
public class Endereco extends ActionForm implements Serializable {
private static final long serialVersionUID = 1L;
private long id;
private String logradouro;
private String endereco;
private long cep;
private String proximidade;
private int numeroDaCasa;
gets e sets
<html:form action="/salvarCliente.do" onsubmit="return valida(this);">
<tr>
<td>
*Nome:
</td>
<td>
<input type="text" obrigatorio="sim" name="nome" size="30"/>
</td>
</tr>
<tr>
<td>
Sobrenome:
</td>
<td>
<input class="texto" obrigatorio="nao" type="text" name="sobrenome" size="30" />
</td>
</tr>
<tr>
<td>
*Telefone:
</td>
<td>
<input type="text" obrigatorio="sim" name="telefone" size="8"/>
</td>
</tr>
<tr>
<td>
*CPF:
</td>
<td>
<input type="text" obrigatorio="sim" name="cpf" size="11"/>
*RG: <input type="text" obrigatorio="sim" name="rg" size="9"/>
</td>
</tr>
<tr>
<td>
*Endereço:
</td>
<td>
<input type="text" obrigatorio="sim" name="endereco" size="30"/>
</td>
</tr>
<tr>
<td>
*Logradouro:
</td>
<td>
<input type="text" obrigatorio="sim" name="logradouro" size="5"/>
*Número: <input type="text" obrigatorio="sim" name="numeroDaCasa" size="5"/>
</td>
</tr>
<tr>
<td>
*CEP:
</td>
<td>
<input type="text" obrigatorio="sim" name="cep" size="8"/>
</td>
</tr>
<tr>
<td>
Proximidade:
</td>
<td>
<input type="text" obrigatorio="nao" name="proximidade" size="30"/>
</td>
</tr>
<tr>
<td align="left" width="20%">
<input name="submit" type="submit" value="Salvar" class="botao" />
</td>
<td>
* Campos de preenchimento obrigatório
</td>
</tr>
</html:form>
<form-bean name="ClienteForm" type="br.com.fiap.estatisticadb.business.entities.Cliente">
</form-bean>
<action path="/salvarCliente" scope="request" name="ClienteForm"
type="br.com.fiap.estatisticadb.actions.SalvarClienteAction">
<forward name="success"
path="/paginas/sucesso_criacao_cliente.jsp" />
<forward name="failure"
path="/paginas/falha_criacao_cliente.jsp" />
</action>
está dando este erro:
java.lang.IllegalArgumentException: Cannot invoke br.com.fiap.estatisticadb.business.entities.Cliente.setEndereco - argument type mismatch
org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:1778)
org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:1759)
org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1648)
org.apache.commons.beanutils.PropertyUtilsBean.setProperty(PropertyUtilsBean.java:1677)
org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1022)
org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:493)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:805)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:203)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
[]'s obrigado…