2010-12-16 1 views
2

Я начал работать с Wicket. Когда я вношу изменения в HTML-шаблоны, это становится видимым сразу.Перезагрузка кода в Wicket

Но когда я вношу изменения в код, мне нужно перезагрузить Jetty. Я бег в режиме DEVELOPMENT (по крайней мере, это то, что говорит большое предупреждение в журнале жир) и я установил ReloadingWicketFilter как на этот вопрос: Wicket - runtime class reloading

Я думаю, что это поведение, потому что я делаю все изменения конструктор моих страниц и Wicket не создает новую страницу при перезагрузке.

Я просмотрел примеры Wicket, но нет ни одного примера, который показывает, как построить калитку страница без добавления всех компонентов в конструкторе или как сказать Wicket, чтобы создать новую страницу для каждого запроса или как сказать Калитка для создания новой страницы.

ответ

0

Я думаю, что последний абзац можно решить, переопределив метод OnInitialize() компонента.

См http://wicket.apache.org/apidocs/1.4/org/apache/wicket/Component.html#onInitialize()

С уважением,

Marek

+0

Что произойдет, если добавить новый компонент в то же ID в несколько раз? – 2010-12-17 10:55:56

+0

Я думаю, что он будет жаловаться на то, что он уже сопоставлен. – zeratul021 2010-12-18 01:01:24

3

Я использую МВН причалом: бег и этот конфиг в pom.xml:

<plugin> 
      <groupId>org.mortbay.jetty</groupId> 
      <artifactId>maven-jetty-plugin</artifactId> 
      <version>${jetty.version}</version> 
      <configuration> 
       <!-- to be used in combination with netbeans compile on save feature --> 
       <scanTargets> 
        <scanTarget>target/classes/</scanTarget> 
       </scanTargets> 
       <scanIntervalSeconds>1</scanIntervalSeconds> 
      </configuration> 
</plugin> 

И мой IDE (NetBeans) настроен, что он компилируется при сохранении ... тогда я могу сделать переключатель изменения в браузере и нажать перезагрузку ... и изменения были применены + jetty был перезагружен

Или использовать Коммерческий App jrebel

0

В IntelliJ, запустите приложение Пуска через отладку. Когда вы вносите изменения в Java и компилируете, IntelliJ перезагружает класс через HotSpot. Изменения становятся доступными в вашем приложении.

Вы, конечно, ограничивается HotSpot "s ограничение только возможность (например) создать новые классы и метод изменения тела.

Смежные вопросы