Domanda

Ciao, ho qualche problema con la riscrittura di Lift e URL. Ho scritto una semplice regola di riscrittura:

LiftRules.rewrite.append {
  case RewriteRequest(
    ParsePath(List("user", userID), _, _, _), _, _) => {
        println(userID)
        RewriteResponse(List("viewUser"), Map("userID" -> urlDecode(userID)))
    }
}

Quindi quando entro http: // localhost: 8080 / user / brian mi aspetto una chiamata da creare nel file viewUser.html che ho inserito nella directory webroot. Il markup di viewUser.html è molto semplice:

<lift:surround with="default" at="content">
    <p>ViewUser</p>
</lift:surround>

Ma invece di vedere viewUser ricevo un errore:

  

L'URL richiesto / utente / brian non è stato trovato su questo server

Inoltre, se inserisco manualmente l'URL di viewUser: http: // localhost: 8080 / user / brian Ottengo lo stesso errore.

Non ho idee su questo, ho trovato un errore simile che avviene attraverso il sistema SiteMap.

L'ho provato con un progetto lift-archetype-blank chiaramente verificato, aggiungendo viewUser.html e aggiungendo il singolo pezzo di codice di riscrittura.

È stato utile?

Soluzione

Assicurati di aver aggiunto " viewUser " alla mappa del sito. Senza farlo Lift non sa dove trovare la pagina.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top