2015-10-23 9 views
5

Daha büyük bir uygulamanın parçası olarak bir Play Framework web sunucusu eklemeye çalışıyorum, ancak uygulamanın birincil amacı bir web sunucusu DEĞİLDİR. Zaten seri ve TCP de dahil olmak üzere çeşitli bağlantıları kabul ediyor, ancak WebSockets'ı eklemem gerekiyor ve Play Framework'ün WebSocket arayüzü tercih ediliyor. (Undertow'u denedik ve kendi aralarında çok fazla sorunla karşılaştık)Play Framework'ü bileşen olarak kullan

Sadece bir uygulama oluşturmaya ve başlatmaya kadar kazandım, ancak bağlanamadım. Aşağıdaki kodu çalıştırdıktan sonra 8000 numaralı bağlantı noktasında hiçbir şey dinlemiyor. Ne yapmam gerekiyor?

dosyasına koyarak:

play.server.http.port=8000 
http.port=8000 

webserver.scala:

def startWebServer = { 
    val environment = new Environment(
    new File("/path/to/app"), 
    classOf[Dummy].getClassLoader, 
    play.api.Mode.Dev 
) 
    val context = play.api.ApplicationLoader.createContext(environment) 
    val application = ApplicationLoader(context).load(context) 

    play.api.Play.start(application) 
} 

build.sbt:

libraryDependencies += "com.typesafe.play" %% "play" % "2.5.0-M1" 

Çıkış:

[info] play.api.Play - Application started (Dev) 

Buradaki kodu buradan indirebilirsiniz: github.com/alancnet/playtest

+0

I webserver.scala' çalıştırdığınızda konsolda herhangi bir çıkış var mı? –

+0

Belki bu bir çözümdür: http://stackoverflow.com/questions/8205067/how-do-i-change-the-default-port-9000-that-play-uses-when-i-execute-the- run? answertab = oy # tab-top – Kris

+0

@GavinSchulz Yukarıdaki çıkışı ekledim. – wizulus

cevap

3

Bu sadece bir uygulamadır. Hala bir ev sahibine ihtiyacı var. Aşağıdaki kodu ekleyin:

webserver.scala:

play.core.server.NettyServer.fromApplication(
    application 
) 

build.sbt:

libraryDependencies += "com.typesafe.play" %% "play-netty-server" % "2.5.0-M1" 

çıkışı:

[info] play.api.Play - Application started (Dev) 
[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000 

DÜZENLEME: İşte üretime girdi kod: https://gist.github.com/alancnet/68f6e787e1ab96bd1c4a