SHOW:
|
|
- or go back to the newest paste.
| 1 | public void doPost(HttpServletRequest req, HttpServletResponse res) | |
| 2 | throws ServletException, IOException {
| |
| 3 | try {
| |
| 4 | ServletFileUpload upload = new ServletFileUpload(); | |
| 5 | res.setContentType("text/plain");
| |
| 6 | ||
| 7 | FileItemIterator iterator = upload.getItemIterator(req); | |
| 8 | BufferedReader reader = null; | |
| 9 | String themeName = null; | |
| 10 | ||
| 11 | while (iterator.hasNext()) {
| |
| 12 | ||
| 13 | FileItemStream item = iterator.next(); | |
| 14 | InputStream stream = item.openStream(); | |
| 15 | ||
| 16 | if (item.isFormField()) {
| |
| 17 | //regular form field | |
| 18 | //res.getWriter().println(("Form:" + name + " : " + Streams.asString(stream)));
| |
| 19 | ||
| 20 | String fieldName = item.getFieldName(); | |
| 21 | String fieldValue = Streams.asString(stream); | |
| 22 | //System.out.println("fieldName: " + fieldName + "\nfieldValue: " + fieldValue);
| |
| 23 | ||
| 24 | themeName = fieldValue.trim().toLowerCase().replaceAll("\\s", "");
| |
| 25 | //System.out.println("\n themeName: " + themeName);
| |
| 26 | ||
| 27 | }else {
| |
| 28 | //fileform field | |
| 29 | System.out.println("got a file form field");
| |
| 30 | reader = new BufferedReader(new InputStreamReader(stream)); | |
| 31 | //fileExtract(reader); | |
| 32 | } | |
| 33 | ||
| 34 | }//close while loop | |
| 35 | ||
| 36 | //System.out.println("\n themeName: " + themeName + "\nreader: " + reader.toString());
| |
| 37 | fileExtract(reader, themeName); | |
| 38 | ||
| 39 | } catch (Exception ex) {
| |
| 40 | throw new ServletException(ex); | |
| 41 | } | |
| 42 | } | |
| 43 | ||
| 44 | ||
| 45 | public void fileExtract(BufferedReader reader, String themeName) {
| |
| 46 | ||
| 47 | try {
| |
| 48 | ||
| 49 | String line; | |
| 50 | int counter = 0; | |
| 51 | String titlePattern = "#"; | |
| 52 | ||
| 53 | // create a hashmap | |
| 54 | HashMap<String, String> verse = new HashMap<String, String>(); | |
| 55 | ||
| 56 | while ((line = reader.readLine()) != null) {
| |
| 57 | line = line.trim(); | |
| 58 | if (line.equals("")) {
| |
| 59 | continue; | |
| 60 | } | |
| 61 | ||
| 62 | if (findPatter(line, titlePattern)) {
| |
| 63 | counter = 1; | |
| 64 | // remove the hash symbol | |
| 65 | line = line.replaceAll("#", "");
| |
| 66 | // System.out.println(line); | |
| 67 | } | |
| 68 | ||
| 69 | String key = null; | |
| 70 | if (counter == 1) {
| |
| 71 | key = "verseTitle"; | |
| 72 | } else if (counter == 2) {
| |
| 73 | key = "verseRef"; | |
| 74 | } else if (counter == 3) {
| |
| 75 | key = "verseBody"; | |
| 76 | } | |
| 77 | ||
| 78 | verse.put(key, line); | |
| 79 | ||
| 80 | // System.out.println("Counter: " + counter);
| |
| 81 | // System.out.println(line); | |
| 82 | ||
| 83 | counter++; | |
| 84 | if (counter == 4) {
| |
| 85 | // reset the counter | |
| 86 | counter = 1; | |
| 87 | // store the verse details | |
| 88 | saveVerse(verse, entityKind); | |
| 89 | // clear the hashmap | |
| 90 | verse.clear(); | |
| 91 | } | |
| 92 | ||
| 93 | } | |
| 94 | ||
| 95 | } catch (FileNotFoundException e) {
| |
| 96 | // TODO Auto-generated catch block | |
| 97 | e.printStackTrace(); | |
| 98 | } catch (IOException e) {
| |
| 99 | // TODO Auto-generated catch block | |
| 100 | e.printStackTrace(); | |
| 101 | } | |
| 102 | ||
| 103 | - | } |
| 103 | + | } |
| 104 | ||
| 105 | //traceback | |
| 106 | INFO: Dev App Server is now running | |
| 107 | got a file form fieldorg.apache.commons.fileupload.FileItemStream$ItemSkippedException | |
| 108 | ||
| 109 | at org.apache.commons.fileupload.MultipartStream$ItemInputStream.read(MultipartStream.java:894) | |
| 110 | at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283) | |
| 111 | at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325) | |
| 112 | at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177) | |
| 113 | at java.io.InputStreamReader.read(InputStreamReader.java:184) | |
| 114 | at java.io.BufferedReader.fill(BufferedReader.java:154) | |
| 115 | at java.io.BufferedReader.readLine(BufferedReader.java:317) | |
| 116 | at java.io.BufferedReader.readLine(BufferedReader.java:382) | |
| 117 | at com.versefeed.main.SaveVerseServlet.fileExtract(SaveVerseServlet.java:71) | |
| 118 | at com.versefeed.main.SaveVerseServlet.doPost(SaveVerseServlet.java:205) | |
| 119 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) | |
| 120 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) | |
| 121 | at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) | |
| 122 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) | |
| 123 | at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74) | |
| 124 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 125 | at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:123) | |
| 126 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 127 | at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34) | |
| 128 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 129 | at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63) | |
| 130 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 131 | at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) | |
| 132 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 133 | at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125) | |
| 134 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 135 | at com.google.appengine.tools.development.DevAppServerServersFilter.doDirectRequest(DevAppServerServersFilter.java:369) | |
| 136 | at com.google.appengine.tools.development.DevAppServerServersFilter.doDirectServerRequest(DevAppServerServersFilter.java:352) | |
| 137 | at com.google.appengine.tools.development.DevAppServerServersFilter.doFilter(DevAppServerServersFilter.java:115) | |
| 138 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) | |
| 139 | at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) | |
| 140 | at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) | |
| 141 | at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) | |
| 142 | at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) | |
| 143 | at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) | |
| 144 | at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:97) | |
| 145 | at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) | |
| 146 | at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:480) | |
| 147 | at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) | |
| 148 | at org.mortbay.jetty.Server.handle(Server.java:326) | |
| 149 | at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) | |
| 150 | at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938) | |
| 151 | at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755) | |
| 152 | at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) | |
| 153 | at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) | |
| 154 | at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) | |
| 155 | at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) |