1.1 --- a/chat/server/pom.xml Fri Apr 22 08:53:13 2016 +0200
1.2 +++ b/chat/server/pom.xml Fri Apr 22 08:58:08 2016 +0200
1.3 @@ -53,12 +53,6 @@
1.4
1.5 <!-- test only deps -->
1.6 <dependency>
1.7 - <groupId>org.netbeans.html</groupId>
1.8 - <artifactId>ko4j</artifactId>
1.9 - <version>${net.java.html.version}</version>
1.10 - <type>jar</type>
1.11 - </dependency>
1.12 - <dependency>
1.13 <groupId>org.glassfish.grizzly</groupId>
1.14 <artifactId>grizzly-http-server-core</artifactId>
1.15 <version>${grizzly.version}</version>
1.16 @@ -90,6 +84,11 @@
1.17 <artifactId>chat-shared</artifactId>
1.18 <version>${project.version}</version>
1.19 </dependency>
1.20 + <dependency>
1.21 + <groupId>org.netbeans.html</groupId>
1.22 + <artifactId>ko-ws-tyrus</artifactId>
1.23 + <version>${net.java.html.version}</version>
1.24 + </dependency>
1.25 </dependencies>
1.26 <build>
1.27 <plugins>
2.1 --- a/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java Fri Apr 22 08:53:13 2016 +0200
2.2 +++ b/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java Fri Apr 22 08:58:08 2016 +0200
2.3 @@ -23,10 +23,15 @@
2.4 */
2.5 package org.apidesign.demo.chat.server;
2.6
2.7 +import java.io.ByteArrayInputStream;
2.8 +import java.io.IOException;
2.9 import java.util.ArrayList;
2.10 import java.util.List;
2.11 import java.util.logging.Logger;
2.12 +import net.java.html.BrwsrCtx;
2.13 +import net.java.html.json.Models;
2.14 import org.apidesign.demo.chat.shared.Message;
2.15 +import org.apidesign.demo.chat.shared.Query;
2.16 import org.glassfish.grizzly.websockets.WebSocket;
2.17 import org.glassfish.grizzly.websockets.WebSocketApplication;
2.18
2.19 @@ -93,6 +98,12 @@
2.20
2.21 @Override
2.22 public void onMessage(WebSocket socket, String text) {
2.23 - super.onMessage(socket, text);
2.24 + try {
2.25 + ByteArrayInputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));
2.26 + Query q = Models.parse(BrwsrCtx.findDefault(ChatServerResource.class), Query.class, is);
2.27 + super.onMessage(socket, text);
2.28 + } catch (IOException ex) {
2.29 + throw new IllegalStateException(ex);
2.30 + }
2.31 }
2.32 }