galera o problema é que ele so executa certo o primeiro IF, ou seja, no caso o atualizar, caso eu inverta a ordem ele executara apenas o cadastro.
if (request.getParameter("atualizar").equals("Atualizar")) {
String atualiza;
int i = dDao.atualizar(request.getParameter("nome"), request
.getParameter("disciplinasCadastradas"));
if (i == -1 || i != 1) {
atualiza = "erro";
request.setAttribute("atualiza", atualiza);
}// IF ENCADEADO
else {
atualiza = "ok";
request.setAttribute("atualiza", atualiza);
} // ELSE
disp = request.getRequestDispatcher("cadastroDisciplina.jsp");
disp.forward(request, response);
}// IF ATUALIZAR
if (request.getParameter("cadastrar").equals("Cadastrar")) {
boolean cadastroDisciplina = dDao.insere(d);
if (cadastroDisciplina) {
cadastro = "ok";
request.setAttribute("cadastro", cadastro);
}// if ENCADEADO
else {
cadastro = "erro";
request.setAttribute("cadastro", cadastro);
}// ELSE
disp = request.getRequestDispatcher("cadastroDisciplina.jsp");
disp.forward(request, response);
}// IF CADASTRAR