Foros del Web » Programación para mayores de 30 ;) » Java »

error al recoger datos de un select, urgente

Estas en el tema de error al recoger datos de un select, urgente en el foro de Java en Foros del Web. Hola, tengo una aplicación donde estoy usando struts2 (y Criteria para los métodos) y tengo una pagina jsp con un select. Quiero que cuando el ...
  #1 (permalink)  
Antiguo 08/10/2009, 01:03
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 15 años, 4 meses
Puntos: 1
error al recoger datos de un select, urgente

Hola, tengo una aplicación donde estoy usando struts2 (y Criteria para los métodos) y tengo una pagina jsp con un select. Quiero que cuando el usuario de la página seleccione una opción del select, seleccionar ese valor, y mediante una función javascript enviarlo a un método de un Action que me selecciona un listado de datos relacionados con ese valor. El problema es que en la página obtengo el error:

could not get a field value by reflection getter of es.aena.sgma.controlresiduos.data.entity.EmpresaTr ansporte.id

y en las trazas:

WARN (CommonsLogger.java :45 ) - No configuration fou
nd for the specified action: '#' in namespace: '/'. Form action defaulting to 'action' attribute's literal value.

En la pagina jsp el select y la función javascript (dentro de sus etiquetas <script type="text/javascript"></script>) son:

<select name="listaempresastransporte" onchange="recargarListaPorEmpresaTransporte()">
<option selected="selected">Ver todas</option>
<s:iterator value="listaempresastransporteVo">
<option value="<s:property value="%{nombre}"/>"><s:property value="%{nombre}"/></option>
</s:iterator>
</select>

function recargarListaPorEmpresaTransporte()
{
var indice = document.forms[1].listaempresastransporte.selectedIndex;
var nombreempresatransporteseleccionada = document.forms[1].listaempresastransporte.options[indice].value;
document.location.href='/sgma/listar-salidas-residuos!recargarListaPorEmpresaTransporte.action? nombreempresatransporteseleccionada='+nombreempres atransporteseleccionada;
}

y el método del action es:

@SkipValidation
public String recargarListaPorEmpresaTransporte() throws Exception
{
if (nombreempresatransporteseleccionada != null)
{
this.getSalidaResiduoService().obtenerSalidasResid uosPorEmpresaTransporteByCriteria(nombreempresatra nsporteseleccionada);
}
return TABLA;
}

y el método del SalidaResiduoServiceImpl, que contiene el método para obtener esos datos:

@SuppressWarnings("unchecked")
public Collection<SalidaResiduoVo> obtenerSalidasResiduosPorEmpresaTransporteByCriter ia(String nombreempresatransporte)
throws SpringServiceException{
try{
Session session = (Session) this.getEntityManager().getDelegate();
Criteria crit = session.createCriteria(SalidaResiduo.class);
Collection<SalidaResiduo> listasalidasresiduos =
crit.add(Restrictions.eq("empresatransporteresiduo ", nombreempresatransporte)).list();
Collection<SalidaResiduoVo> listasalidasresiduosVo = new ArrayList<SalidaResiduoVo>();
for (SalidaResiduo unaSalidaResiduo : listasalidasresiduos)
{
SalidaResiduoVo salidaresiduoVo = this.getSalidaResiduoDao().toValueObject(unaSalida Residuo);
TipoResiduoVo tiporesiduoVo = new TipoResiduoVo();
EmpresaTransporteVo empresatransporteVo = new EmpresaTransporteVo();
EmpresaGestionVo empresagestionVo = new EmpresaGestionVo();
tiporesiduoVo.setNombre(unaSalidaResiduo.getTipore siduosalida().getNombre());
empresatransporteVo.setId(unaSalidaResiduo.getEmpr esatransporteresiduo().getId());
empresatransporteVo.setNombre(unaSalidaResiduo.get Empresatransporteresiduo().getNombre());
empresagestionVo.setId(unaSalidaResiduo.getEmpresa gestionresiduo().getId());
empresagestionVo.setNombre(unaSalidaResiduo.getEmp resagestionresiduo().getNombre());
salidaresiduoVo.setEmpresagestionresiduoVo(empresa gestionVo);
salidaresiduoVo.setEmpresatransporteresiduoVo(empr esatransporteVo);
salidaresiduoVo.setTiporesiduosalidaVo(tiporesiduo Vo);
listasalidasresiduosVo.add(salidaresiduoVo);
}
return listasalidasresiduosVo;
}catch (DaoException e){
throw new SpringServiceException(e);
}
}

¿Podéis echarme un cable? Haciendo Debug con eclipse parece que se fastidia cuando llega a "Collection<SalidaResiduo> listasalidasresiduos =
crit.add(Restrictions.eq("empresatransporteresiduo ", nombreempresatransporte)).list();", hasta ahí todo parece correcto. Muchas gracias, un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:14.