2012-11-05 55 views
1

我是scala和Java Play的新手。我正在看看這樣的代碼,但我得到了上述錯誤。儘管添加了大括號等,但我無法解決這個問題。任何幫助都非常感謝。 對不起,我忘了提及在@main中顯示錯誤。即使我用@main(用戶名)取代某些(用戶名),也沒有喘息的機會。該航線是相關的代碼看起來類型不匹配;發現:一些[String]必需:play.api.templates.Html

的conf /路線

GET  /Login    controllers.Application.Login(username:String) 

應用程序/視圖/ Login.scala.html看起來像這樣

@(username: String)(implicit request: RequestHeader) 

@main(Some(username)) { 

<div class="page-header"> 
    <h1>Login <small>You are Logging in as @username</small></h1> 
</div> 

<div id="onError" class="alert-message error"> 
    <p> 
     <strong>Oops!</strong> <span></span> 
    </p> 
</div> 

<script type="text/javascript" charset="utf-8"> 

    $(function() { 

     var WS = window['MozWebSocket'] ? MozWebSocket : WebSocket 
     var loginSocket = new WS("@routes.Application.UserLogin(username).webSocketURL()") 

     var receiveEvent = function(event) { 
      var data = JSON.parse(event.data) 

      // Handle errors 
      if(data.error) { 
       loginSocket.close() 
       $("#onError span").text(data.error) 
       $("#onError").show() 
       return 
      } else { 
       $("#onChat").show() 
      } 


     } 

    }) 

</script> 
} 
+3

請指出錯誤發生的位置(我假設它在'var loginSocket = ...'')。 –

+2

爲什麼downvote?看起來社區對新用戶變得更加不耐煩。 – huynhjl

+0

@appy g,當您嘗試顯示頁面時,哪行(和字符)以紅色突出顯示?如果你提供這些信息,它會有所幫助。當然,'@main(Some(username))'似乎應該是'@main(username)'。 – huynhjl

回答

1

根據錯誤信息,您所提供Some[String]其中play.api.templates.Html預計。根據您所提供的代碼最有可能的人選是:

@main(Some(username)) { 

基礎上,我將其替換爲:

@main(Html(username)) { 

這假定主視圖的第一個參數是類型Html

相關問題