Estou usando o livro “Struts 2 Projeto e Programação” pra aprender Struts
e nele há um exemplo que não funciona de jeito nenhum.
Na parte de conversão adaptada há o seguinte código de exemplo para converter uma String de um formulario para um Date
public class MyDateConverter extends DefaultTypeConverter {
public Object convertValue(Map context, Object value, Class toType) {
if (toType == Date.class) {
ServletContext servletContext = (ServletContext)
context.get(StrutsStatics.SERVLET_CONTEXT);
System.out.println("servletContext == null ? " + (servletContext == null));
System.out.println("servletContext getClass:" + servletContext.getClass());
String datePattern = servletContext.getInitParameter("datePattern");
System.out.println("date pattern:" + datePattern);
DateFormat format = new SimpleDateFormat(datePattern);
format.setLenient(false);
try {
String[] s = (String[]) value;
Date date = format.parse(s[0]);
return date;
} catch (ParseException e) {
System.out.println("Error:" + e);
throw new RuntimeException("Invalid conversion");
}
}
return null;
}
}
Mas na em que eu rodo o exemplo o contexto está sempre nulo como mostra a linha
servletContext == null ? true
Alguém pode me ajudar?