Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

javax.websocket.DeploymentException: org.glassfish.tyrus.container.grizzly.client.GrizzlyClientContainer

I am trying to create a websocket using the tyrus project. I am getting this below error:

java.lang.RuntimeException: javax.websocket.DeploymentException: org.glassfish.tyrus.container.grizzly.client.GrizzlyClientContainer

    at org.glassfish.tyrus.client.ClientManager.<init>(ClientManager.java:272) ~[bundlefile:na]
    at org.glassfish.tyrus.client.ClientManager.createClient(ClientManager.java:240) ~[bundlefile:na]
    at org.glassfish.tyrus.client.ClientManager.createClient(ClientManager.java:219) ~[bundlefile:na]

My pom dependency looks like this:

<dependency>
    <groupId>org.glassfish.tyrus</groupId>
    <artifactId>tyrus-client</artifactId>
    <version>1.12</version>
</dependency>
<dependency>
    <groupId>org.glassfish.tyrus</groupId>
    <artifactId>tyrus-core</artifactId>
    <version>1.12</version>
</dependency>
<dependency>
    <groupId>org.glassfish.tyrus</groupId>
    <artifactId>tyrus-spi</artifactId>
    <version>1.12</version>
</dependency>
<dependency>
    <groupId>javax.websocket</groupId>
    <artifactId>javax.websocket-api</artifactId>
    <version>1.1</version>
</dependency>
<dependency>
    <groupId>javax.websocket</groupId>
    <artifactId>javax.websocket-client-api</artifactId>
    <version>1.1</version>
</dependency>

Very simple java code :

    logger.info("Creating web socket for url {}", getWebSocketUrl(currentApic.IPAddress, port));
    echoUri = new URI(getWebSocketUrl(currentApic.IPAddress, port));
    client = ClientManager.createClient();
    client.connectToServer(APICWebClient.class, echoUri);

if i try to add the container dependency

<dependency>
    <groupId>org.glassfish.tyrus</groupId>
    <artifactId>tyrus-container-grizzly-server</artifactId>
    <version>1.12</version>
</dependency>

My mvn clean install fails saying :

 Failed to read artifact descriptor for org.glassfish.tyrus:tyrus-container-grizzly-server:jar:1.4: Could not transfer artifact org.glassfish.tyrus:tyrus-container-grizzly-server:pom:1.4 from/to central (http://repo1.maven.org/maven2): repo1.maven.org: unknown error: Unknown host repo1.maven.org: unknown error -> [Help 1]

Edited: The above issue is resolved after mvn clean. server container and client container packages are added. but still i am getting the same runtime error java.lang.RuntimeException: javax.websocket.DeploymentException: org.glassfish.tyrus.container.grizzly.client.GrizzlyClientContainer

I am using the in OSGi environment. How do i solve this. need some help on this.

like image 398
Prakash Avatar asked Jun 15 '16 18:06

Prakash


1 Answers

The container org.glassfish.tyrus.container.grizzly.client.GrizzlyClientContainer is missing on classpath. Add the maven module tyrus-container-grizzly-client.

And yes, the exception thrown by tyrus might be more accurate.

like image 79
ondrej kosatka Avatar answered Nov 05 '22 22:11

ondrej kosatka