8 Replies Latest reply on Jun 4, 2009 10:50 AM by Kashif Nazar

    Problem with rich:fileUpload

    Kashif Nazar Newbie

      I am using rich:fileUpload. I am facing problems with it. In web.xml i used

      <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
      <url-pattern>/*</url-pattern>

      for filter mapping. If i comment <url-pattern>/*</url-pattern> in web.xml then rich:fileUpload works fine otherwise it doesnt and i can not comment this line because then i face problems like ViewException in other pages.


      Need a solution for this

      Regards,
      Kashif

        • 2. Re: Problem with rich:fileUpload
          Kashif Nazar Newbie

          Thanks for reply.

          i explored that example and i made changes in filter mapping in web.xml but its not working..

          Can you tell what i doing wrong.


          Kashif

          • 3. Re: Problem with rich:fileUpload
            Ilya Shaikovsky Master

            add web.xml from the beggining.

            • 4. Re: Problem with rich:fileUpload
              Kashif Nazar Newbie

              my web.xml is given. i cant just replace it. I did changes in it comparing it your web.xml but its not working.

              Can you please point where i have to make changes




              <?xml version="1.0" encoding="UTF-8"?>
              <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">
              <context-param>
              <param-name>javax.faces.CONFIG_FILES</param-name>
              <param-value>/WEB-INF/faces-config.xml</param-value>
              </context-param>
              <!-- Birt Reports Configuration -->
              <context-param>
              If usr can only access the reprot resources under working folder. Default is false
              <param-name>WORKING_FOLDER_ACCESS_ONLY</param-name>
              <param-value>false</param-value>
              </context-param>
              <context-param>
              The generated document files directory. Default to ${Context Root}/documents
              <param-name>BIRT_VIEWER_DOCUMENT_FOLDER</param-name>
              <param-value>WEB-INF/report-engine/documents</param-value>
              </context-param>
              <context-param>
              If turn on the function that supports print on the server side(ON|OFF).Default to on.
              <param-name>BIRT_VIEWER_PRINT_SERVERSIDE</param-name>
              <param-value>ON</param-value>
              </context-param>
              <context-param>
              Memory size(MB) for creating cube.
              <param-name>BIRT_VIEWER_CUBE_MEMORY_SIZE</param-name>
              <param-value/>
              </context-param>
              <context-param>
              Directory to store all birt report script libraries (JARs). Default to ${Context Root}/scriptlib
              <param-name>BIRT_VIEWER_SCRIPTLIB_DIR</param-name>
              <param-value>WEB-INF/report-engine/scriptlib</param-value>
              </context-param>
              <context-param>
              If always overwrite generated document file. Default to true
              <param-name>BIRT_OVERWRITE_DOCUMENT</param-name>
              <param-value>true</param-value>
              </context-param>
              <context-param>
              Output images/charts directory. Default to ${Context Root}/report/images
              <param-name>BIRT_VIEWER_IMAGE_DIR</param-name>
              <param-value>WEB-INF/report-engine/images</param-value>
              </context-param>
              <context-param>
              BIRT viewer extended configuration file
              <param-name>BIRT_VIEWER_CONFIG_FILE</param-name>
              <param-value>WEB-INF/report-engine/viewer.properties</param-value>
              </context-param>
              <context-param>
              Dataset rows limited when preview report. Default to return all rows
              <param-name>BIRT_VIEWER_MAX_ROWS</param-name>
              <param-value/>
              </context-param>
              <context-param>
              Cube fetch row levels limited when preview report (Only support to preview a report design file using preview pattern). Default to return all levels
              <param-name>BIRT_VIEWER_MAX_CUBE_ROWLEVELS</param-name>
              <param-value/>
              </context-param>
              <context-param>
              Default locale setting
              <param-name>BIRT_VIEWER_LOCALE</param-name>
              <param-value>en-US</param-value>
              </context-param>
              <context-param>
              Cube fetch column levels limited when preview report (Only support to preview a report design file using preview pattern). Default to return all levels
              <param-name>BIRT_VIEWER_MAX_CUBE_COLUMNLEVELS</param-name>
              <param-value/>
              </context-param>
              <context-param>
              Report resources(design files or document files) directory for preview. Default to ${Context Root}
              <param-name>BIRT_VIEWER_WORKING_FOLDER</param-name>
              <param-value/>
              </context-param>
              <context-param>
              Report Engine logs directory. Default to ${Context Root}/logs
              <param-name>BIRT_VIEWER_LOG_DIR</param-name>
              <param-value>WEB-INF/report-engine/logs</param-value>
              </context-param>
              <context-param>
              Resource location directory(library files, images files or others). Default to ${Context Root}
              <param-name>BIRT_RESOURCE_PATH</param-name>
              <param-value/>
              </context-param>
              <context-param>
              If force optimized HTML output.Default to true
              <param-name>HTML_ENABLE_AGENTSTYLE_ENGINE</param-name>
              <param-value>true</param-value>
              </context-param>
              <context-param>
              Report engine log level.( ALL|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|OFF )
              <param-name>BIRT_VIEWER_LOG_LEVEL</param-name>
              <param-value>WARNING</param-value>
              </context-param>
              <context-param>
              <param-name>com.sun.faces.enableRestoreView11Compatibility</param-name>
              <param-value>true</param-value>
              </context-param>


              <!-- RichFaces configuration -->
              <context-param>
              <param-name>facelets.BUILD_BEFORE_RESTORE</param-name>
              <param-value>true</param-value>
              </context-param>
              <context-param>
              <param-name>org.richfaces.SKIN</param-name>
              <param-value>blueSky</param-value>
              </context-param>
              <!-- <context-param>
              <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
              <param-value>.xhtml</param-value>
              </context-param> -->


              <display-name>Ajax4jsf Filter</display-name>
              <filter-name>ajax4jsf</filter-name>
              <filter-class>org.ajax4jsf.Filter</filter-class>

              <filter-mapping>
              <filter-name>ajax4jsf</filter-name>
              <servlet-name>Faces Servlet</servlet-name>
              REQUEST
              FORWARD
              INCLUDE
              </filter-mapping>


              <display-name>RichFaces Filter</display-name>
              <filter-name>richfaces</filter-name>
              <filter-class>org.ajax4jsf.Filter</filter-class>
              <!-- Parameters used by <rich:fileUpload>
              start from here
              -->
              <init-param>
              <param-name>createTempFiles</param-name>
              <param-value>true</param-value>
              </init-param>
              <init-param>
              <param-name>maxRequestSize</param-name>
              <param-value>20000000</param-value>
              </init-param>
              <!-- Parameters used by <rich:fileUpload>
              end here
              -->


              <filter-name>MyFacesExtensionsFilter</filter-name>
              <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
              <init-param>
              Set the size limit for uploaded files. Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
              <param-name>uploadMaxFileSize</param-name>
              <param-value>100m</param-value>
              </init-param>
              <init-param>
              Set the threshold size - files below this limit are stored in memory, files above this limit are stored on disk. Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
              <param-name>uploadThresholdSize</param-name>
              <param-value>10</param-value>
              </init-param>
              <init-param>
              Set the path where the intermediary files will be stored.
              <param-name>uploadRepositoryPath</param-name>
              <param-value>c:\temp</param-value>
              </init-param>


              <filter-name>AccessFilter</filter-name>
              <filter-class>eu.digitania.dls.frontend.filters.AccessFilter</filter-class>


              <filter-name>ReportsFilter</filter-name>
              <filter-class>eu.digitania.dls.frontend.filters.ReportsFilter</filter-class>

              <!--
              <filter-name>AccessFilter</filter-name>
              <filter-class>eu.digitania.dls.frontend.filters.AccessFilter</filter-class>
              <init-param>
              <param-name>loginPage</param-name>
              <param-value>login.faces</param-value>
              </init-param>
              -->
              <filter-mapping>
              <filter-name>richfaces</filter-name>
              <servlet-name>Faces Servlet</servlet-name>
              REQUEST
              FORWARD
              INCLUDE
              </filter-mapping>
              <filter-mapping>
              <filter-name>MyFacesExtensionsFilter</filter-name>
              <!-- extension mapping for adding , , and other resource tags to JSF-pages -->
              <servlet-name>Faces Servlet</servlet-name>
              <!-- extension mapping for serving page-independent resources (javascript, stylesheets, images, etc.) -->
              <url-pattern>/faces/*</url-pattern>
              <!-- <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
              <url-pattern>/*</url-pattern>-->
              </filter-mapping>



              <filter-mapping>
              <filter-name>AccessFilter</filter-name>
              <url-pattern>*.faces</url-pattern>
              <url-pattern>*.servlet</url-pattern>
              </filter-mapping>
              <filter-mapping>
              <filter-name>ReportsFilter</filter-name>
              <url-pattern>/frameset</url-pattern>
              </filter-mapping>
              <!-- <filter-mapping>
              <filter-name>AccessFilter</filter-name>
              <url-pattern>/dlsreports/*</url-pattern>
              <url-pattern>/push_service/*</url-pattern>
              FORWARD
              </filter-mapping>-->

              <listener-class>org.eclipse.birt.report.listener.ViewerHttpSessionListener</listener-class>


              <listener-class>org.eclipse.birt.report.listener.ViewerServletContextListener</listener-class>


              <servlet-name>Faces Servlet</servlet-name>
              <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
              <load-on-startup>0</load-on-startup>


              <servlet-name>EngineServlet</servlet-name>
              <servlet-class>org.eclipse.birt.report.servlet.BirtEngineServlet</servlet-class>
              <load-on-startup>0</load-on-startup>


              <servlet-name>ViewerServlet</servlet-name>
              <servlet-class>org.eclipse.birt.report.servlet.ViewerServlet</servlet-class>
              <load-on-startup>0</load-on-startup>


              This is the description of my J2EE component
              <display-name>This is the display name of my J2EE component</display-name>
              <servlet-name>EditServiceServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.EditServiceServlet</servlet-class>


              Starts the Emulator
              <display-name>Starts the Emulator</display-name>
              <servlet-name>InitializerServlet</servlet-name>
              <servlet-class>eu.digitania.dls.emulator.InitializerServlet</servlet-class>
              <load-on-startup>1</load-on-startup>


              This is the description of my J2EE component
              <display-name>This is the display name of my J2EE component</display-name>
              <servlet-name>InvoiceServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.InvoiceServlet</servlet-class>


              This is the description of my J2EE component
              <display-name>This is the display name of my J2EE component</display-name>
              <servlet-name>DownloadInvoiceServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.DownloadInvoiceServlet</servlet-class>



              This is the description of my J2EE component
              <display-name>This is the display name of my J2EE component</display-name>
              <servlet-name>DisplayImageServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.DisplayImageServlet</servlet-class>


              <servlet-name>DownloadMediaFileServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.DownloadMediaFileServlet</servlet-class>


              All content delivery requests will be handled by this servlet
              <display-name>Content Delivery Servlet</display-name>
              <servlet-name>ContentDeliveryServlet</servlet-name>
              <servlet-class>eu.digitania.cmp.frontend.contentdelivery.ContentDeliveryServlet</servlet-class>


              This is the description of my J2EE component
              <display-name>This is the display name of my J2EE component</display-name>
              <servlet-name>CmpFileWriterServlet</servlet-name>
              <servlet-class>eu.digitania.dls.frontend.servlets.CmpFileWriterServlet</servlet-class>



              <servlet-mapping>
              <servlet-name>DisplayImageServlet</servlet-name>
              <url-pattern>/servlet/DisplayImageServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>InitializerServlet</servlet-name>
              <url-pattern>/servlet/InitializerServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EditServiceServlet</servlet-name>
              <url-pattern>/servlet/EditServiceServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>Faces Servlet</servlet-name>
              <url-pattern>*.faces</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>ViewerServlet</servlet-name>
              <url-pattern>/frameset</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/document</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/download</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/parameter</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/extract</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>ViewerServlet</servlet-name>
              <url-pattern>/run</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/preview</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>EngineServlet</servlet-name>
              <url-pattern>/output</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>InvoiceServlet</servlet-name>
              <url-pattern>/servlet/InvoiceServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>DownloadInvoiceServlet</servlet-name>
              <url-pattern>/servlet/DownloadInvoiceServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>DownloadMediaFileServlet</servlet-name>
              <url-pattern>/servlet/DownloadMediaFileServlet.servlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>ContentDeliveryServlet</servlet-name>
              <url-pattern>/servlet/ContentDeliveryServlet</url-pattern>
              </servlet-mapping>
              <servlet-mapping>
              <servlet-name>CmpFileWriterServlet</servlet-name>
              <url-pattern>/servlet/CmpFileWriterServlet</url-pattern>
              </servlet-mapping>
              <welcome-file-list>
              <welcome-file>index.jsp</welcome-file>
              </welcome-file-list>
              <error-page>
              <exception-type>java.lang.Exception</exception-type>
              /main/error_page.faces
              </error-page>
              <jsp-config>

              <taglib-uri>/birt.tld</taglib-uri>
              <taglib-location>/WEB-INF/report-engine/tlds/birt.tld</taglib-location>

              </jsp-config>
              <login-config>
              <auth-method>BASIC</auth-method>
              </login-config>



              </web-app>

              • 6. Re: Problem with rich:fileUpload
                Kashif Nazar Newbie

                nbelaevski,

                I am sorry. The subject of the topic is same to another topic posted by me but the problem is something different. Please help me in this problem.

                Regards,
                Kashif

                • 7. Re: Problem with rich:fileUpload
                  Nick Belaevski Master

                  Kashif,

                  Please refer to documentation - RF user guide, FAQ and Servlet spec. MyFaces extension filter configuration is described there.

                  • 8. Re: Problem with rich:fileUpload
                    Kashif Nazar Newbie

                    I reffered to that but they have given a very generic example. I used that but still its not working for me.


                    Regards,

                    Kashif