Author: tmjee Date: Thu Oct 19 21:05:46 2006 New Revision: 465978 URL: http://svn.apache.org/viewvc?view=rev&rev=465978 Log: WW-1479 - Add to Showcase examples of Multiple fileupload where files are backed by List and Array
Added: struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingArrayAction.java struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction.java struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/ struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction-conversion.properties struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/index.jsp struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray-success.jsp struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray.jsp struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList-success.jsp struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList.jsp Modified: struts/struts2/trunk/apps/showcase/src/main/resources/struts-fileupload.xml struts/struts2/trunk/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp struts/struts2/trunk/apps/showcase/src/main/webapp/showcase.jsp Added: struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingArrayAction.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingArrayAction.java?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingArrayAction.java (added) +++ struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingArrayAction.java Thu Oct 19 21:05:46 2006 @@ -0,0 +1,63 @@ +/* + * $Id: FileUploadAction.java 432886 2006-08-19 22:03:04Z tmjee $ + * + * Copyright 2006 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.struts2.showcase.fileupload; + +import java.io.File; + +import com.opensymphony.xwork2.ActionSupport; + +/** + * Showcase action - mutiple file upload using array. + * + * @version $Date$ $Id$ + */ +public class MultipleFileUploadUsingArrayAction extends ActionSupport { + + private File[] uploads; + private String[] uploadFileNames; + private String[] uploadContentTypes; + + public File[] getUpload() { return this.uploads; } + public void setUpload(File[] upload) { this.uploads = upload; } + + public String[] getUploadFileName() { return this.uploadFileNames; } + public void setUploadFileName(String[] uploadFileName) { this.uploadFileNames = uploadFileName; } + + public String[] getUploadContentType() { return this.uploadContentTypes; } + public void setUploadContentType(String[] uploadContentType) { this.uploadContentTypes = uploadContentType; } + + + public String upload() throws Exception { + System.out.println("\n\n upload2"); + System.out.println("files:"); + for (File u: uploads) { + System.out.println("*** "+u+"\t"+u.length()); + } + System.out.println("filenames:"); + for (String n: uploadFileNames) { + System.out.println("*** "+n); + } + System.out.println("content types:"); + for (String c: uploadContentTypes) { + System.out.println("*** "+c); + } + System.out.println("\n\n"); + return SUCCESS; + } + +} Added: struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction.java?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction.java (added) +++ struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction.java Thu Oct 19 21:05:46 2006 @@ -0,0 +1,81 @@ +package org.apache.struts2.showcase.fileupload; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +/* + * $Id: FileUploadAction.java 432886 2006-08-19 22:03:04Z tmjee $ + * + * Copyright 2006 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import com.opensymphony.xwork2.ActionSupport; + +/** + * Showcase action - multiple file upload using List + * @version $Date$ $Id$ + */ +public class MultipleFileUploadUsingListAction extends ActionSupport { + + private List<File> uploads = new ArrayList<File>(); + private List<String> uploadFileNames = new ArrayList<String>(); + private List<String> uploadContentTypes = new ArrayList<String>(); + + + public List<File> getUpload() { + return this.uploads; + } + public void setUpload(List<File> uploads) { + this.uploads = uploads; + } + + public List<String> getUploadFileName() { + return this.uploadFileNames; + } + public void setUploadFileName(List<String> uploadFileNames) { + this.uploadFileNames = uploadFileNames; + } + + public List<String> getUploadContentType() { + return this.uploadContentTypes; + } + public void setUploadContentType(List<String> contentTypes) { + this.uploadContentTypes = contentTypes; + } + + + + + public String upload() throws Exception { + + System.out.println("\n\n upload1"); + System.out.println("files:"); + for (File u: uploads) { + System.out.println("*** "+u+"\t"+u.length()); + } + System.out.println("filenames:"); + for (String n: uploadFileNames) { + System.out.println("*** "+n); + } + System.out.println("content types:"); + for (String c: uploadContentTypes) { + System.out.println("*** "+c); + } + System.out.println("\n\n"); + return SUCCESS; + } + + +} Added: struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction-conversion.properties URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction-conversion.properties?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction-conversion.properties (added) +++ struts/struts2/trunk/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/MultipleFileUploadUsingListAction-conversion.properties Thu Oct 19 21:05:46 2006 @@ -0,0 +1 @@ +Element_upload=java.io.File Modified: struts/struts2/trunk/apps/showcase/src/main/resources/struts-fileupload.xml URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/resources/struts-fileupload.xml?view=diff&rev=465978&r1=465977&r2=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/resources/struts-fileupload.xml (original) +++ struts/struts2/trunk/apps/showcase/src/main/resources/struts-fileupload.xml Thu Oct 19 21:05:46 2006 @@ -7,8 +7,6 @@ <struts> <package name="fileupload" extends="struts-default" namespace="/fileupload"> - <default-action-ref name="upload"/> - <action name="upload" class="org.apache.struts2.showcase.fileupload.FileUploadAction" method="input"> <result>upload.jsp</result> </action> @@ -16,6 +14,24 @@ <action name="doUpload" class="org.apache.struts2.showcase.fileupload.FileUploadAction" method="upload"> <result>upload-success.jsp</result> </action> + + <action name="multipleUploadUsingList"> + <result>multipleUploadUsingList.jsp</result> + </action> + + <action name="doMultipleUploadUsingList" class="org.apache.struts2.showcase.fileupload.MultipleFileUploadUsingListAction" method="upload"> + <result>multipleUploadUsingList-success.jsp</result> + </action> + + + <action name="multipleUploadUsingArray"> + <result>multipleUploadUsingArray.jsp</result> + </action> + + <action name="doMultipleUploadUsingArray" class="org.apache.struts2.showcase.fileupload.MultipleFileUploadUsingArrayAction" method="upload"> + <result>multipleUploadUsingArray-success.jsp</result> + </action> + </package> </struts> Modified: struts/struts2/trunk/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp?view=diff&rev=465978&r1=465977&r2=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp (original) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp Thu Oct 19 21:05:46 2006 @@ -94,6 +94,7 @@ <li><a href="<s:url value="/freemarker/index.jsp"/>">Freemarker</a> <li><a href="<s:url value="/chat/index.jsp"/>">Chat (AJAX)</a> <li><a href="<s:url action="hangmanMenu" namespace="/hangman"/>">Hangman</a></li> + <li><a href="<s:url value="/fileupload" />">Fileupload</a></li> <li class="last"><a href="<s:url value="/help.jsp"/>">Help</a></li> </ul> </div> Added: struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/index.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/index.jsp?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/index.jsp (added) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/index.jsp Thu Oct 19 21:05:46 2006 @@ -0,0 +1,25 @@ +<[EMAIL PROTECTED] prefix="s" uri="/struts-tags" %> +<html> +<head> +<title>Showcase - Fileupload</title> +</head> +<body> + +<ul> + <li> + <s:url id="url" action="upload" namespace="/fileupload" /> + <s:a href="%{#url}">Single File Upload</s:a> + </li> + <li> + <s:url id="url" action="multipleUploadUsingList" namespace="/fileupload" /> + <s:a href="%{#url}">Multiple File Upload (List)</s:a> + + </li> + <li> + <s:url id="url" action="multipleUploadUsingArray" namespace="/fileupload" /> + <s:a href="%{#url}">Multiple File Upload (Array)</s:a> + </li> +</ul> + +</body> +</html> \ No newline at end of file Added: struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray-success.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray-success.jsp?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray-success.jsp (added) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray-success.jsp Thu Oct 19 21:05:46 2006 @@ -0,0 +1,37 @@ +<[EMAIL PROTECTED] prefix="s" uri="/struts-tags" %> +<html> +<head> +<title>Insert title here</title> +</head> +<body> + +<table border="1"> +<s:iterator value="upload" status="stat"> +<tr> + <td>File <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{upload[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + + +<table border="1"> +<s:iterator value="uploadFileName" status="stat"> +<tr> + <td>File Name <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{uploadFileName[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + +<table border="1"> +<s:iterator value="uploadContentType" status="stat"> +<tr> + <td>Content Type <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{uploadContentType[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + +</body> +</html> \ No newline at end of file Added: struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray.jsp?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray.jsp (added) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingArray.jsp Thu Oct 19 21:05:46 2006 @@ -0,0 +1,20 @@ +<%@ page + language="java" + contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8"%> +<%@ taglib prefix="s" uri="/struts-tags" %> +<html> +<head> +<title>Showcase - fileupload - multiple fileupload using List</title> +</head> +<body> + +<s:form action="doMultipleUploadUsingArray" method="POST" enctype="multipart/form-data"> + <s:file label="File (1)" name="upload" /> + <s:file label="File (2)" name="upload" /> + <s:file label="FIle (3)" name="upload" /> + <s:submit /> +</s:form> + +</body> +</html> \ No newline at end of file Added: struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList-success.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList-success.jsp?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList-success.jsp (added) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList-success.jsp Thu Oct 19 21:05:46 2006 @@ -0,0 +1,37 @@ +<[EMAIL PROTECTED] prefix="s" uri="/struts-tags" %> +<html> +<head> +<title>Insert title here</title> +</head> +<body> + +<table border="1"> +<s:iterator value="upload" status="stat"> +<tr> + <td>File <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{upload[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + + +<table border="1"> +<s:iterator value="uploadFileName" status="stat"> +<tr> + <td>File Name <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{uploadFileName[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + +<table border="1"> +<s:iterator value="uploadContentType" status="stat"> +<tr> + <td>Content Type <s:property value="%{#stat.index}" /></td> + <td><s:property value="%{uploadContentType[#stat.index]}" /></td> +</tr> +</s:iterator> +</table> + +</body> +</html> \ No newline at end of file Added: struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList.jsp?view=auto&rev=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList.jsp (added) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/fileupload/multipleUploadUsingList.jsp Thu Oct 19 21:05:46 2006 @@ -0,0 +1,20 @@ +<%@ page + language="java" + contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8"%> +<%@ taglib prefix="s" uri="/struts-tags" %> +<html> +<head> +<title>Showcase - fileupload - multiple fileupload using List</title> +</head> +<body> + +<s:form action="doMultipleUploadUsingList" method="POST" enctype="multipart/form-data"> + <s:file label="File (1)" name="upload" /> + <s:file label="File (2)" name="upload" /> + <s:file label="FIle (3)" name="upload" /> + <s:submit /> +</s:form> + +</body> +</html> \ No newline at end of file Modified: struts/struts2/trunk/apps/showcase/src/main/webapp/showcase.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/showcase.jsp?view=diff&rev=465978&r1=465977&r2=465978 ============================================================================== --- struts/struts2/trunk/apps/showcase/src/main/webapp/showcase.jsp (original) +++ struts/struts2/trunk/apps/showcase/src/main/webapp/showcase.jsp Thu Oct 19 21:05:46 2006 @@ -28,7 +28,7 @@ <li><s:url id="url" value="/tags"/><s:a href="%{url}">Tags Examples</s:a></li> <!-- fileupload --> - <li><s:url id="url" namespace="/fileupload" action="upload"/><s:a href="%{url}">File Upload Example</s:a></li> + <li><s:url id="url" value="/fileupload" /><s:a href="%{url}">File Upload Example</s:a></li> <!-- crud --> <li><s:url id="url" value="/empmanager"/><s:a href="%{url}">CRUD Examples</s:a></li>