Of course i didn't.. Thanks a lot, now my app works! I'm so stupid,
how could I forgot? :-)

On 11 kvě, 19:04, gwtGrady <greggradw...@gmail.com> wrote:
> I assume you are deploying using a .war file. If so, did you add the
> necessary servlet mapping to the web.xml file?
>
> On May 11, 10:41 am, tom_gwt <tomas.h...@gmail.com> wrote:
>
> > I get 404 error. Simply the file is not written in HDD. Like I said,
> > when i run the app in hosted mode, this works.
>
> > Here is the servlet code:
>
> > package com.myapplication.server;
>
> > import java.io.BufferedInputStream;
> > import java.io.BufferedOutputStream;
> > import java.io.File;
> > import java.io.FileNotFoundException;
> > import java.io.FileOutputStream;
> > import java.io.IOException;
> > import java.util.Iterator;
> > import java.util.List;
>
> > import javax.servlet.ServletException;
> > import javax.servlet.http.HttpServlet;
> > import javax.servlet.http.HttpServletRequest;
> > import javax.servlet.http.HttpServletResponse;
>
> > import org.apache.commons.fileupload.FileItem;
> > import org.apache.commons.fileupload.FileItemFactory;
> > import org.apache.commons.fileupload.disk.DiskFileItemFactory;
> > import org.apache.commons.fileupload.servlet.ServletFileUpload;
>
> > import com.myapplication.client.MyApplication;
>
> > public class FileUploadServlet extends HttpServlet {
>
> >     private static final long MAX_SIZE = 1024 * 1024 * 1024 * 4;
> >     private static final String CONTENT_TYPE_UNACCEPTABLE = "{error:
> > 'File upload failed. "
> >             + " EXE file can't be uploaded'}" + MAX_SIZE + " bytes or
> > less'}";
>
> >     private static final String KEY_WORD = "FILENAME";
> >     private static final String DATA = "FILEDATA";
>
> >     @Override
> >     public void doPost(HttpServletRequest request, HttpServletResponse
> > response)
> >             throws ServletException, IOException {
> >         String json = null;
>
> >         FileItemFactory factory = new DiskFileItemFactory();
> >         ServletFileUpload upload = new ServletFileUpload(factory);
> >         List items = null;
>
> >         try {
> >             items = upload.parseRequest(request);
> >         } catch (Exception e) {
> >             e.printStackTrace();
> >         }
>
> >         Iterator it = items.iterator();
> >         String tmp = "";
> >         FileItem data = null;
> >         while (it.hasNext()) {
> >             FileItem item = (FileItem) it.next();
> >             if (item.getFieldName().equalsIgnoreCase(KEY_WORD)) {
> >                 tmp = new String(item.get());
> >             } else if (item.getFieldName().equalsIgnoreCase(DATA)) {
> >                 data = item;
> >             }
>
> >         }
> >         json = processFile(data, tmp);
> >         response.setContentType("text/plain");
> >         response.getWriter().write(json);
> >     }
>
> >     /**
> >      *
> >      * @param item
> >      * @return
> >      */
> >     private String processFile(FileItem item, String fileName) {
> >         if (!isContentTypeAcceptable(item)) {
> >             return CONTENT_TYPE_UNACCEPTABLE;
> >         }
> >         try {
> >             File fl = new File("/tmp/" + fileName + MyServiceImpl.getLogin
> > ());
> >             fl.deleteOnExit();
> >             fl.createNewFile();
> >             BufferedInputStream b = new BufferedInputStream(item
> >                     .getInputStream());
> >             int i = -1;
> >             BufferedOutputStream out = new BufferedOutputStream(
> >                     new FileOutputStream(fl));
> >             while ((i = b.read()) != -1) {
> >                 out.write((char) i);
> >             }
> >             out.close();
> >             b.close();
> >         } catch (FileNotFoundException e) {
> >             // TODO Auto-generated catch block
> >             e.printStackTrace();
> >         } catch (IOException e) {
> >             // TODO Auto-generated catch block
> >             e.printStackTrace();
> >         }
>
> >         return "good";
> >     }
>
> >     /**
> >      *
> >      * @param item
> >      * @return
> >      */
> >     private boolean isSizeAcceptable(FileItem item) {
> >         return item.getSize() <= MAX_SIZE;
> >     }
>
> >     /**
> >      *
> >      * @param item
> >      * @return
> >      */
> >     private boolean isContentTypeAcceptable(FileItem item) {
> >         return true;// !item.getContentType().equalsIgnoreCase
> > (ACCEPTABLE_CONTENT_TYPE);
> >     }
>
> > }
>
> > On 11 kvě, 17:03, gwtGrady <greggradw...@gmail.com> wrote:
>
> > > Whe you say "uploading file does not work", what exactly do you mean?
> > > Any error message?
>
> > > On May 10, 8:08 am, tom_gwt <tomas.h...@gmail.com> wrote:
>
> > > > Hi everyone,
> > > > i'm using GWT 1.5.3 and gwtswfext (handling file upload on client
> > > > side, javascript/flash library 
> > > > -http://code.google.com/p/gwtswfext/wiki/GWTSWFUpload).
> > > > When I run application in hosted mode, uploading file works fine -
> > > > file is saved in e.g. /tmp/ So I compile the application and run it in
> > > > tomcat server and uploading file does not work. I tried add file
> > > > permission in tomcat configuration file (04webapps.policy) but file
> > > > upload still doesnt work. The problem is obviously on the server side,
> > > > file upload works in hosted mode and doesnt work when the app is
> > > > running at tomcat server.
>
> > > > 04webapps.policy:
>
> > > > grant codeBase "file:${catalina.home}/webapps/-"
> > > > {
> > > >     permission java.io.FilePermission "file:/tmp/-", "read, write,
> > > > delete";
>
> > > > };
>
> > > > Please help me..- Hide quoted text -
>
> > - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to Google-Web-Toolkit@googlegroups.com
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to