Jak korzystać z TLS w Play! Framework WebSockets („wss: //”)

Nie mogę użyćwss:// w mojej prostej aplikacji WebSocket stworzonej za pomocą Play! Framework 2.2. Powtarza komunikat. Punkt końcowy jest taki

def indexWS2 = WebSocket.using[String] {
  request => {
    println("got connection to indexWS2")

    var channel: Option[Concurrent.Channel[String]] = None
    val outEnumerator: Enumerator[String] = Concurrent.unicast(c => channel = Some(c))

    // Log events to the console
    val myIteratee: Iteratee[String, Unit] = Iteratee.foreach[String] {gotString => {
      println("received: " + gotString)

      // send string back
      channel.foreach(_.push("echoing back \"" + gotString + "\""))
    }}

    (myIteratee, outEnumerator)
  }
}

a trasa jest opisana jako

GET     /ws2                        controllers.Application.indexWS2

Tworzę połączenie z takiego klienta JS

myWebSocket = new WebSocket("ws://localhost:9000/ws2");

i wszystko działa dobrze. Ale jeśli się zmienięws:// wwss:// aby użyć TLS, kończy się niepowodzeniem i otrzymuję następujący wyjątek Netty:

[error] p.nettyException - Exception caught in Netty
java.lang.IllegalArgumentException: empty text

Jak mogę to zrobić? Dzięki.

questionAnswers(4)

yourAnswerToTheQuestion