Lift RewriteResponse не находит действительный URL
-
10-07-2019 - |
Вопрос
Привет, у меня проблемы с перезаписью 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 / user / brian не найден на этом сервере
Также, если я введу URL-адрес viewUser вручную: http: // localhost: 8080 / user / brian Я получаю ту же ошибку.
У меня нет идей по этому вопросу, я обнаружил похожую ошибку что происходит через систему SiteMap.
Я пробовал это с помощью только что проверенного проекта lift-archetype-blank, добавив viewUser.html и добавив один фрагмент кода для перезаписи.
Решение
Убедитесь, что вы добавили " viewUser " на карту сайта. Без этого Лифт не знает, где найти страницу.