Créer un hyperlien vers une URL externe avec JasperReports
comment inclure un hyperlien (URL) dans un PDF qui renvoie à un site externe?
utilisant une chaîne simple comme "http://www.stackoverflow.com", un lien est généré automatiquement. Mais, comment puis-je utiliser une URL comme <a href="http://www.stackoverflow.com">Click here</a>
?
si j'utilise cette chaîne HTML, Jaspers crée un lien mais affiche aussi le code.
en utilisant JasperReports 4.0.4 et iReport 4.5.1.
2 réponses
pour faire d'un champ de texte un lien hypertexte vers une URL externe, vous devez ajouter l'attribut hyperlinkType="Reference"
à l'élément, et ajouter un <hyperlinkReferenceExpression>
balise. L'expression de référence est où vous mettez L'URL.
Par exemple:
<textField hyperlinkType="Reference" hyperlinkTarget="Blank">
<reportElement x="5" y="5" width="200" height="15"/>
<textElement/>
<textFieldExpression class="java.lang.String"><![CDATA["Click Here!"]]></textFieldExpression>
<hyperlinkReferenceExpression><![CDATA["http://www.google.com"]]></hyperlinkReferenceExpression>
</textField>
hyperlinkTarget
l'attribut se comporte de la même manière que l' target
attribut en HTML.
notez que seuls les champs de texte, les images et les graphiques peuvent être hyperliés de cette façon.
Pour certaines raisons, l'exemple donné ne fonctionne pas. J'ai utilisé wayback machine et a trouvé le bout de code suivant, qui a fonctionné:
<textField hyperlinkType="Reference">
<reportElement x="5" y="95" width="300" height="15"/>
<textFieldExpression class="java.lang.String">" >> Click here to go to www.google.com"</textFieldExpression>
<hyperlinkReferenceExpression>"http://www.google.com
</hyperlinkReferenceExpression>
</textField>