Следующие типы тегов в Lift не работают для меня:
<lift:snippet type="MyClass:render" />
<lift:MyClass.render/>
<lift:MyClass/>
Использование этих тегов приводит к ошибке Class Not Found. Если я попытаюсь вызвать класс, используя
<div class=lift:myclass.mymethod />
это может работать. Или, если я это называю, используя теги span. Например, пример Hello World в Pollak's Simply Lift работает для меня, успешно отображая метод Howdy со следующим кодом:
<span class="lift:helloWorld.howdy">
Welcome to your Lift app at <span id="time">Time goes here</span>
</span>
В настоящее время моя проблема связана с попыткой реализовать пример Исследование Lift (он же The Lift Book ) в главе 13.1. Я скачал OpenID4Java, используя sbt, а также библиотеку lift-openid. Этот пример можно найти по адресу http://exploring.liftweb.net/master/index-13.html.. Я реализовал изменение в классе Boot и создал класс OpenID и класс SimpleOpenIDVendor. Но создание HTML-файла, содержащего
<lift:OpenID.form>
<openId:renderForm/>
</lift:OpenID.form>
приводит к отображению в браузере следующей ошибки:
Error processing snippet: openid.form
Reason: Class Not Found
XML causing this error:
<lift:openid.form xmlns="http://www.w3.org/1999/xhtml">
<openid:renderform>
</openid:renderform></lift:openid.form>
Класс OpenID был помещен в пакет, который начинается с кода пакета, который неявно находится в Lift. Он включен в файл Boot.scala со строкой
LiftRules.addToPackages("code")
Итак, я в растерянности. Есть идеи?
Обратите внимание, что другие метки лифта, такие как lift: bind-at и lift: Surround и т.п., работают нормально.