标准的“Symply Lift”RestHelper example项目包含code
,code.lib
和code.model
以及bootstrap.liftweb.Boot
命名空间。我把那些改为mycompany.myproject.code
e t.c.现在项目编译好了,Jetty启动就好了,但是当我尝试在重构之前访问过去工作正常时,我得到The Requested URL /my/url was not found on this server
错误。我可能忘记改变什么?我该如何安全地更改包名?
将LiftRules.addToPackages("code")
更改为LiftRules.addToPackages("mycompany.myproject.code")
无效。
更新:我发现问题是由于我已将bootstrap.liftweb.Boot
移至mycompany.myproject.bootstrap.liftweb.Boot
这一事实造成的。我把它移回去了,它又恢复了工作。但我仍然很好奇如何自定义bootstrap.liftweb
位置,因为bootstrap.liftweb.Boot
类因项目而异,我不希望所有这些都具有相同的全名。
答案 0 :(得分:4)
您可以使用Boot
中的LiftFilter设置来定义自己的web.xml
课程,如Chapter 3.2 Bootstrap的Exploring Lift中所述。
从书中可以看出:
<filter>
... filter setup here ...
<init-param>
<param-name>bootloader</param-name>
<param-value>foo.bar.baz.MyBoot</param-value>
</init-param>
</filter>
您的自定义引导类类必须继承net.liftweb.http.Bootable
并实现boot
方法。