У меня есть текст, который вводит пользователь в текстовое поле, и я хочу отобразить его на другой странице.Удалять все, кроме строк в h: outputText
Первая проблема заключается в том, что строки, исходящие из текстового поля, являются \ r \ n вместо br, но я мог просто просто заменить их все. Фактическая проблема, с которой мне нужна помощь, отображает ее после этого:
h: outputText по умолчанию запускает все, поэтому для того, чтобы заставить строки работать, мне нужно выполнить escape = «false», но по понятным причинам я не хотите, чтобы пользователь мог испортить страницу, введя другие теги HTML или, что еще хуже, Javascript. Поэтому мне нужно как-то избежать всего, кроме строк.
Как мне это сделать? Или может быть другой компонент JSF, который сделает это более простым?
К сожалению, предварительные теги или CSS-пробелы не являются вариантом.
Попробуйте использовать регулярное выражение, которое может решить вашу проблему. –
@Noman: Никогда не предлагайте использовать регулярное выражение для разбора HTML, не говоря уже о том, чтобы дезинфицировать входные данные от векторов атак. Это просто глупо. Используйте обычный анализатор на основе стека и используйте регулярное выражение только для задания, которое оно предназначено для: регулярного соответствия языкового шаблона. HTML не является обычным языком. – BalusC
@BalusC спасибо, я буду помнить об этом :) –