簡體   English   中英

我應該在哪里將html文件放在我的Web應用程序文件夾中,以使用Maven進行電梯項目?

[英]where do i put html files in my web-app folder for a lift project with maven?

我是Scala的Lift框架的新手。 由於某種原因,index.html駐留在web-app目錄中,當我啟動碼頭時, http:// localhost:8080 /會指向該index.html文件。 但是,如果我將login.html文件與index.html放在同一文件夾中,然后轉到http:// localhost:8080 / login ,Lift將不提供該文件。

我需要將文件放在哪里進行注冊? 我有點迷茫,因為該行為似乎只適用於index.html,而僅此而已。

當我在Chrome中查看源代碼時,會發生以下情況:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> <body>The Requested URL /login was not found on this server</body> </html>  

請參閱SiteMap Wiki頁面: http : //liftweb.assembla.com/wiki/show/liftweb/SiteMap

SiteMap的原因是菜單生成和訪問控制的統一。 您可以按名稱引用頁面,如果您使用SiteMap在目錄層次結構中移動頁面,則鏈接將始終有效。 SiteMap提供了一種用於提取查詢參數和路徑信息的類型安全的機制,以便您的當前頁面可以具有關聯的對象,並且可以通過將該對象傳遞給Loc來計算頁面的URL。

SiteMap看起來似乎有些沉重,但是如果您要構建一個對不同頁面具有不同訪問控制規則的站點,SiteMap為您提供了一種很好的,統一的表示和安全機制。

如果您不想使用SiteMap,只需從Boot.scala中刪除LiftRules.setSiteMap()行,Lift即可提供任何頁面。

給出最后一條評論的答案:如果您使用默認的Lift原型來試用Lift:這將使用為您的站點提供菜單的SiteMap。 這是在bootstrap.liftweb.Boot.scala類中定義的。 默認情況下,將站點地圖與菜單一起使用可控制您可以在應用程序中訪問的頁面。 我不確定是否有禁用該功能的簡便方法,因此如果有人知道,請發表評論。 如果根本不希望這樣做,則可以通過刪除val entries = Menu(Loc("Home", List("index"), "Home")) :: NilLiftRules.setSiteMap(SiteMap(entries:_*)) val entries = Menu(Loc("Home", List("index"), "Home")) :: Nil來禁用它LiftRules.setSiteMap(SiteMap(entries:_*)) 這樣,您可以通過轉到URL直接訪問所需的任何頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM