# Insert Methode per Servlet



## Dimadon (18. Jun 2017)

Hallo Zusammen, 

ich habe ein Servlet das Nachrichten über PubSub empfängt. Ich möchte nun diese Messages in einer SQL Tabelle speichern. Der Zugriff (Datenbankconnection) funktioniert, da ich den Traffic auf dem Server sehen kann und und der Zugriff und der Insert mit einer einfachen Klassen auch klappt aber leider nicht über das Servlet.

Kann mir eventuell hier einer weiterhelfen? Ich verzweifel schier....

Mein Servlet sieht wie folgt aus:


```
@SuppressWarnings("serial")
public class ReceiveMessageServlet extends HttpServlet {

    @Override
    public final void doPost(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
        // Validating unique subscription token before processing the message
        String subscriptionToken = System.getProperty(Constants.BASE_PACKAGE + ".subscriptionUniqueToken");
        if (!subscriptionToken.equals(req.getParameter("token"))) {
            resp.setStatus(HttpServletResponse.SC_BAD_REQUEST);
            resp.getWriter().close();
            return;

        }

        ServletInputStream inputStream = req.getInputStream();

        // Parse the JSON message to the POJO model class
        JsonParser parser = JacksonFactory.getDefaultInstance().createJsonParser(inputStream);
        parser.skipToKey("message");
        PubsubMessage message = parser.parseAndClose(PubsubMessage.class);

        // Store the message in the datastore
        Entity messageToStore = new Entity("PubsubMessage");
        messageToStore.setProperty("message", new String(message.decodeData(), "UTF-8"));
        messageToStore.setProperty("receipt-time", System.currentTimeMillis());
        DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
        datastore.put(messageToStore);

        // Invalidate the cache
        MemcacheService memcacheService = MemcacheServiceFactory.getMemcacheService();
        memcacheService.delete(Constants.MESSAGE_CACHE_KEY);

        // Acknowledge the message by returning a success code
        resp.setStatus(HttpServletResponse.SC_OK);
        resp.getWriter().close();

        Connection con = DBConnection.connection();
        try {
            Statement stmt = con.createStatement();
            stmt.executeUpdate("INSERT INTO message(input)" + "VALUES  ('" + messageToStore + "')");

        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}
```


----------

