[jboss-user] [JBoss Seam] - s:fileUpload and Tomahawk extensionfilter
baz
do-not-reply at jboss.com
Thu Mar 15 09:56:39 EDT 2007
I do need some tomahawk components in my app(together with the required extension filter) What is the preferred configuration for this?
I am asking because i have a problem with this combination and s:fileUpload. I searched this forum and the jira for posts describing such an incombatibility (with no success).
Using Seam 1.2.0.Patch1
My problem is:
When i upload a file this leads to a little problem in the decode method from UIFileUpload
| private static final String TOMAHAWK_WRAPPER_CLASS = "org.apache.myfaces.webapp.filter.MultipartRequestWrapper";
|
| public void decode(FacesContext context)
| {
| super.decode(context);
|
| Object request = context.getExternalContext().getRequest();
|
| if (!(request instanceof MultipartRequest) &&
| request instanceof HttpServletRequestWrapper)
| {
| request = ((HttpServletRequestWrapper) request).getRequest();
| }
|
| if (!(request instanceof MultipartRequest) &&
| request.getClass().getName().equals(TOMAHAWK_WRAPPER_CLASS))
| {
|
I have debugged this and
the request that comes in is a MultipartRequestWrapper but also 'request instanceof HttpServletRequestWrapper' yields true.
So the if statements have to be swapped . If not, a MultipartRequestWrapper will not be handled properly.
My question: Is this because i have a configuration error in my web.xml or is this a real problem (and possible fixed)?
Ciao,
Carsten
BTW
My Web.xml declares the extension filter before seam filter.
| [...]
| <filter>
| <filter-name>extensionsFilter</filter-name>
| <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
| <init-param>
| <description>Set the size limit for uploaded files. Format: 10 - 10
| bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB</description>
| <param-name>uploadMaxFileSize</param-name>
| <param-value>100m</param-value>
| </init-param>
| <init-param>
| <description>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</description>
| <param-name>uploadThresholdSize</param-name>
| <param-value>100k</param-value>
| </init-param>
| </filter>
| <filter>
| <filter-name>Seam Filter</filter-name>
| <filter-class>org.jboss.seam.web.SeamFilter</filter-class>
| </filter>
| <!-- extension mapping for serving page-independent resources (javascript, stylesheets, images, etc.) -->
| <filter-mapping>
| <filter-name>extensionsFilter</filter-name>
| <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
| </filter-mapping>
| <!-- extension mapping for adding <script/>, <link/>, and other resource tags to JSF-pages-->
| <filter-mapping>
| <filter-name>extensionsFilter</filter-name>
| <servlet-name>Faces Servlet</servlet-name>
| <dispatcher>REQUEST</dispatcher>
| <dispatcher>FORWARD</dispatcher>
| <dispatcher>INCLUDE</dispatcher>
| </filter-mapping>
| <filter-mapping>
| <filter-name>Seam Filter</filter-name>
| <servlet-name>Faces Servlet</servlet-name>
| <dispatcher>REQUEST</dispatcher>
| <dispatcher>FORWARD</dispatcher>
| <dispatcher>INCLUDE</dispatcher>
| </filter-mapping>
| [...]
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4028370#4028370
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4028370
More information about the jboss-user
mailing list