Pregunta

¿Cómo puedo mostrar en una vista JSP mensaje de error de validación que se produce como resultado de la anotación @AssertTrue? No está ligado a un campo específico, pero lo estoy usando para validar una combinación de campos. Si uso <form:errors path="*"/> que mostrará todos los errores de esa forma?

¿Fue útil?

Solución 2

La declaración de una propiedad booleana es lo que parece funcionar para esto. Así que si hay:

@AssertTrue
public boolean isConditionTrue() {
   ...
   ...
}

A continuación, se declara una propiedad como:

private boolean conditionTrue;

obras.

Otros consejos

Por lo que he probado es importante COMO el nombre de su función de prueba. Y usted debe nombrar correctamente.

No es necesario campo, getter o setter, pero su función tiene que comenzar con 'es *' declaración.

Fe.

@AssertTrue
public boolean isConditionTrue() {
   ...
   ...


}

o

@AssertTrue
public boolean isSomethingElseOk() {
   ...
   ...
}

Sin embargo, se necesita un campo y captador / definidor, si es necesario utilizar una forma de error con la ruta, como:

<form:errors path="someFieldToDisplay" />

Pero creo que esto es bastante obvio.


Algunos problemas esquema de lo que no me paso en pero podría ser útil:

Esto podría ser útil también: falta de mensajes de error .

Sin embargo, si se utiliza el esquema sin etiqueta de versión, que utiliza la versión más reciente de forma predeterminada.

Se debe nombrar a su propiedad como esta:

@AssertTrue(message = "....")
private boolean conditionTrue; //***NOT isConditionTrue***

public boolean isConditionTrue() {
    return conditionTrue;
}

public void setConditionTrue(boolean conditionTrue) {
    this.conditionTrue= conditionTrue;
}

<form:errors path="*"/> or
<form:errors path="conditionTrue"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top