2014-09-26 6 views
0
set 26, 2014 5:13:00 PM org.glassfish.tyrus.core.AnnotatedEndpoint callMethod 
INFO: Exception thrown from onError method public void main.scala.SocksEndpoint2.onError(javax.websocket.Session,java.lang.Throwable). 
javax.websocket.DeploymentException: Component provider threw exception when providing instance of class main.scala.SocksEndpoint2. 

Что может быть причиной этого? Я использую конечную точку почти полностью пуст:Развертывание с использованием WebSockets, TyrusServer

@ServerEndpoint("/websocks") 
class SocksEndpoint2(system: ActorSystem) { 

    @OnMessage 
    def onMessage(mess: String, session: Session) { 

    } 
    @OnClose 
    def onClose(session: Session) { 

    } 

    @OnError 
    def onError(session: Session , t: Throwable) { 

    } 
} 

и отправки через Javascript

var exampleSocket = new WebSocket("ws://localhost:8025/websocks") 
exampleSocket.send("{}") 

и возвращает ошибку выше.

+2

у вас явно есть проблемы с созданием класса SocksEndpoint2. Он должен быть общедоступным и должен иметь конструктор с нулевыми параметрами, чтобы иметь возможность делать что-то вроде «Class.forName (...). NewInstance()». –

+2

Он также может обработать экземпляр себя с помощью 'ServerEndpointConfig.Configurator' и его' getInstance() 'call –

+0

@PavelBucek, если вы добавите свой комментарий в качестве ответа. Я помечаю его правильно :) – LowFieldTheory

ответ

0

Класс конечной точки должен быть общедоступным;

у вас явно есть проблемы с созданием класса SocksEndpoint2. Он должен быть общедоступным и должен иметь конструктор с нулевыми параметрами - чтобы сделать что-то вроде Class.forName(...).newInstance().