On 11/05/2013 04:48 PM, Arun Gupta wrote:
Trying to run a simple WebSocket test from:
https://github.com/arun-gupta/javaee7-samples/tree/master/websocket/binary
But this is throwing the following exception:
Running org.javaee7.websocket.binary.test.WebsocketByteBufferEndpointTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.055
sec <<< FAILURE!
testEndPointByteBuffer(org.javaee7.websocket.binary.test.WebsocketByteBufferEndpointTest)
Time elapsed: 0.023 sec <<< ERROR!
java.lang.RuntimeException: Could not find an implementation class.
at
javax.websocket.ContainerProvider.getWebSocketContainer(ContainerProvider.java:73)
at
org.javaee7.websocket.binary.test.WebsocketByteBufferEndpointTest.testEndPointByteBuffer(WebsocketByteBufferEndpointTest.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
What is missing ?
The service loader must be able to find the service for
javax.websocket.ContainerProvider (and a few others like that, WS has 3
services). Usually it is in a JAR in the classpath (most likely the
implementation JAR) in META-INF/services.
Rémy