如何更改Lift项目根包?

时间:2011-11-18 03:52:53

标签: scala namespaces refactoring lift

标准的“Symply Lift”RestHelper example项目包含codecode.libcode.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类因项目而异,我不希望所有这些都具有相同的全名。

1 个答案:

答案 0 :(得分:4)

您可以使用Boot中的LiftFilter设置来定义自己的web.xml课程,如Chapter 3.2 BootstrapExploring 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方法。