Поднимите RewriteResponse не найдя допустимый url


Привет у меня возникли некоторые проблемы с лифтом и переписыванием URL. Я написал простое правило перезаписи:

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

Итак, когда я вхожу http://localhost:8080/user/brian я ожидаю, что вызов будет сделан пользователю просмотра.html-файл я поместил в каталог webroot. Отметка видоискателя.html очень прост:

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

Но вместо просмотра viewUser я получаю ошибку:

Запрошенный URL / user / brian не найден на этом сервере

Также, если я войду в URL-адрес viewUser вручную: http://localhost:8080/user/brian я получаю ту же ошибку.

У меня нет идей на этот счет, я нашел аналогичную ошибку, которая происходит через систему SiteMap.

Я попробовал это с чисто проверенным проектом lift-archetype-blank, добавив viewUser.html и добавление одного куска кода перезаписи.

1 4

1 ответ:

Убедитесь, что вы добавили "viewUser" на карту сайта. Без этого лифт не знает, где найти Пейджа.