1.1 --- a/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java Fri Apr 22 08:53:13 2016 +0200
1.2 +++ b/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java Fri Apr 22 08:58:08 2016 +0200
1.3 @@ -23,10 +23,15 @@
1.4 */
1.5 package org.apidesign.demo.chat.server;
1.6
1.7 +import java.io.ByteArrayInputStream;
1.8 +import java.io.IOException;
1.9 import java.util.ArrayList;
1.10 import java.util.List;
1.11 import java.util.logging.Logger;
1.12 +import net.java.html.BrwsrCtx;
1.13 +import net.java.html.json.Models;
1.14 import org.apidesign.demo.chat.shared.Message;
1.15 +import org.apidesign.demo.chat.shared.Query;
1.16 import org.glassfish.grizzly.websockets.WebSocket;
1.17 import org.glassfish.grizzly.websockets.WebSocketApplication;
1.18
1.19 @@ -93,6 +98,12 @@
1.20
1.21 @Override
1.22 public void onMessage(WebSocket socket, String text) {
1.23 - super.onMessage(socket, text);
1.24 + try {
1.25 + ByteArrayInputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));
1.26 + Query q = Models.parse(BrwsrCtx.findDefault(ChatServerResource.class), Query.class, is);
1.27 + super.onMessage(socket, text);
1.28 + } catch (IOException ex) {
1.29 + throw new IllegalStateException(ex);
1.30 + }
1.31 }
1.32 }