[jboss-cvs] jboss-seam/src/ui/org/jboss/seam/ui ...

Shane Bryzak sbryzak at redhat.com
Tue Apr 24 02:36:13 EDT 2007


  User: sbryzak2
  Date: 07/04/24 02:36:13

  Modified:    src/ui/org/jboss/seam/ui  UIFileUpload.java
  Log:
  JBSEAM-1232
  
  Revision  Changes    Path
  1.6       +41 -31    jboss-seam/src/ui/org/jboss/seam/ui/UIFileUpload.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: UIFileUpload.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/ui/org/jboss/seam/ui/UIFileUpload.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- UIFileUpload.java	1 Apr 2007 02:29:21 -0000	1.5
  +++ UIFileUpload.java	24 Apr 2007 06:36:13 -0000	1.6
  @@ -5,7 +5,7 @@
   import java.lang.reflect.Field;
   import java.lang.reflect.Method;
   
  -import javax.faces.component.UIComponentBase;
  +import javax.faces.component.UIInput;
   import javax.faces.context.FacesContext;
   import javax.faces.context.ResponseWriter;
   import javax.faces.el.ValueBinding;
  @@ -18,7 +18,7 @@
    * 
    * @author Shane Bryzak
    */
  -public class UIFileUpload extends UIComponentBase
  +public class UIFileUpload extends UIInput
   {
      public static final String COMPONENT_TYPE   = "org.jboss.seam.ui.UIFileUpload";
      public static final String COMPONENT_FAMILY = "org.jboss.seam.ui.FileUpload";
  @@ -27,6 +27,8 @@
      private String styleClass;
      private String style;   
      
  +   private MultipartRequest request;
  +   
      @Override
      public void decode(FacesContext context)
      {
  @@ -41,12 +43,21 @@
   
         if (request instanceof MultipartRequest)
         {
  -         MultipartRequest req = (MultipartRequest) request;
  +         this.request = (MultipartRequest) request;
            
            String clientId = getClientId(context);         
  -         String contentType = req.getFileContentType(clientId);
  -         String fileName = req.getFileName(clientId);
  -         int fileSize = req.getFileSize(clientId);
  +         
  +         this.request.getFileName(clientId);   
  +      }      
  +   }
  +   
  +   @Override
  +   public void processUpdates(FacesContext context)
  +   {                         
  +      String clientId = getClientId(context);
  +      String contentType = request.getFileContentType(clientId);
  +      String fileName = request.getFileName(clientId);
  +      int fileSize = request.getFileSize(clientId);       
                     
            ValueBinding dataBinding = getValueBinding("data");
            if (dataBinding != null)
  @@ -54,11 +65,11 @@
               Class cls = dataBinding.getType(context);
               if (cls.isAssignableFrom(InputStream.class))
               {
  -               dataBinding.setValue(context, req.getFileInputStream(clientId));
  +            dataBinding.setValue(context, request.getFileInputStream(clientId));
               }
               else if (cls.isAssignableFrom(byte[].class))
               {
  -               dataBinding.setValue(context, req.getFileBytes(clientId));
  +            dataBinding.setValue(context, request.getFileBytes(clientId));
               }
            }
            
  @@ -74,7 +85,6 @@
            if (vb != null)
               vb.setValue(context, fileSize);
         }      
  -   }
         
      private ServletRequest unwrapMultipartRequest(ServletRequest request)
      {      
  
  
  



More information about the jboss-cvs-commits mailing list