6 Replies Latest reply on Oct 5, 2010 8:06 AM by csenes

    Exception Handling issue

    csenes

      Hi guys I have a problem , the codes on my pages.xml doesnt work, before they worked and error page come but now doesnt work and debug page come,I suppose a code part which write for improve speed broke this,Can Anybody help me?






      this is my web.xml




      <?xml version="1.0"?>
      <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
              <!-- RichFaces -->
      
      
      <session-config><session-timeout>60</session-timeout></session-config>
              
              <context-param>
                      <param-name>org.richfaces.SKIN</param-name>
                      <param-value>darkX</param-value>
              </context-param>
              <!-- Suppress spurious stylesheets -->
              <context-param>
                      <param-name>org.richfaces.CONTROL_SKINNING</param-name>
                      <param-value>disable</param-value>
              </context-param>
              <context-param>
                      <param-name>org.richfaces.CONTROL_SKINNING_CLASSES</param-name>
                      <param-value>disable</param-value>
              </context-param>
      
              <!--
                      Change load strategy to DEFAULT to disable sending scripts/styles as
                      packs
              -->
      
              <context-param>
                      <param-name>org.richfaces.LoadStyleStrategy</param-name>
                      <param-value>ALL</param-value>
              </context-param>
              <context-param>
                      <param-name>org.richfaces.LoadScriptStrategy</param-name>
                      <param-value>ALL</param-value>
              </context-param>
              <!-- Facelets development mode (disable in production) -->
              <context-param>
                      <param-name>facelets.DEVELOPMENT</param-name>
                      <param-value>@debug@</param-value>
              </context-param>
              
              
      
      + <!-- FOR IMPROVE SPEED ON IE  -->
      
      
      
              <context-param>
                      <param-name>org.richfaces.queue.global.enabled</param-name>
                      <param-value>true</param-value>
              </context-param>
              <!-- 2 -->
      
              <context-param>
                      <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
                      <param-value>false</param-value>
              </context-param>
              <!-- 3 -->
      
              <context-param>
                      <param-name>
                              facelets.RECREATE_VALUE_EXPRESSION_ON_BUILD_BEFORE_RESTORE</param-name>
                      <param-value>false</param-value>
              </context-param>
      
              <context-param>
                      <param-name>facelets.BUILD_BEFORE_RESTORE</param-name>
                      <param-value>false</param-value>
              </context-param>
      
              <context-param>
                      <param-name>facelets.DEVELOPMENT</param-name>
                      <param-value>false</param-value>
              </context-param>
      
              <context-param>
                      <param-name>facelets.REFRESH_PERIOD</param-name>
                      <param-value>1</param-value>
              </context-param>
      
              <!--  JSF RI Performance tuning -->
              <context-param>
                      <param-name>com.sun.faces.responseBufferSize</param-name>
                      <param-value>500000</param-value>
              </context-param>
      
              <context-param>
                      <param-name>com.sun.faces.verifyObjects</param-name>
                      <param-value>false</param-value>
              </context-param>
      
              <!-- Allows the JavaScript to be cached -->
              <context-param>
                      <param-name>com.sun.faces.externalizeJavaScript</param-name>
                      <param-value>true</param-value>
              </context-param>
              <!-- 4 -->
      
      
      + 
              <!--FOR IMPROVE SPEED ON IE -->
      
      
      
              <context-param>
                      <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
                      <param-value>.xhtml</param-value>
              </context-param>
      
              <filter>
                      <filter-name>Seam Filter</filter-name>
                      <filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>
                      <init-param>
                              <param-name>createTempFiles</param-name>
                              <param-value>true</param-value>
                      </init-param>
                      <init-param>
                              <param-name>maxRequestSize</param-name>
                              <param-value>100000000</param-value>
                      </init-param>
              </filter>
              <filter-mapping>
                      <filter-name>Seam Filter</filter-name>
                      <url-pattern>/*</url-pattern>
              </filter-mapping>
              <filter>
                      <filter-name>UTF8 Filter</filter-name>
                      <filter-class>org.domain.kaliteyonsist.general.UTF8Filter</filter-class>
              </filter>
              <filter-mapping>
                      <filter-name>UTF8 Filter</filter-name>
                      <url-pattern>/*</url-pattern>
              </filter-mapping>
      
      
              <filter>
                      <filter-name>HibernateSessionRequestFilter</filter-name>
                      <filter-class>
                              org.domain.kaliteyonsist.filter.HibernateSessionRequestFilter</filter-class>
              </filter>
              <filter-mapping>
                      <filter-name>HibernateSessionRequestFilter</filter-name>
                      <url-pattern>/*</url-pattern>
              </filter-mapping>
              <!-- Seam -->
              <listener>
                      <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
              </listener>
              <servlet>
                      <servlet-name>Document Store Servlet</servlet-name>
                      <servlet-class>org.jboss.seam.document.DocumentStoreServlet</servlet-class>
              </servlet>
              <servlet>
                      <servlet-name>Seam Resource Servlet</servlet-name>
                      <servlet-class>org.jboss.seam.servlet.SeamResourceServlet</servlet-class>
              </servlet>
              <servlet>
                      <servlet-name>Faces Servlet</servlet-name>
                      <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
                      <load-on-startup>1</load-on-startup>
              </servlet>
              <servlet-mapping>
                      <servlet-name>Document Store Servlet</servlet-name>
                      <url-pattern>*.pdf</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
                      <servlet-name>Seam Resource Servlet</servlet-name>
                      <url-pattern>/seam/resource/*</url-pattern>
              </servlet-mapping>
              <servlet>
                      <servlet-name>Resource Servlet</servlet-name>
                      <servlet-class>org.primefaces.resource.ResourceServlet</servlet-class>
                      <load-on-startup>2</load-on-startup>
              </servlet>
              <servlet-mapping>
                      <servlet-name>Resource Servlet</servlet-name>
                      <url-pattern>/primefaces_resource/*</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
                      <servlet-name>Faces Servlet</servlet-name>
                      <url-pattern>*.enlil</url-pattern>
              </servlet-mapping>
      
      
              <security-constraint>
                      <display-name>Restrict raw XHTML Documents</display-name>
                      <web-resource-collection>
                              <web-resource-name>XHTML</web-resource-name>
                              <url-pattern>*.xhtml</url-pattern>
                      </web-resource-collection>
                      <auth-constraint />
              </security-constraint>
              <login-config>
                      <auth-method>BASIC</auth-method>
              </login-config>
              <!--
                      uncomment <ejb-local-ref> entries when deploying to GlassFish and
                      (optionally) JBoss AS 5
              
       
      
      </web-app>
      




      and my pages.xml





      <?xml version="1.0" encoding="UTF-8"?>
      <pages xmlns="http://jboss.com/products/seam/pages" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.2.xsd"
              no-conversation-view-id="/home.xhtml" login-view-id="/login.xhtml">
      
              <page view-id="*">
                      <navigation>
                              <rule if-outcome="home">
                                      <redirect view-id="/home.xhtml" />
                              </rule>
                      </navigation>
              </page>
      
      
              <exception class="org.jboss.seam.framework.EntityNotFoundException">
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.EntityNotFoundException']}</message>
                      </redirect>
              </exception>
      
              <exception class="javax.persistence.EntityNotFoundException">
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.EntityNotFoundException']}</message>
                      </redirect>
              </exception>
      
              <exception class="javax.ejb.TransactionRolledbackLocalException">
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.SimpleTreeBeanException']}</message>
                      </redirect>
              </exception>
              <exception class="org.jboss.seam.InstantiationException">
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.SimpleTreeBeanException']}</message>
                      </redirect>
              </exception>
              <exception class="javax.persistence.OptimisticLockException">
                      <end-conversation />
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.OptimisticLockException']}</message>
                      </redirect>
              </exception>
      
              <exception class="org.jboss.seam.security.AuthorizationException">
                      <redirect view-id="/login.xhtml">
                              <message>#{messages['general.message.exception.AuthorizationException']}</message>
                      </redirect>
              </exception>
      
              <exception class="org.jboss.seam.security.NotLoggedInException">
                      <redirect view-id="/login.xhtml">
                              <message>#{messages['general.message.exception.NotLoggedInException']}</message>
                      </redirect>
              </exception>
      
              <exception class="org.hibernate.exception.GenericJDBCException">
                      <redirect view-id="/error.xhtml">
                              <message>#{messages['general.message.exception.GenericJDBCException']}</message>
                      </redirect>
              </exception>
      
              <exception class="javax.persistence.EntityExistsException">
                      <redirect view-id="/error.xhtml">
                              <message severity="warn">#{messages['general.message.exception.EntityExistException']}</message>
                      </redirect>
              </exception>
      
              <exception class="com.enterprisedt.net.ftp.FTPException">
                      <redirect view-id="/error.xhtml">
                              <message severity="warn">#{messages['general.message.exception.504']}</message>
                      </redirect>
              </exception>
      
      
              <exception class="javax.faces.application.ViewExpiredException">
                      <redirect view-id="/error.xhtml">
                              <message severity="error">#{messages['general.message.exception.ViewExpiredException']}</message>
                      </redirect>
              </exception>
      
              <exception class="org.jboss.seam.ConcurrentRequestTimeoutException"
                      log-level="trace">
                      <http-error error-code="503" />
              </exception>
      
              <exception class="org.hibernate.LazyInitializationException" log-level="error">
                      <redirect view-id="/error.xhtml">
                              <message severity="error">#{messages['general.message.exception.NoSession']}</message>
                      </redirect>
              </exception>
      
              <exception class="javax.servlet.ServletException">
                      <redirect view-id="/login.xhtml">
                              <message severity="warn">#{messages['general.message.exception.UTF8']}</message>
                      </redirect>
              </exception>
      
                      <exception class="java.io.IOException">
                      <redirect view-id="/login.xhtml">
                              <message severity="warn">#{messages['general.message.exception.UTF8']}</message>
                      </redirect>
              </exception>
      
              <exception class="javax.ejb.EJBTransactionRolledbackException">
                      <redirect view-id="/error.xhtml">
                              <message severity="error">#{messages['general.message.exception.EJBTransactionRolledbackException']}</message>
                      </redirect>
              </exception>
              <exception class="*" log-level="trace">
                      <redirect view-id="/error.xhtml">
                              <message severity="error">#{messages['general.message.exception.Exception']}</message>
                      </redirect>
              </exception>
      
      
      </pages>
      




        • 1. Re: Exception Handling issue
          cash1981

          I think the only reason why it is not working for you is because you are running in debug mode.
          See components.xml where it says core init.


          If you run in debug false, then the error pages should appear.


          I might be wrong, but I think that's it!

          • 2. Re: Exception Handling issue
            csenes

            but Before , error page seemed, my last changing on code broke this :(

            • 3. Re: Exception Handling issue
              cash1981
              Its because you have this code


              <context-param>
                    <param-name>facelets.DEVELOPMENT</param-name>
                              <param-value>@debug@</param-value>
                      </context-param>


              and again the same code

              <context-param>
                              <param-name>facelets.DEVELOPMENT</param-name>
                              <param-value>false</param-value>
                      </context-param>


              Remove the incorrect one.
              • 4. Re: Exception Handling issue
                csenes

                I did but still debug page come :(

                • 5. Re: Exception Handling issue
                  cash1981

                  You get debug page because you have debug mode on. Its as simple as that.


                  Try this, and you will see error page instead of debug page.
                  Also make sure jboss-seam-debug.jar is not in classpath


                  <core:init debug="false" jndi-pattern="@jndiPattern@" /> 
                  




                  together with



                  <context-param>
                  <param-name>facelets.DEVELOPMENT</param-name>
                  <param-value>false</param-value>
                  </context-param>



                  • 6. Re: Exception Handling issue
                    csenes

                    thanks budy appreciate your help ,have a nice day without errors