1 17 package org.alfresco.web.ui.repo.tag; 18 19 import java.io.IOException ; 20 import java.io.Writer ; 21 22 import javax.portlet.RenderResponse; 23 import javax.servlet.http.HttpServletRequest ; 24 import javax.servlet.jsp.JspException ; 25 import javax.servlet.jsp.tagext.TagSupport ; 26 27 import org.alfresco.web.app.Application; 28 import org.apache.commons.logging.Log; 29 import org.apache.commons.logging.LogFactory; 30 31 37 public class UploadFormTag extends TagSupport 38 { 39 private static final long serialVersionUID = 4064734856565167835L; 40 41 private static Log logger = LogFactory.getLog(UploadFormTag.class); 42 43 46 public int doStartTag() throws JspException 47 { 48 try 49 { 50 Writer out = pageContext.getOut(); 51 52 out.write("<form name='upload-form' acceptCharset='UTF-8' method='post' enctype='multipart/form-data' action='"); 53 54 if (Application.inPortalServer()) 55 { 56 RenderResponse renderResp = (RenderResponse)pageContext.getRequest(). 57 getAttribute("javax.portlet.response"); 58 if (renderResp == null) 59 { 60 throw new IllegalStateException ("RenderResponse object is null. The web application is not executing within a portal server!"); 61 } 62 63 out.write(renderResp.createActionURL().toString()); 64 out.write("'>"); 65 } 66 else 67 { 68 HttpServletRequest req = (HttpServletRequest )pageContext.getRequest(); 69 out.write(req.getContextPath()); 70 out.write("/uploadFileServlet'>\n"); 71 out.write("<input type='hidden' name='return-page' value='"); 72 out.write(req.getContextPath() + "/faces" + req.getServletPath()); 73 out.write("'>\n"); 74 } 75 } 76 catch (IOException ioe) 77 { 78 throw new JspException (ioe.toString()); 79 } 80 81 return EVAL_BODY_INCLUDE; 82 } 83 84 public int doEndTag() throws JspException 85 { 86 try 87 { 88 pageContext.getOut().write("\n</form>"); 89 } 90 catch (IOException ioe) 91 { 92 throw new JspException (ioe.toString()); 93 } 94 95 return super.doEndTag(); 96 } 97 } 98 | Popular Tags |