Стиль CSS иногда применяется только после обновления страницы на странице jsf? - PullRequest
5 голосов
/ 19 сентября 2011

Я некоторое время боролся со странной ошибкой в ​​нашем приложении и не смог найти решение, даже на Google и StackOverflow я не нашел ничего подходящего моей проблеме.

Во-первых, краткий обзор настроек приложения:

  • ICEfaces 1.8.1 и JSF 1.2
  • Шов 2.1.1
  • Java 1.6, обновление 20
  • работает на JBoss 4.2.2.GA
  • приложение развернуто как EAR-файл

Если вам нужна дополнительная информация, пожалуйста, скажите мне, я постараюсь выяснить ее и предоставить вам.

Теперь возникает проблема:

Иногда (на случайных страницах приложения) сгенерированный JSF HTML-код создается и отправляется в браузер, но таблицы стилей не включены. После обновления страницы (нажатие клавиши F5) страница отображается так, как должно, и применяются все стили. На некоторых страницах ошибка кажется воспроизводимой, на других она возникает случайно. Ошибка (?) Возникает в Opera (11.51, более ранние версии не тестировались) и Firefox (приложение нормально работает в 3.6, но не в Firefox 6). IE9 работает нормально.

Сайт состоит из страницы верхнего уровня (template.xhtml), формирующей макет приложения, все остальные сайты включено через пользовательский интерфейс: include-Tags.

В head-Tag стили включены через

<link href="#{request.contextPath}/stylesheet/icefaces_style.css" rel="stylesheet" type="text/css" />
<link href="#{request.contextPath}/stylesheet/screen.css"
rel="stylesheet" type="text/css" />

Это делает для:

Даже если страница отображается правильно, таблицы стилей не включаются в заголовок, они помещаются в тег body, отображаемый как:

<body>
<link type="text/css" rel="stylesheet" href="/myApp/stylesheet/icefaces_style.css">
<link type="text/css" rel="stylesheet" href="/myApp/stylesheet/screen.css">
</body>

Если это не правильно, просто не включены стили. На самом деле, ничего из заголовка страницы template.xhtml не включено в предоставленный ответ.

У вас есть предложения, где искать дальнейшие или возможные решения? Заранее спасибо!

1 Ответ

2 голосов
/ 25 сентября 2011

Я не могу найти документацию по JSF или языку выражений, в которой указано, разрешены ли выражения в заголовке или нет.Но я раньше не видел выражений в заголовке и не удивляюсь, что ICEfaces смущает его при обработке страницы.Переместите стили CSS в тело, и тогда будут работать частичные обновления из ICEfaces в веб-браузер.

...