2010-12-16 7 views
7

Tengo consultas que recuperan fragmentos de texto, que contienen varios nombres de entidades html, más notablemente € y λ, (no el símbolo real es decir € o & lambda;) desde una base de datos. Uso las mismas consultas para mostrar resmas de texto en el navegador y en un informe RTF jasper. los símbolos siempre se muestran correctamente en el navegador.html nombres de entidades no se muestran como el símbolo html relevante en jasper informe

Sin embargo, cuando ejecuto la consulta en Jasper para generar un documento RTF, el € cadena sale en el documento RTF como "& euro" es decir, el punto y coma se ha enderezado, así que en vez de 1.000 € llego & euro1000 . Debajo hay un campo de texto de mi informe. He intentado ajustar $ P {label.htmlSnippet} en un CDATA pero sin suerte, el marcado es html ... ¿así que no estoy seguro de qué más puedo hacer?

<textField isStretchWithOverflow="true" hyperlinkType="None"> <reportElement positionType="Float" x="375" y="285" width="80" height="12"/> <textElement textAlignment="Right" markup="html"></textElement> <textFieldExpression class="java.lang.String">$P{label.htmlSnippet}</textFieldExpression> </textField>

ningún tipo de ayuda, sugerencias Ideas apreciados

respecto John

+0

Posible duplicado: http://stackoverflow.com/questions/8745406/how-to-decode-html-entities-in-jasperreports –

Respuesta

0

¿Necesita isStyledText = "true" en el TextElement? No estoy seguro; Yo uso iReport y el único ejemplo que tengo involucra un cuadro de texto estático (no un campo de texto como el que tiene). Tengo el atributo isStyledText.

1

Para un objeto TextField debe establecer su propiedad markup en html. Como dices, &euro; es una entidad HTML, no un símbolo especial RTF.

enter image description here

Cuestiones relacionadas