0
我是新來的傑裏,並試圖在Jetty9上實現WebSocket客戶端。Jetty9 WebSocket客戶端 - SessionFactory.createSession導致java.lang.NullPointerException
我在Jetty8上看到了一個例子。
org.eclipse.jetty.websocket類WebSocketClient
創建WebSocketClient的新實例是:
WebSocketClientFactory factory = new WebSocketClientFactory();
factory.start();
WebSocketClient client = factory.newWebSocketClient();
// Configure the client
WebSocket.Connection connection = client.open(new
URI("ws://127.0.0.1:8080/"), new WebSocket.OnTextMessage()
{
public void onOpen(Connection connection)
{
// open notification
}
public void onClose(int closeCode, String message)
{
// close notification
}
public void onMessage(String data)
{
// handle incoming message
}
}).get(5, TimeUnit.SECONDS);
connection.sendMessage("Hello World");
但是,我從來沒有見過一個文檔Jetty9爲這個。
到目前爲止,指
org.eclipse.jetty.websocket.common Interface SessionFactory
//----------------------------------------------
WebSocketSession createSession(URI requestURI,
EventDriver websocket,
LogicalConnection connection)
//----------------------------------------------
我已經試過
private WebSocketSessionFactory factory = new WebSocketSessionFactory();
try
{
WebSocketSession session = factory.createSession(uri,
eventDriver, connection);
RemoteEndpoint ep = session.getRemote();
}
catch (Exception ex)
{
System.out.println("=ERROR= " + ex);
//=ERROR= java.lang.NullPointerException
}
private EventDriver eventDriver = new EventDriver()
{
@Override
public WebSocketPolicy getPolicy()
{
return null;
}
//......................................
@Override
public void incomingFrame(Frame frame)
{
}
};
private LogicalConnection connection = new LogicalConnection()
{
@Override
public void close()
{
}
//...............................
@Override
public void resume()
{
}
};
,但我已經遇到顯示java.lang.NullPointerException
我們如何實現Jetty9 WebSocket客戶端?
感謝您的諮詢。