Содержимое диалога p (Primefaces) пусто в IE8

Итак, мы столкнулись с очень странной проблемой и хотели бы узнать, прошел ли кто-нибудь еще через это. Мы создали приложение, используя Primefaces 4.0, JSF 2.1.27 Mojarra. Развернуто на WL 12.1.1. Проверено в IE8.

Итак, есть страница «Профиль» и диалоговое окно, когда пользователь нажимает «Редактировать профиль», появляется диалоговое окно с формой, пользователь редактирует информацию, а затем сохраняет ее, диалоговое окно закрывается, а затем на странице отображается обновленная информация.

Поэтому, когда я запускаю его на своем локальном weblogic 12.1.1, все работает абсолютно нормально. И не только я, несколько других коллег тоже протестировали его, он отлично работает и в их локальном WL, и в IE8, Chrome и т. Д.

Итак, мы развернули сервер DEV нашей компании, который является WL 12.1.2, а затем протестировали в IE8, когда мы нажимаем на этот профиль редактирования p commandLink, открывается диалоговое окно без содержимого внутри него. Это просто диалоговое окно. И это работает в других браузерах хорошо и хорошо.

Единственное изменение, которое я вижу, это сервер.

Вот код для commandLink на этой странице:

<p:commandLink value="Edit Profile Info"
                    oncomplete="PF('profileInfoDialog').show()" update=":editProfileForm" 
                    style="text-decoration:none;color:blue;font-style:italic" />

Вот диалог, содержимое представляет собой длинный код, но я не думаю, что содержимое имеет к этому какое-то отношение:

<p:dialog header="Edit Profile Info" widgetVar="profileInfoDialog" closable="false"
        style="border:1px 0" modal="true" appendToBody="true" id="profileInfoDialogId" dynamic="true">
            <h:form id="editProfileForm">
       //All the input fields and other content
    <h:panelGrid columns="3">
                        <p:commandButton id="submitButton" value="Save"
                            partialSubmit="true" validateClient="true"
                            update=":editProfileForm:messages"
                            actionListener="#{profileInfoBean.saveProfile}"
                            oncomplete="if (!args.validationFailed  &amp;&amp; args.saved) PF('profileInfoDialog').hide();"/>
                        <h:outputText
                            value="By clicking Save, I verify the information on this screen is accurate." />
                        <p:commandButton id="cancelButton" value="Cancel" type="button" update="editProfileForm"
                            onclick="PF('profileInfoDialog').hide();">
                             <p:resetInput target="editProfileForm" />
                            </p:commandButton>

                    </h:panelGrid>

                </h:form>
        </p:dialog>

Причина, по которой я акцентирую внимание на версии сервера, заключается в том, что я только что попробовал на одном из локальных веб-серверов моего друга 12.1.2, и у него такая же проблема с IE. Я уже пытался удалить modal=true и appendToBody=true, но ничего не получилось. Я очень ценю помощь здесь, поскольку мы направляемся в QA, и это стало препятствием.

Спасибо!


person PavanSandeep    schedule 24.01.2014    source источник
comment
Нажмите F12 и проверьте, что такое режим документа. Если это режим Quirks, измените его на IE8.   -  person Makky    schedule 24.01.2014
comment
Твое право! Это сработало, я также нашел исправление, которое можно было принудительно использовать в самом приложении. Я скоро опубликую его! Спасибо!   -  person PavanSandeep    schedule 24.01.2014


Ответы (1)


@Makky: Спасибо за помощь в диагностике проблемы!

Это сработало для меня:

<h:head>

<f:facet name="first">

    <meta http-equiv="content-type"
        content="text/html; charset=windows-1250" />

    <meta http-equiv="x-ua-compatible" content="IE=8" />

</f:facet>

</h:head>
person PavanSandeep    schedule 24.01.2014