users@tyrus.java.net

Re: Few problems/doubts about a first websocket client app in android using tyrus

From: Pavel Bucek <pavel.bucek_at_oracle.com>
Date: Thu, 12 Jun 2014 12:15:06 +0200

Hello Salatiel,


On 12/06/14 12:06, Salatiel Filho wrote:
> I am developing my first app in android using tyrus websockets client
> implementation.
> Overall the app is working, MOST of times i can connect just fine to
> my WSserver and get the expected reply, but i am still experiencing a
> few problems.
>
> Every time i try to make a connection i get :
>
> 06-08 15:51:04.454: W/dalvikvm(8483): Link of class
> 'Lorg/glassfish/tyrus/core/OsgiRegistry;' failed
> 06-08 15:51:04.454: W/dalvikvm(8483): VFY: unable to resolve static
> method 15939: Lorg/glassfish/tyrus/core/OsgiRegistry;.getInstance
> ()Lorg/glassfish/tyrus/core/OsgiRegistry;
> 06-08 15:51:04.454: W/dalvikvm(8483): Link of class
> 'Lorg/glassfish/tyrus/core/OsgiRegistry;' failed
> 06-08 15:51:04.454: W/dalvikvm(8483): VFY: unable to find class
> referenced in signature (Lorg/glassfish/tyrus/core/OsgiRegistry;)
>
>
> This appears to be just a warning, but should i get worried about ?

no, not at all. The code is invoked from static initializer of
ServiceFinder class and it "does nothing" when it fails.

>
> The other problem i am facing is that randomly i just can't connect
> and i get this message in logcat:
>
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): GRIZZLY0013: Exception
> during FilterChain execution
> 06-08 15:46:40.607: W/DefaultFilterChain(7132):
> java.lang.IllegalStateException: java.lang.NumberFormatException
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpClientFilter.onHttpHeaderError(HttpClientFilter.java:206)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpCodecFilter.handleRead(HttpCodecFilter.java:492)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpClientFilter.handleRead(HttpClientFilter.java:174)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> java.lang.Thread.run(Thread.java:841)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): Caused by:
> java.lang.NumberFormatException
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.util.Ascii.parseInt(Ascii.java:211)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpClientFilter.decodeInitialLineFromBytes(HttpClientFilter.java:340)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpCodecFilter.decodeHttpPacketFromBytes(HttpCodecFilter.java:606)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpCodecFilter.decodeHttpPacket(HttpCodecFilter.java:587)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): at
> org.glassfish.grizzly.http.HttpCodecFilter.handleRead(HttpCodecFilter.java:458)
> 06-08 15:46:40.607: W/DefaultFilterChain(7132): ... 15 more

Seems like some issue from the past - which version of Tyrus do you use?
Can you try to upgrade to latest release - 1.6?

And if you want to help, you can test JDK 7 AIO client implementation on
Android (it has significantly smaller footprint) .. (please use
1.7-SNAPSHOT if you will do that).

Thanks and regards,
Pavel

>
>
> Have anyone else faced this problems ? Any ideas how can i fix them ?
>
> Thanks !
>
>
>
>
>
>
> []'s
> Salatiel
>
>