Asociar propiedad de bean con abreviatura en página jsp
A ver cómo me explico. Estoy trabajando con Struts y quiero mostrar un histórico de operaciones. Uno de los datos a mostrar es el nombre de la empresa, pero quiero hacerlo de forma abreviada y con tooltip del nombre completo.
Mostrando el nombre completo (sin abreviatura ni tooltip) no tengo problema y lo hago así en la página jsp:
<logic:present name="listaOperaciones">
<logic:iterate id="operacion" name="listaOperaciones">
<tr align="center">
.......... Otros datos .......
<td width="13%" height="30">
<bean:write name="operacion" property="nombre"/>
</td>
........... Más datos ..........
.......... Ahora un último dato con abreviatura...............
<td width="7%" height="30">
<logic:equal name="operacion" property="riesgoOperacion" value="Alto">
<label title="Alto">A</label>
</logic:equal>
<logic:equal name="operacion" property="riesgoOperacion" value="Medio">
<label title="Medio">M</label>
</logic:equal>
<logic:equal name="operacion" property="riesgoOperacion" value="Bajo">
<label title="Bajo">B</label>
</logic:equal>
</td>
</tr>
</logic:iterate>
</logic:present>
"listaOperaciones" es una lista compuesta por objetos con varios campos con la información necesaria de cada operación. Uno de esos campos se llama "nombre", que almacena el nombre de la empresa. Otro campo se llama "riesgoOperacion", y almacena 3 valores posibles. Para esos valores muestro la abreviatura como he descrito, pero no puedo hacer lo mismo con las empresas porque son muchas opciones posibles. Tampoco quiero incluir en el objeto un campo con la abreviatura, porque lógicamente no me gusta. No tiene sentido como dato de operación. Esto no me lo planteo. ¿Cómo puedo hacerlo?
La idea es conseguir mostrar la abreviatura en vez del nombre completo, sin tenerla almacenada en el objeto porque esa opción no me gusta nada
Mostrando el nombre completo (sin abreviatura ni tooltip) no tengo problema y lo hago así en la página jsp:
<logic:present name="listaOperaciones">
<logic:iterate id="operacion" name="listaOperaciones">
<tr align="center">
.......... Otros datos .......
<td width="13%" height="30">
<bean:write name="operacion" property="nombre"/>
</td>
........... Más datos ..........
.......... Ahora un último dato con abreviatura...............
<td width="7%" height="30">
<logic:equal name="operacion" property="riesgoOperacion" value="Alto">
<label title="Alto">A</label>
</logic:equal>
<logic:equal name="operacion" property="riesgoOperacion" value="Medio">
<label title="Medio">M</label>
</logic:equal>
<logic:equal name="operacion" property="riesgoOperacion" value="Bajo">
<label title="Bajo">B</label>
</logic:equal>
</td>
</tr>
</logic:iterate>
</logic:present>
"listaOperaciones" es una lista compuesta por objetos con varios campos con la información necesaria de cada operación. Uno de esos campos se llama "nombre", que almacena el nombre de la empresa. Otro campo se llama "riesgoOperacion", y almacena 3 valores posibles. Para esos valores muestro la abreviatura como he descrito, pero no puedo hacer lo mismo con las empresas porque son muchas opciones posibles. Tampoco quiero incluir en el objeto un campo con la abreviatura, porque lógicamente no me gusta. No tiene sentido como dato de operación. Esto no me lo planteo. ¿Cómo puedo hacerlo?
La idea es conseguir mostrar la abreviatura en vez del nombre completo, sin tenerla almacenada en el objeto porque esa opción no me gusta nada
1 Respuesta
Respuesta de Fernando Rosado Altamirano
1