Наше решение заключалось в том, чтобы поместить дополнительный интервал непосредственно перед текстовой областью, содержащей число максимальной длины.
<span class="maxlength">35</span>
Вы даете этому классу "display: none;" Правило, чтобы скрыть это. Затем вы используете JavaScript, чтобы найти каждый span.maxlength и переместить число внутри него в атрибут maxlength текстовой области (используя jQuery):
$('span.maxlength').each(function(){
$this = $(this);
$this.next('textarea').attr('maxlength',$this.html());
$this.remove();
});
Как только это будет сделано, запустите другой JavaScript, который ограничивает набор текста в текстовых областях.
Hacky? Да. Но JSF, не поддерживающий maxlength, является хакером.