Exception no MVC

0 respostas
Onimatsu

Boa noite pessoal.
Estou utilizando MVC para uma tela básica que deleta um ou mais dados listados e toda vez que chamo o método do controller que deverá remover o registro recebo o erro:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException

Como é um hello world não estou usando banco de dados, todas as operações ficam gravadas no arrayList. Meu CandidatoBean:
public class CandidatoBean extends BaseBean implements Serializable{

	private static final long serialVersionUID = 1L;
	private boolean checkbox = false;
	private String codigo, nome, nascimento, telefone;
        //construtores e get and setters...
Minha página:
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>deletaCandidato</title>
</head>
<body>
	<h2>Deleta Candidato</h2>
	<form:form method="get" action="deletacandidato.html"
		modelAtribute="candidatoForm">
		<table>
			<tr>
				<th>SL</th>
				<th>Código</th>
				<th>Nome</th>
				<th>Nascimento</th>
				<th>Telefone</th>
			</tr>
			<c:forEach items="${candidatoForm.candidatos}" var="candidato">
				<tr>
					<td><input name="check" value="${candidato.checkbox}"
						type="checkbox" /></td>
					<td><input name="codigo" value="${candidato.codigo}" /></td>
					<td><input name="nome" value="${candidato.nome}" /></td>
					<td><input name="nascimento" value="${candidato.nascimento}" /></td>
					<td><input name="telefone" value="${candidato.telefone}" /></td>
				</tr>
			</c:forEach>
		</table>
		<br />
		&lt;input type="submit" value="Salvar" /&gt;
		&lt;input type="button" value="Voltar"
			onclick="javascript:history.back()" /&gt;
	&lt;/form:form&gt;
&lt;/body&gt;
&lt;/html&gt;
CandidatoForm.java
public class CandidatoForm {

	private List&lt;CandidatoBean&gt; candidatos;
        // contrutores e get/set
E o controller
@Controller
public class CandidatoController {

	private static final Logger LOGGER = Logger
			.getLogger(CandidatoController.class);
	private static List&lt;CandidatoBean&gt; candidatos = new ArrayList&lt;CandidatoBean&gt;();

	static {
		candidatos.add(new CandidatoBean(false, "1", "2", "3", "4"));
	}

	@RequestMapping(value = "/deletacandidato", method = RequestMethod.GET)
	public ModelAndView deletarCandidatos(
			@ModelAttribute("candidatoForm") CandidatoForm candidatoForm) {

		List&lt;CandidatoBean&gt; candidatos = candidatoForm.getCandidatos();
		if (!candidatos.isEmpty()) {
			for (CandidatoBean candidato : candidatos) {
				if (candidato.isCheckbox()) {
					candidatos.remove(candidato);
					LOGGER.info(candidato);
				}
			}
			CandidatoController.candidatos = candidatos;
			candidatoForm.setCandidatos(candidatos);
		}

		return new ModelAndView("listaCandidato", "candidatoForm",
				candidatoForm);
	}

}
Não entendo a exceção de ponteiro nulo se tanto o array como o modelAtribute da página estão preenchidos. Onde é o problema?

Agradeço desde já.

Criado 30 de março de 2014
Respostas 0
Participantes 1