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

nullpointerexception

Estas en el tema de nullpointerexception en el foro de Java en Foros del Web. Buenas, tengo un problema en un codigo java. Me salta la excepcion nullpointerexception y queria saber si alguien me puede ayudar. Os pongo un poco ...
  #1 (permalink)  
Antiguo 06/04/2011, 09:57
 
Fecha de Ingreso: abril-2011
Mensajes: 4
Antigüedad: 13 años
Puntos: 0
nullpointerexception

Buenas, tengo un problema en un codigo java. Me salta la excepcion nullpointerexception y queria saber si alguien me puede ayudar. Os pongo un poco en situacion:


Tengo esta clase que lo que hace es guardar unos datos para luego filtrar una busqueda.

public class BusquedaSolicitudesVo {

private String nombre_solicitante;

private String apellido1_solicitante;

private String apellido2_solicitante;


public BusquedaSolicitudesVo(String apellido1_solicitante, String apellido2_solicitante, String nombre_solicitante) {
this.apellido1_solicitante = apellido1_solicitante;
this.apellido2_solicitante = apellido2_solicitante;
this.nombre_solicitante = nombre_solicitante;
}

/**
* @return the nombre_solicitante
*/
public String getNombre_solicitante() {
return nombre_solicitante;
}

/**
* @param nombre_solicitante the nombre_solicitante to set
*/
public void setNombre_solicitante(String nombre_solicitante) {
this.nombre_solicitante = nombre_solicitante;
}

/**
* @return the apellido1_solicitante
*/
public String getApellido1_solicitante() {
return apellido1_solicitante;
}

/**
* @param apellido1_solicitante the apellido1_solicitante to set
*/
public void setApellido1_solicitante(String apellido1_solicitante) {
this.apellido1_solicitante = apellido1_solicitante;
}

/**
* @return the apellido2_solicitante
*/
public String getApellido2_solicitante() {
return apellido2_solicitante;
}

/**
* @param apellido2_solicitante the apellido2_solicitante to set
*/
public void setApellido2_solicitante(String apellido2_solicitante) {
this.apellido2_solicitante = apellido2_solicitante;
}

Tengo este metodo de una clase que lo que hace es buscar unas solicitudes dado los criterios de busqueda.

public Collection<Solicitud> buscarSolicitudesPorAtributos(
BusquedaSolicitudesVo busquedaSolicitudesVo) {

//Comprobamos parametros
if (busquedaSolicitudesVo == null) {
throw new IllegalArgumentException(
DefaultSolicitudService.FMT_NULL_PARAMETER
.format(new String[] { "busquedaSolicitudesVo" }));
}

String message = DefaultSolicitudService.FMT_SOLICITUDES_POR_VARIAB LES
.format(new Object[] { busquedaSolicitudesVo });

DefaultSolicitudService.LOGGER.info(message);

List<String> fixedExcludedParams = new ArrayList<String>();
fixedExcludedParams.addAll(Arrays.asList(new String[] { "nombre_usuario", "apellido1_usuario",
"apellido2_usuario", "dni_usuario", "relacion_uniovi",
"fecha_inicio_vigencia", "fecha_fin_vigencia", "propuesta_nombre",
"estado", "operacion", "motivo_revocación",
"dni_solicitante", "idTercero" }));

Solicitud sol = new Solicitud ();

if (busquedaSolicitudesVo.getNombre_solicitante() != null)
sol.getDatosSolicitante().setNombreSolicitante(bus quedaSolicitudesVo.getNombre_solicitante());
else fixedExcludedParams.add("nombre_solicitante");

if (busquedaSolicitudesVo.getApellido1_solicitante() != null)
sol.getDatosSolicitante().setApellido1Solicitante( busquedaSolicitudesVo.getApellido1_solicitante());
else fixedExcludedParams.add("apellido1_solicitante");

if (busquedaSolicitudesVo.getApellido2_solicitante() != null)
sol.getDatosSolicitante().setApellido2Solicitante( busquedaSolicitudesVo.getApellido2_solicitante());
else fixedExcludedParams.add("apellido2_solicitante");

String [] arrayFixedExcludedParams = new String[fixedExcludedParams.size()];
fixedExcludedParams.toArray(arrayFixedExcludedPara ms);

Collection<Solicitud> result = this.solicitudDao.findByExample(
sol,
arrayFixedExcludedParams);

return result;
}

Y luego tengo un test de jUnit que lo que hace es probar ese metodo anteriormente puesto.

public void testBuscarSolucionesPorAtributos () {

BusquedaSolicitudesVo busquedaSolicitudesVo = new BusquedaSolicitudesVo("Gonzalez", "Garcia", "Raul");

Collection<Solicitud> lista = null;

lista = this.transactionalSolicitudManager.buscarSolicitud esPorAtributos(busquedaSolicitudesVo);

TestCase.assertNotNull(lista);
TestCase.assertNotSame(lista.size(), 0);

}

El problema es que el test no se ejecuta bien debido al nullpointerexception que os eh mencionado anteriormente. Yo creo que es porque lista = this.transactionalSolicitudManager.buscarSolicitud esPorAtributos(busquedaSolicitudesVo); ese parametro busquedaSolicitudVo es nulo pero no se como solucionarlo.

Gracias de antemano.
  #2 (permalink)  
Antiguo 06/04/2011, 10:05
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 3 meses
Puntos: 89
Respuesta: nullpointerexception

Normal que sea nulo, esa función a la que llamas no devuelve nada, entonces estás igualando tu variable a una función que no devuelve nada, por lo que tu variable es nula. Deberías cambiar la función para que te duelva lo que quieras o crear otra.
  #3 (permalink)  
Antiguo 06/04/2011, 10:11
 
Fecha de Ingreso: abril-2011
Mensajes: 4
Antigüedad: 13 años
Puntos: 0
Respuesta: nullpointerexception

No te entiendo muy bien lo siento.

Que funcion no me devuelve nada segun tu?

lista = this.transactionalSolicitudManager.buscarSolicitud esPorAtributos(busquedaSolicitudesVo);

Esta?

Gracias.

Etiquetas: Ninguno
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 17:07.