Gravity helloworld doesn't work

130 views
Skip to first unread message

Maxim Kopeyka

unread,
Nov 14, 2013, 9:59:12 AM11/14/13
to gran...@googlegroups.com
I have tried to use 'graniteds_chat' example but it doesn't work.

Flex client

I see this information in the Tomcat 7 logs:

access log
172.26.27.94 - - [14/Nov/2013:15:55:52 +0200] "GET / HTTP/1.1" 304 -
172.26.27.94 - - [14/Nov/2013:15:55:52 +0200] "GET /AC_OETags.js HTTP/1.1" 304 -
172.26.27.94 - - [14/Nov/2013:15:55:52 +0200] "GET /Chat.swf HTTP/1.1" 304 -
127.0.0.1 - - [14/Nov/2013:15:55:54 +0200] "POST /gravity/amf HTTP/1.1" 500 2241

localhost.log
Nov 14, 2013 3:55:54 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [GravityServlet] in context with path [] threw exception [java.lang.NullPointerException] with root cause
java.lang.NullPointerException
at org.granite.gravity.GravityServletUtil.deserialize(GravityServletUtil.java:81)
at org.granite.gravity.GravityServletUtil.deserialize(GravityServletUtil.java:71)
at org.granite.gravity.AbstractGravityServlet.deserialize(AbstractGravityServlet.java:86)
at org.granite.gravity.servlet3.GravityAsyncServlet.deserialize(GravityAsyncServlet.java:176)
at org.granite.gravity.servlet3.GravityAsyncServlet.doPost(GravityAsyncServlet.java:80)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2430)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2419)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)

Java client

I've tried the same with java client but it generates this error and I don't see any requests in the access.log

Nov 14, 2013 3:56:49 PM org.granite.logging.JdkLogger info
INFO: Starting Apache HttpAsyncClient transport...
Nov 14, 2013 3:56:49 PM org.granite.logging.JdkLogger info
INFO: Apache HttpAsyncClient transport started.
Nov 14, 2013 3:56:49 PM org.granite.logging.JdkLogger info
INFO: Starting channel "my-gravityamf"...
Nov 14, 2013 3:56:49 PM org.granite.logging.JdkLogger info
INFO: Channel "my-gravityamf" started.
Nov 14, 2013 3:56:49 PM org.granite.logging.JdkLogger error
SEVERE: Engine failed
org.granite.client.messaging.transport.TransportIOException: Request failed
at org.granite.client.messaging.transport.apache.ApacheAsyncTransport.send(ApacheAsyncTransport.java:212)
at org.granite.client.messaging.channel.AbstractHTTPChannel.sendToken(AbstractHTTPChannel.java:327)
at org.granite.client.messaging.channel.AbstractHTTPChannel.sendBlockingToken(AbstractHTTPChannel.java:250)
at org.granite.client.messaging.channel.AbstractHTTPChannel.run(AbstractHTTPChannel.java:198)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
at org.granite.messaging.amf.io.AMF3Serializer.<init>(AMF3Serializer.java:80)
at org.granite.client.messaging.codec.AMF3MessagingCodec.encode(AMF3MessagingCodec.java:65)
at org.granite.client.messaging.codec.AMF3MessagingCodec.encode(AMF3MessagingCodec.java:43)
at org.granite.client.messaging.transport.DefaultTransportMessage.encode(DefaultTransportMessage.java:77)
at org.granite.client.messaging.transport.apache.ApacheAsyncTransport.send(ApacheAsyncTransport.java:140)
... 4 more
Exception in thread "main" java.util.concurrent.TimeoutException: org.granite.client.messaging.events.TimeoutEvent {timestamp=1384437409275 + timeToLive=60000 > time=1384437469278}
at org.granite.client.messaging.ResponseListenerDispatcher.getResponseMessage(ResponseListenerDispatcher.java:97)
at org.granite.client.messaging.channel.AsyncToken.get(AsyncToken.java:117)
at org.test.client.HelloWorldClient.main(HelloWorldClient.java:50)
Nov 14, 2013 3:57:49 PM org.granite.logging.JdkLogger error
SEVERE: Subscription failed org.granite.client.messaging.Consumer {subscriptionId=null, destination=gravity, topic=discussion, selector=null}: org.granite.client.messaging.events.TimeoutEvent {timestamp=1384437409275 + timeToLive=60000 > time=1384437469278}
onSubscribeIssue

gravity-flex-client.zip
gravity-java-client.zip
gravity-server.zip

Maxim Kopeyka

unread,
Nov 20, 2013, 12:05:07 PM11/20/13
to gran...@googlegroups.com
This question is still open, does somebody have an example (java or flex) how to work with latest gravity?

This java code doesn't work:
HTTPTransport transport = new ApacheAsyncTransport();
AMFMessagingChannel channel = new AMFMessagingChannel(transport, new SimpleConfiguration(), "gravity", new URI("http://localhost:8080/gravity/amf3"));
transport
.start();

Consumer consumer = new Consumer(channel, "gravityService", "discussion");
consumer
.addMessageListener(new TopicMessageListener() {
   
@Override
   
public void onMessage(TopicMessageEvent event) {
       
System.out.println(event.getData());
   
}
});

Producer producer = new Producer(channel, "gravityService", "discussion");
producer
.publish("Hello world").get();


Franck Wolff

unread,
Nov 25, 2013, 8:58:15 AM11/25/13
to gran...@googlegroups.com
Your code should now begin with:

AMFChannelFactory factory = new AMFChannelFactory();
factory.start();
MessagingChannel channel = factory.newMessagingChannel("gravity", http://localhost:8080/gravity/amf3);

Consumer consumer = new Consumer(channel, ...);
etc.

F.


2013/11/20 Maxim Kopeyka <m...@xtendx.com>

--
 
---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Granite Data Services Forum.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse graniteds+...@googlegroups.com.
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .


vijay chaudhary

unread,
Jul 29, 2014, 10:16:26 AM7/29/14
to gran...@googlegroups.com
Did this issue got resolved, could you post the java-client pack with added dependencies.
Reply all
Reply to author
Forward
0 new messages