У меня есть составной элемент управления, как показано ниже;Функция Javascript не работает внутри составного элемента управления JSF
< HTML XMLNS = "http://www.w3.org/1999/xhtml" Xmlns: композиционные = "http://java.sun.com/jsf/composite" XMLNS: ч = «http://java.sun.com/jsf/html»>
<composite:interface>
<composite:attribute name="validatorId"/>
<composite:attribute name="message"/>
</composite:interface>
<composite:implementation>
<div>
<script type="text/javascript">
function #{cc.attrs.validatorId}(){alert('why is it not working :(');};
</script>
<div style="background-color: #F2DEDE;color: #b94a48;border-style: solid;border-color: #FAC3CB;border-width: 1.8px;font-family: Arial;
font-size: 12px;height:17px;vertical-align: middle;padding-left: 8px;padding-right: 8px;padding-top: 2px;display: none;"
id="#{cc.attrs.validatorId}">
#{cc.attrs.message}
<img src="images/close-mini.png" style="cursor: pointer;padding-left: 5px;"/>
</div>
</div>
</composite:implementation> </html>
Этот элемент управления помещается в XHTML file.The яваскрипт и составные элементы управления оказывающего как ожидаемым образом. Но когда делается запрос на верстку следующее исключение происходит в Glassfish сервера:
java.lang.IllegalStateException: PWC3999: Не удается создать сеанс после того, как ответ был совершен.
В чем причина? Когда я удаляю исключение функции javascript, это не происходит.
Можете ли вы включить весь стек? –
Дубликат http://stackoverflow.com/search?q=Cannot+create+a+session+after+the+response+has+been+committed. То, что это произошло, когда вы добавили JS-код, - это чистое совпадение. Это также произойдет, если вы добавите столько же байтов обычного HTML или даже обычного текста. – BalusC