Problema con Struts, no getter method...

travesuras
28 de Abril del 2006
Tengo un problemilla que no soy capaz de solucionar.
una jsp me lanza la siguiente excepcion:

javax.servlet.jsp.JspException: No getter method for property: "descripcion" of bean: "listaConcellos"

En el action relleno una collection que ademas imprimo antes de salir de la siguiente manera:

while (rs.next())
{
codigoDescripcionVo codigoDescripcionVo =
new codigoDescripcionVo(rs.getString("COD_CONCELLO"),rs.getString("DESC_CONCELLO"));
vec_concellos.add(codigoDescripcionVo);
System.out.print("COD_CONCELLO del vo: "+ codigoDescripcionVo.getCodigo());
System.out.print("DESC_CONCELLO del vo: "+ codigoDescripcionVo.getDescripcion());
}
session.setAttribute("listaConcellos",vec_concellos);
request.setAttribute("listaConcellos",vec_concellos);

Lo meto en request y session porque ya probé de todo.

Luego en la jsp para mostrar los valores tengo:

<logic:present name="listaConcellos" scope="session">
<tr BGCOLOR=\'#47911f\'>
<td>
<FONT STYLE="font:bold 10pt/12pt Verdana; COLOR:=white"> Hay CONCELLOS</FONT>
</td>
</tr>
<script> alert("me repaso en la pagina");
</script>
<logic:iterate id="codigoDescripcionVo" name="listaConcellos" type="vo.codigoDescripcionVo">
<TR BGCOLOR=\'#ecf7ee\' STYLE="font:normal 6pt/8pt Verdana">
<TD><P ALIGN=\'left\'><FONT SIZE=1><bean:write name="listaConcellos" property="descripcion"/></TD>

<TD><P ALIGN=\'left\'><FONT SIZE=1><bean:write name="listaConcellos" property="descripcion"/> </TD>

<TD>
<P ALIGN=\'left\'><FONT SIZE=1>
<INPUT TYPE=\'radio\' NAME=\'RConcello\' VALUE=\'\'
DEFAULTCHECKED=\'true\'
onclick="alert(\'si\');"</FONT></P></TD>
</TR>
<script> alert(<bean:write name="listaConcellos" property="descripcion"/>);
</script>
</logic:iterate>



</logic:present>

en el vo con el que relleno la colection es el siguiente:

public class codigoDescripcionVo implements Serializable {

private String codigo = null;
private String descripcion =null;

public codigoDescripcionVo (){
this.codigo = null;
this.descripcion = null;
}

public codigoDescripcionVo (String codigo,String descripcion){
this.codigo = codigo;
this.descripcion = descripcion;
}

public String getCodigo() {
return codigo;
}

public void setCodigo(String codigo) {
this.codigo = codigo;
}

public String getDescripcion() {
return descripcion;
}

public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}


}

No entiendo nada, ya he probado a poner scope="page", scope="request", y scope="session" en el bean write y nada de nada, con scope page me da otro error , que no encuentra el bean en ese scope.

Porfis alguien me puede ayudar?

Sano

travesuras
28 de Abril del 2006
NO os preocupeis, era un cazurrada , el name del bean write a de ser igual al id de logic iterate y yo los tenia distintos.

muchas gracias.