2017-04-27 22 views
0

Je Définie un attribut de session du contrôleur comme celui-ci .:Java, JSP - Comment passer d'une chaîne décrivant une balise HTML par ensemble de la session attribue à la page

String someHtmlTag = "<a href='something'><img src='somewhere'></img></a>"; 
session.setAttribute("someHtmlTag", someHtmlTag); 

Puis JSP:

<div> 
    ${someHtmlTag} 
</div> 

Mais sur le code HTML généré, il imprime uniquement la chaîne décrivant la balise.

Comment imprimer l'image de lien hypertexte attendue à la place?

Ce HTML est dynamique, et provient de la base de données. C'est pourquoi ce n'est pas codé en dur sur JSP.

+0

http://stackoverflow.com/a/10996495/1927832 –

+0

Recommandation de scriptlets? C'est horrible. Faux. – duffymo

+0

J'ai copié et collé votre code. Cela fonctionne sur ma machine. Avez-vous regardé le code source que votre serveur a envoyé à votre navigateur? S'il vous plaît nous montrer cela. – rickz

Répondre

0

Vous ne devriez pas faire cela.

Récupère les bits qui sortent de la base de données, mais le balisage appartient à la JSP. Passez les bits changeants dans la JSP et laissez-le afficher.

La recommandation d'utiliser des scriptlets est erronée dans tous les sens. Vous pouvez effectuer un appel AJAX et ajouter un balisage dans <div>. Les scriptlets sont une technologie des années 1990 qui ne devrait jamais être utilisée.