Como impedir a injeção de JavaScript (XSS) quando o JSTL escapeXml é falso

Eu tenho um formulário que as pessoas podem adicionar suas coisas. No entanto, nesse formato, se eles inserirem JavaScript em vez de apenas texto, poderão injetar facilmente o que quiserem. Para evitá-lo, posso definir escapeXml como true, mas o HTML normal também será escapado.

<td><c:out value="${item.textValue}" escapeXml="true" /></td>

Existe alguma outra maneira de impedir a injeção de JavaScript em vez de configurá-la como verdadeira?

questionAnswers(3)

yourAnswerToTheQuestion