Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/05/2007, 14:43
yeyocp
 
Fecha de Ingreso: octubre-2006
Mensajes: 50
Antigüedad: 18 años, 2 meses
Puntos: 0
problemilla con actionerror

Hola a todos, tengo una sencilla aplicación con Struts que consta de un formulario con tres campos. Lo único que hago es rellenar los campos y mandarlo a una Clase action que valida si alguno está vacio (ValidateEmployeeAction). El código es:

package com.example;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionServlet;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;

import java.io.IOException;
import java.util.List;

public class ValidateEmployeeAction extends Action
{
public ActionForward perform(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException
{
ActionErrors errors = new ActionErrors();
ActionError error = null;
EmployeeForm empForm = (EmployeeForm)form;

String name = empForm.getName();
if(name.trim().equals(""))
{

errors.add("", new ActionError("error.missing.name"));
}

String department = empForm.getDepartment();
if(department.trim().equals(""))
{
error = new ActionError("error.missing.department");
errors.add(ActionErrors.GLOBAL_ERROR, error);
}

String[] skills = empForm.getSkills();
if(skills == null)
{
error = new ActionError("error.missing.skills");
errors.add(ActionErrors.GLOBAL_ERROR, error);
}

if(errors.size() >0)
{
saveErrors(request, errors);
return new ActionForward(mapping.getInput());
}

return mapping.findForward("success");
}
}

Tengo el correspondiente archivo .properties que describe los diferentes errores del 'actionerror' así:

error.missing.name=<li><font color="red">Por favor, introduce el nombre</font></li>

El problema está en que cuando esos errores se me muestran en la pantalla (para ello utilizo la etiqueta <html:errors/>) me aparecen dos "null", uno por delante y otro por détrás del texto, algo así:

null Por favor, introduce el nombre null.

He probado a ver de donde pueden venir esos null, pero no consigo averiguarlo.

Saludos.