/[projects]/android/PicturePosterService/src/dk/thoerup/pictureposterservice/PostServlet.java
ViewVC logotype

Annotation of /android/PicturePosterService/src/dk/thoerup/pictureposterservice/PostServlet.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1352 - (hide annotations) (download)
Wed Apr 20 18:53:04 2011 UTC (13 years, 1 month ago) by torben
File size: 2516 byte(s)
Use GenericJavaUtils
1 torben 602 package dk.thoerup.pictureposterservice;
2    
3     import java.io.ByteArrayOutputStream;
4     import java.io.FileOutputStream;
5     import java.io.IOException;
6     import java.io.InputStream;
7     import java.io.UnsupportedEncodingException;
8     import java.net.URLDecoder;
9     import java.util.Date;
10     import java.util.Map;
11     import java.util.TreeMap;
12     import java.util.logging.Logger;
13    
14     import javax.servlet.ServletException;
15     import javax.servlet.http.HttpServlet;
16     import javax.servlet.http.HttpServletRequest;
17     import javax.servlet.http.HttpServletResponse;
18    
19     import com.oreilly.servlet.multipart.FilePart;
20     import com.oreilly.servlet.multipart.MultipartParser;
21     import com.oreilly.servlet.multipart.ParamPart;
22     import com.oreilly.servlet.multipart.Part;
23    
24 torben 1352 import dk.thoerup.genericjavautils.HttpUtil;
25    
26 torben 602 /**
27     * Servlet implementation class PostServlet
28     */
29     public class PostServlet extends HttpServlet {
30     private static final long serialVersionUID = 1L;
31     Logger logger = Logger.getLogger(PostServlet.class.getName());
32    
33    
34     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
35     MultipartParser parser = new MultipartParser(request,1000000);
36    
37     Map<String,String> values = null;
38     byte file[] = null;
39    
40     Part part;
41     while ( (part= parser.readNextPart()) != null) {
42     if (part.getName().equals("file") ) {
43     FilePart fpart = (FilePart) part;
44     ByteArrayOutputStream baos = new ByteArrayOutputStream(128000);
45     InputStream is = fpart.getInputStream();
46    
47     byte data[] = new byte[8192];
48     int len;
49     while ( (len = is.read(data)) !=-1 ) {
50     baos.write(data, 0, len);
51     }
52     is.close();
53     file = baos.toByteArray();
54     baos.close();
55    
56     } else {
57     ParamPart params = (ParamPart) part;
58 torben 1352
59     values = HttpUtil.decodeParams( params.getStringValue() );
60 torben 602 }
61     }
62    
63     Posting post = new Posting();
64     post.setTitle( values.get("title") );
65     post.setNote( values.get("note") );
66     post.setAuthor(values.get("author"));
67     if ( !values.get("latitude").equals("") ) {
68     post.setLatitude( Double.parseDouble(values.get("latitude")) );
69     }
70     if ( !values.get("longitude").equals("") ) {
71     post.setLongitude( Double.parseDouble(values.get("longitude")) );
72     }
73    
74     post.setPostdate( new Date() ); // now()
75    
76    
77     PostingDAO.savePosting(post);
78     logger.info("Saved with postID=" +post.getId());
79    
80     String fileName = "/home/app/data/PicturePoster/" + post.getId() + ".jpeg";
81    
82     FileOutputStream fo = new FileOutputStream(fileName);
83     fo.write(file);
84 torben 603 fo.close();
85 torben 602 }
86    
87     }

  ViewVC Help
Powered by ViewVC 1.1.20