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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1352 - (show annotations) (download)
Wed Apr 20 18:53:04 2011 UTC (13 years ago) by torben
File size: 2516 byte(s)
Use GenericJavaUtils
1 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 import dk.thoerup.genericjavautils.HttpUtil;
25
26 /**
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
59 values = HttpUtil.decodeParams( params.getStringValue() );
60 }
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 fo.close();
85 }
86
87 }

  ViewVC Help
Powered by ViewVC 1.1.20