आप JSTL core उपयोग कर सकते हैं:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
उपयोग <c:out value="${someString}"/>
टैग स्ट्रिंग्स प्रदर्शित करने के लिए। <c:out>
एचटीएमएल अक्षरों से बच निकलता है ताकि आप क्रॉस-साइट स्क्रिप्टिंग से बच सकें, आप यह निर्दिष्ट कर सकते हैं कि escapeXml=true
विशेषता सेट करके। एक अन्य लाभ यह है कि value
null
पर मूल्यांकन करने पर आप डिफ़ॉल्ट मान भी प्रदान कर सकते हैं।
आप fn:escapeXml()
ईएल फ़ंक्शन का भी उपयोग कर सकते हैं। इसके लिए आपको JSTL functions शामिल करना होगा।
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
एक और संभावित तरीका, कस्टम ELResolver का निर्माण करेगा।
ईएल अभिव्यक्ति मूल्यांकन के लिए चर और संपत्ति रिज़ॉल्यूशन व्यवहार के अनुकूलन को सक्षम करता है।
This blog यह कैसे किया जा सकता है इसका एक उदाहरण उदाहरण प्रदान करता है।
पूरे वसंत MVC अनुप्रयोग के लिए, आप web.xml में भागने निर्दिष्ट कर सकते हैं:
<context-param>
<param-name>defaultHtmlEscape</param-name>
<param-value>true</param-value>
</context-param>
लेकिन तब एस्केपिंग तरह spring
टैग करने के लिए ही लागू होता है,:
<form:input path="formField" htmlEscape="true" />
अंत में, आप तीसरे पक्ष की लाइब्रेरी XSSFilter को आजमा सकते हैं।
यू निष्पादित करने के लिए चाहते हैं टैग या टैग को हटा दें? – newuser
संभावित डुप्लिकेट: http: //stackoverflow.com/questions/4948532/where-should-i-escape-html-strings-jsp-page-or-servlets –
@ न्यूस्यूसर मैं इसे से बचाना चाहता हूं, इसलिए उपयोगकर्ता '< पृष्ठ में पाठ के रूप में स्क्रिप्ट '। –