2011-11-18 9 views
6

Standardowe podpory "Symply Lift" example cechy projektu code, code.lib i code.model i bootstrap.liftweb.Boot przestrzenie nazw. Zmieniłem je na mycompany.myproject.code e t.c. Teraz projekt kompiluje ok i Jetty zaczyna się dobrze, ale dostaję błąd The Requested URL /my/url was not found on this server, gdy próbuję uzyskać dostęp do tego, co kiedyś działało dobrze przed refaktoryzacją. Co mogłem zapomnieć zmienić? Jak mogę bezpiecznie zmienić nazwy pakietów?Jak zmienić pakiet główny projektu windy?

Zmiana LiftRules.addToPackages("code") na LiftRules.addToPackages("mycompany.myproject.code") nie pomaga.

AKTUALIZACJA: Dowiedziałem się, że problem został spowodowany faktem, że przeniosłem bootstrap.liftweb.Boot do mycompany.myproject.bootstrap.liftweb.Boot. Przeniosłem go z powrotem i działa ponownie. Ale nadal jestem ciekawy, jak mogę dostosować lokalizację bootstrap.liftweb jako klasy bootstrap.liftweb.Boot różni się od projektu do projektu i nie chcę, aby wszystkie z nich miały taką samą pełną nazwę.

Odpowiedz

4

Można zdefiniować własną Boot klasę za pomocą Instalatora LiftFilter w web.xml jak opisano w Chapter 3.2 Bootstrap z Exploring Lift.

Z książki:

<filter> 
    ... filter setup here ... 
    <init-param>  
     <param-name>bootloader</param-name> 
     <param-value>foo.bar.baz.MyBoot</param-value> 
    </init-param> 
</filter> 

gdzie zwyczaj rozruchu klasa klasa musi podklasy net.liftweb.http.Bootable i wdrożenie metody boot.