これが私が今立ち往生している別のScala/Lift関連の質問です。
http://simply.liftweb.net/index-Chapter-2.html#toc-Chapter-2にあるユビキタスチャットアプリの例に従って、すべてが稼働しています。index.html
ここで、の代わりに別のHTMLページを埋め込みたいだけです。Boot.scala
SiteMap
表示されるのは、次のメッセージだけです。
リクエストされたURL/はこのサーバーで見つかりませんでした
だから、あなたに私の努力を示すために、私はあなたにSiteMap
定義を示しますBoot.scala
:
// Build SiteMap
def sitemap() = SiteMap(
Menu("Home") / "index" :: // Simple menu form
// Menu with special Link
Menu(Loc("Static", Link(List("static"), true, "/static/index"),
"Static Content")) ::
// Menu entries for the User management stuff
User.sitemap :_*)
LiftRules.setSiteMapFunc(sitemap)
はフォルダの下にあるため、パスはのようになりindex.html
ます。内容は次のとおりです。webapp
webapp/index.html
index.html
<div id="main" class="lift:surround?with=default;at=content">
<!-- the behavior of the div -->
<div class="lift:comet?type=Chat">
Some chat messages
<ul>
<li>A message</li>
<li class="clearable">Another message</li>
<li class="clearable">A third message</li>
</ul>
</div>
<div>
<form class="lift:form.ajax">
<input class="lift:ChatIn" id="chat_in"/>
<input type="submit" value="Say Something"/>
</form>
</div>
これはすべて、チャットアプリの例で行われました。login.html
の代わりに単純なファイルを表示したかったindex.html
ので、下に配置しましたwebapp/login.html
。このファイルの内容は次のとおりです。
<div id="loginContainer" class="lift:surround?with=default;at=content">
<!-- the behavior of the div -->
<div>
<form class="lift:form.ajax">
<div class="loginInputWrapper">
<input type="text" class="txtLogin lift:LogIn" id="loginName"/>
</div>
<div class="loginInputWrapper">
<input type="password" class="pwLogin lift:LogIn" />
</div>
<div class="buttonWrapper loginButtonWrapper">
<button id="loginButton" class="hiddenButton qsbfont" type="submit">Login</button>
</div>
</form>
</div>
そして私はこのようにSiteMap
定義を適応させました:
Menu("Home") / "login" :: // Simple menu form
index.html
これはすべて、起動時を含めてスムーズに実行されるように思えますが、サイトにアクセスしたい場合は、前述のメッセージが何度も表示されます。誰かがここで何が起こっているのか考えており、これに対するヒント/解決策を教えてくれますか?
興味がある場合:Intellij IDEAEnterprise内からTomcat7でScalaWARを実行しています(トライアルライセンス)