Lift RewriteResponse не находит действительный URL - PullRequest
4 голосов
/ 02 августа 2009

Привет, у меня проблемы с перезаписью Lift и URL. Я написал простое правило переписывания:

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

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

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

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

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

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

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

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

1 Ответ

2 голосов
/ 03 августа 2009

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

...