Struts 2 que llama al método estático cuando struts.ognl.allowStaticMethodAccess es falso
Los puntales 2 establecen elstruts.ognl.allowStaticMethodAccess
afalse
, por cuestiones de seguridad. La invocación del método estático puede ser útil en algunos casos, por ejemplo, cuando se trata de validadores de base de expresiónStruts 2 usando StringUtils en las validaciones de validaciones.
Una forma de resolver este problema es definir un método auxiliar en la acción, por ejemplo, si queremos usarMath
clase debemos agregar a continuación:
public double randomMath(){
return Math.random();
}
public double asinMath(double a){
return Math.asin(a);
}
....
Y úsalo como${randomMath}
o${asinMath(1)}
Como puede ver para cada método enMath
clase necesitamos definir unapublic
método en nuestra acción, con la misma firma.
¿Hay una mejor manera de evitar estos captadores repetitivos?