0

私のjspファイルには

  <script type="text/javascript" src="/resources/scripts/jWebSocket.js"></script>

  <script type="text/javascript">
  //jws.browserSupportsWebSockets checks if web sockets are available
  //either natively, by the FlashBridge or by the ChromeFrame.
  if( jws.browserSupportsWebSockets() ) {
  jWebSocketClient = new jws.jWebSocketJSONClient();
  // Optionally enable GUI controls here
  } else {
  // Optionally disable GUI controls here
  var lMsg = jws.MSG_WS_NOT_SUPPORTED;
  alert(lMsg);
 }

  var lURL = jws.getDefaultSSLServerURL() + "/;timeout=360000";
 alert(lURL);

     /* var lRes = jWebSocketClient.broadcastText(
    "",   // broadcast to all clients (not limited to a certain pool)
    lMsg  // broadcast this message
  );

  alert(lRes.code);
   */

  function broadcast() {

        var lMsg = "This is test message";
        var lTarget = "*";
        if( lMsg.length > 0 ) {
            //log( USR, OUT, lMsg );
            var lRes;
            if( !lTarget || lTarget == "*") {
                alert(lMsg);
                lRes = jWebSocketClient.broadcastText(
                    "",         // broadcast to all clients (not limited to a certain pool)
                    lMsg        // broadcast this message
                );
            } else {
                lRes = jWebSocketClient.sendText(
                    lTarget,    // broadcast to all clients (not limited to a certain pool)
                    lMsg        // broadcast this message
                );
            }
            // log error only, on success don't confuse the user
            if( lRes.code != 0 ) {
                alert(lRes.msg);
                //log( SYS, OUT, "broadcast: " + lRes.msg );
            }
            // eMessage.value = "";
        }
        //doFocus( eMessage );
    }     

   </script>

if(jws.browserSupportsWebSockets())のelse部分には移動しません。これは、ブラウザがWebSocketをサポートしていることを意味します。

最後にif(lRes.code!= 0)に移動し、「接続されていません」と警告します

私は何かが足りないのですか。助けてください

ターミナルウィンドウにこのメッセージが表示されます

 TCPEngine: SSL engine 'tcp0' started' at port 9797 with default timeout infinite.
 2012-08-15 09:52:45,979 DEBUG - JWebSocketFactory: Starting servers...
 2012-08-15 09:52:45,980 INFO  - TokenServer: Token server 'ts0' started.
 2012-08-15 09:52:45,980 INFO  - JWebSocketFactory: jWebSocket server startup complete

サーバーが実行されていることを意味します。

以下のコードからlURLにアラートを送信すると

 var lURL = jws.getDefaultSSLServerURL() + "/;timeout=360000"; in my jsp file.

印刷します

    wss://localhost:9797/jWebSocket/jWebSocket/;timeout=360000
4

1 に答える 1

0

はい。ログオン呼び出しがありません。次の行を追加します(現在の場所の代わりにalert(lUrl)):

jWebSocketClient.logon( lURL, "guest", "guest", {

   OnOpen: function( aEvent ){
   // something to do when connection is established
   }

   OnMessage: function( aEvent, aToken ){
   // something to do when a message is recieved
   }
}

1つ目"guest"はユーザー名で、2つ目はパスワードです。サーバーのjwebsocket.confファイルをまだ変更していない場合は、これらの資格情報を持つユーザーがいるはずです。

これが役立つかどうかを知らせてください

于 2012-08-16T11:40:26.523 に答える