Tu problema es el siguiente
http://docs.oracle.com/javase/6/docs...va.lang.String)
Cita: Returns true if and only if the system property named by the argument exists and is equal to the string "true". A system property is accessible through getProperty, a method defined by the System class.
Es decir, no crea una boolean, sino que busca si existe y el valor de una propiedad del sistema. En tucaso busca la supuesta propiedad del sistema "true" que no existe.
Lo único que tienes que hacer es
boolean memoriza = "true".equals(req.getParameter("guarda_clave") );
que te sirve para cualquier valor que le quieras dar al check
o usar parseBoolean(req.getParameter("guarda_clave")) pero solo puede tener valor true.