ошибка обработки FullAjaxExceptionHandler, перенос JBoss EAP 7 в Wildfly 15, Omnifaces - PullRequest
0 голосов
/ 27 февраля 2019

Я использовал JBoss EAP-7.0.0, и я пытался перейти на WildFly 15

Вкл. WildFly 15 Представление граней выполнено хорошо, но при изменении / выравнивании (например, выберите дату p:календарь или onchange p: selectOneMenu) происходит, я получаю сообщения об ошибках.

10:21:31,690 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (default task-2) Error Rendering View[/secure/pages/site/namePageChangedByOwnerCompany.xhtml]: java.lang.IllegalArgumentException: Tipo de contenido no reconocido.
    at com.sun.faces.renderkit.RenderKitImpl.createResponseWriter(RenderKitImpl.java:283)
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.createResponseWriter(FaceletViewHandlingStrategy.java:1160)

...

10:21:31,904 SEVERE [org.omnifaces.exceptionhandler.FullAjaxExceptionHandler] (default task-2) FullAjaxExceptionHandler: An exception occurred during rendering JSF ajax response. Error page '/500.xhtml' will be shown.: java.lang.IllegalArgumentException: Tipo de contenido no reconocido.

И это сообщения ..

Упс!Возникла проблема при обработке запроса ajax.Впоследствии во время обработки страницы ошибки возникла другая проблема, которая должна сообщить вам об этой проблеме.Если вы ответственный веб-разработчик, самое время прочитать журналы сервера об ошибке на самой странице ошибок.

Я просматривал эти Полный обработчик исключений ajax , post 2 , Изящная работа с ViewExpiredException в JSF2

Wildfly: 15.0.1.Final 2019-01-05 Java EE Full & Web Distribution

Inмой pom.xml (я не утверждаю явно в pom, какая-то мохарра версия)

<dependency>
  <groupId>org.primefaces</groupId>
  <artifactId>primefaces</artifactId>
  <version>6.2</version>
</dependency>
  <groupId>org.omnifaces</groupId>
  <artifactId>omnifaces</artifactId>
  <version>2.1</version>
</dependency>

в моем faces-config.xml

<factory>
    <exception-handler-factory>
        org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory
    </exception-handler-factory>
</factory>

в моем web.xml

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.pf</url-pattern>
</servlet-mapping>

<error-page>
    <exception-type>javax.faces.application.ViewExpiredException</exception-type>
    <location>/secure/viewExpired.pf</location>
</error-page>

<error-page>
    <error-code>500</error-code>
    <location>/secure/error500.pf</location>
</error-page>

enter image description here

По моему viewExpired.xhtml

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
     xmlns:h="http://java.sun.com/jsf/html">
<h:head>
  <title>Nice View Expired Page</title>
</h:head>
<h:body>
<h:form>

    <p>To protect your security, we have taken the liberty of logging you
    out. Those who sacrifice liberty for security deserve to have
    their views expired.</p>

    <p>You were on page #{currentViewId}.  Maybe that's useful.</p>

  </h:form>
</h:body>
</html>

По моему error500.xhtml

<code><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
     xmlns:h="http://java.sun.com/jsf/html"
     xmlns:f="http://java.sun.com/jsf/core">
<h:head>
  <title>Nice 500 Page</title>
</h:head>
<h:body>
<h:form>

    <p>To protect your security, we have taken the liberty of logging you
    out. Those who sacrifice liberty for security deserve to have
    their views expired.</p>

    <p>You were on page #{currentViewId}.  Maybe that's useful.</p>
 <ul>
            <li>Date/time: #{of:formatDate(now, 'yyyy-MM-dd HH:mm:ss')}</li>
            <li>User agent: #{header['user-agent']}</li>
            <li>User IP: #{request.remoteAddr}</li>
            <li>Request URI: #{requestScope['javax.servlet.error.request_uri']}</li>
            <li>Ajax request: #{facesContext.partialViewContext.ajaxRequest ? 'Yes' : 'No'}</li>
            <li>Status code: #{requestScope['javax.servlet.error.status_code']}</li>
            <li>Exception type: #{requestScope['javax.servlet.error.exception_type']}</li>
            <li>Exception message: #{requestScope['javax.servlet.error.message']}</li>
            <li>Exception UUID: #{requestScope['org.omnifaces.exception_uuid']}</li>
            <li>Stack trace:
                <pre>#{of:printStackTrace(requestScope['javax.servlet.error.exception'])}
...