2009-01-24 16 views
32

Zanim przejdę do stworzenia niestandardowego tagu lub metody Java, aby to zrobić, jaki jest standardowy sposób na uniknięcie znaków HTML w JSP?Jak mogę uniknąć specjalnych znaków HTML w JSP?

Mam obiekt String i chcę, aby wyświetlić go w kodzie HTML tak, że wydaje się dla użytkownika, jak jest.

Na przykład:

String a = "Hello < World"; 

staną:

Hello &lt; World 

Odpowiedz

46

Krótka odpowiedź:

<c:out value="${myString}"/> 

nie ma innej opcji:

<%@taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> 
${fn:escapeXml(myString)} 
+6

Należy zachować ostrożność, ponieważ istnieje różnica między wychodzącymi XML i HTML. –

+0

W większości przypadków wystarczające jest uchronienie się od XML. Przy okazji dwa powyższe przykłady kodu działają dokładnie tak samo. (c: out także ucieka z Xml, a nie z Html). – rustyx

+0

Jeśli problemem jest zapobieganie XSS w HTML, ucieczka XML powinna być wystarczająca (próbowanie nie dostać się do xml a html tutaj) ... –

Powiązane problemy