¿Cómo puedo comprobar si una clave paquete de recursos no existe el uso de etiquetas JSTL?
-
09-09-2019 - |
Pregunta
Tengo un archivo de recursos que tendrá algunas claves opcionales. Si la clave de recurso opcional no está presente, me puse un defecto en su lugar. Parece que no hay una manera fácil de determinar si existe una clave en el paquete de recursos. Así que esto es lo que estoy haciendo para conseguir alrededor de él.
<fmt:message var="title" key="login.reg.signup.${signupForm.regfrom}.title" />
<c:if test='${fn:startsWith(title, "??")}'>
<fmt:message var="title" key="login.reg.signup.default.title" />
</c:if>
¿Hay una mejor manera?
Solución
Se puede escribir su propia etiqueta JSP que hace esto, por lo que puede simplemente hacer:
<my:message var="title" key="${form}.title" default="default.title"/>
La implementación de la etiqueta o bien podría ser su sintaxis JSP actual, o una clase de Java.
Otros consejos
Puede utilizar el #{messagesFactory.messages.containsKey('key')}
comprobar.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow