2012-06-20 4 views
1

Я испытываю поведенческое поведение (по крайней мере, на моих глазах).Пропущенная страница отсутствует DOCTYPE на POST

Как-то не хватает DOCTYPE и html-тега, когда я делаю сообщение из шаблона, который содержит include.

Предположим, что я делаю GET на home1.xhtml, который использует template1.xhtml с включенным widget.xhtml. Теперь я делаю POST на home2.xhtml. Теперь в ответе отсутствует DOCTYPE и html-тег.

Если я

  • сделать GET непосредственно на home2.xhtml или

  • заменить включают в template1.xhtml с содержимым включаемого и сделать POST

DOCTYPE и html-тег находятся в ответе, как ожидалось.

home1.xhtml:

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
       xmlns:ui="http://java.sun.com/jsf/facelets" 
       template="template1.xhtml"> 
    <ui:define name="content"> 

    </ui:define> 
</ui:composition> 

template1.xhtml:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:ui="http://java.sun.com/jsf/facelets" > 
<h:head> 
</h:head> 
<h:body> 
    Called with GET 
    <ui:include src="widget.xhtml" /> 
    <h:form> 
    <h:commandLink action="#{homeBean2.show}" value="POST" /> 
    </h:form> 
</h:body> 
</html> 

wigdet.xhtml:

<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets" 
       xmlns:h="http://java.sun.com/jsf/html" > 
    <h:form id="someForm"> 
    </h:form> 
</ui:composition> 

home2.xhtml:

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
       xmlns:ui="http://java.sun.com/jsf/facelets" 
       template="template2.xhtml"> 
    <ui:define name="content"> 
    POST 1 
    </ui:define> 
</ui:composition> 

template2.xhtml:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:ui="http://java.sun.com/jsf/facelets" > 
<h:head> 
</h:head> 
<h:body> 
    template 2 
</h:body> 
</html> 

Как я могу получить DOCTYPE и HTML-тег, чтобы показать в отображаемой странице?

Любые намеки, что мне здесь не хватает?

Jonny

+1

Что вы используете/используете JSF? Как именно это связано с PrimeFaces? Проблема исчезает, когда вы удаляете PrimeFaces? Также как точно относится к Tomcat6? Проблема исчезнет, ​​если вы используете Tomcat7 или даже другой сервер, например Glassfish? Если они не связаны друг с другом, удалите теги и укажите их исключение из-за причины в вопросе. – BalusC

+0

Привет, BalusC, спасибо за ваш комментарий. Я посмотрю на это и попытаюсь разделить мой проект дальше. Первое, что я сделаю в понедельник. – user871611

+0

Привет, ребята, к сожалению, у меня не было времени снять свой проект, чтобы сузить библиотеку, которая вызывает проблемы. Но это одно: ** После обновления Mojarra с 2.1.9 до 2.1.10 ** Я снова получаю хотя бы «html-tag», но 'DOCTYPE' по-прежнему отсутствует. – user871611

ответ