Inicializacao do wicket

10 views
Skip to first unread message

Diego Fincatto

unread,
Aug 18, 2009, 9:10:36 AM8/18/09
to wicke...@googlegroups.com
Bom dia pessoal,
Estou tentando fazer com que o wicket inicie em modo de producao quando feito um deploy no servidor, e em modo teste quando o inicio pelo Start.java (http://wicketbyexample.com/development-and-deployment-mode-how-to-configure-it/).
Configurei o meu WebAppContext, como abaixo, e tudo funciona bem. O problema é que, quando eu adiciono o initparam no web.xml, ele nao obedece mais minha configuracao do WebAppContext. Meus arquivos estao assim:

final WebAppContext bb = new WebAppContext();
        bb.setServer(server);
        bb.setContextPath("/");
        bb.setWar("src/main/webapp");
        bb.getInitParams().put("configuration", "deployment");
       
e

<filter>
        <filter-name>wicket.ailes-site</filter-name>
        <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
        <init-param>
            <param-name>applicationClassName</param-name>
            <param-value>ailes.site.WicketApplication</param-value>
        </init-param>
        <init-param>
            <param-name>configuration</param-name>
            <param-value>deployment</param-value>
        </init-param>
</filter>

Alguém já fez isso?
[]s

Cassio

unread,
Aug 18, 2009, 9:26:18 AM8/18/09
to wicke...@googlegroups.com
Tenta usar -Dwicket.configuration=development como parametro de comando

2009/8/18 Diego Fincatto <diego.f...@gmail.com>

David .

unread,
Aug 18, 2009, 9:27:45 AM8/18/09
to wicke...@googlegroups.com
Na sua classe que vc aponta como sendo a Application, vc sobrescreve o método getConfigurationType() e vai ficar:

    public String getConfigurationType() {
        return Application.DEVELOPMENT;
    }

2009/8/18 Cassio <zig...@gmail.com>

Diego Fincatto

unread,
Aug 18, 2009, 9:29:38 AM8/18/09
to wicke...@googlegroups.com
Esse parametro eu teria que passar via eclipse, nao?
Se for assim, fica inviavel, pois teriamos que configurar isso em todos os computadores da equipe.

2009/8/18 Cassio <zig...@gmail.com>

Diego Fincatto

unread,
Aug 18, 2009, 9:30:39 AM8/18/09
to wicke...@googlegroups.com
Fazendo desta forma, ele sempre vai inicializar em DEVELOPMENT. Eu quero que, quando iniciar via Start.java (jetty embedded) ele inicie em desenvolvimento. Quando eu fizer o deploy dele, ele inicie em produção, sem ter que mexer em nada.

2009/8/18 David . <davidp...@gmail.com>

David .

unread,
Aug 18, 2009, 9:30:59 AM8/18/09
to wicke...@googlegroups.com
Não amigo....sabe o web.xml?

Lá tem uma classe que vc declarou algo como:


    <init-param>
      <param-name>applicationClassName</param-name>
      <param-value>
                com.xxx.yyy.wicket.app.PortalApplication
            </param-value>
    </init-param>

Ai vc acha sua classe que corresponde ao PortalApplication e sobrescreve o método que te falei!

2009/8/18 Diego Fincatto <diego.f...@gmail.com>

Diego Fincatto

unread,
Aug 18, 2009, 9:44:09 AM8/18/09
to wicke...@googlegroups.com
Sim, eu tinha esse metodo implementado anteriormente. Mas sobrescrevendo esse metodo, ele sempre vai iniciar da forma que eu setei lá, não?


2009/8/18 David . <davidp...@gmail.com>

David .

unread,
Aug 18, 2009, 9:46:55 AM8/18/09
to wicke...@googlegroups.com
Exato...de maneira automatizada, eu não faço a menor idéia hehe

2009/8/18 Diego Fincatto <diego.f...@gmail.com>

Claudio Miranda

unread,
Aug 19, 2009, 8:08:05 AM8/19/09
to Wicket em Português
Uma das maneiras, é usar usar web.xml distintos (web-production.xml e
web.xml), e no build para produção, usar o web-production.xml e deixar
o web.xml como development (sempre tem outros parâmetros, que são
necessários apenas em produção). Alterar isso no processo de build e
pronto. Essa é a maneira que prefiro usar, nem precisaria da
customização do Start.java e independente do Jetty (não se preocupe,
uso o Jetty há muito tempo).

Claudio Miranda

On 18 ago, 10:10, Diego Fincatto <diego.finca...@gmail.com> wrote:
> Bom dia pessoal,
> Estou tentando fazer com que o wicket inicie em modo de producao quando
> feito um deploy no servidor, e em modo teste quando o inicio pelo Start.java
> (http://wicketbyexample.com/development-and-deployment-mode-how-to-con...
> ).

Adriano dos Santos Fernandes

unread,
Aug 19, 2009, 8:17:08 AM8/19/09
to wicke...@googlegroups.com
Claudio Miranda escreveu:

> Uma das maneiras, é usar usar web.xml distintos (web-production.xml e
> web.xml), e no build para produção, usar o web-production.xml e deixar
> o web.xml como development (sempre tem outros parâmetros, que são
> necessários apenas em produção). Alterar isso no processo de build e
> pronto. Essa é a maneira que prefiro usar, nem precisaria da
> customização do Start.java e independente do Jetty (não se preocupe,
> uso o Jetty há muito tempo).
Eu costumo fazer isso com o uso de propriedades (definidas no container
ou no eclipse).

Alguém disse que teria que configurar o eclipse em cada máquina, isso
não é verdade. Os arquivos laucher podem ser gravados no projeto (tem
uma opção lá onde configura os parâmetros).

Também é possível fazer com o uso de filtros de resources do maven.


Adriano

Erico Domingues

unread,
Aug 19, 2009, 8:33:47 AM8/19/09
to wicke...@googlegroups.com
Para aqueles que fazem uso do Maven e geram os seus builds através dele é um processo mais natural.

2009/8/19 Adriano dos Santos Fernandes <adri...@gmail.com>

Marcelo Fukushima

unread,
Sep 21, 2009, 6:42:20 PM9/21/09
to wicke...@googlegroups.com
antes de iniciar o app, coloque esta linha:

System.setProperty("wicket.configuration", "DEVELOPMENT");

mas prefiro setar no eclipse mesmo a system property com:
-Dwicket.configuration=DEVELOPMENT

2009/8/19 Erico Domingues <erico.d...@gmail.com>:
--
http://mapsdev.blogspot.com/
Marcelo Takeshi Fukushima

Cristiano Kliemann

unread,
Sep 21, 2009, 8:34:29 PM9/21/09
to wicke...@googlegroups.com
Uma variação desta técnica é usar alguma informação relacionada ao
ambiente diretamente no getConfigurationType. Ex:

public String getConfigurationType() {
try {
Class jettyClass = Class.forName("org.mortbay.jetty.Jetty");
// Se chegou aqui, é porque encontrou o Jetty
return Application.DEVELOPMENT;
} catch (ClassNotFoundException e) {
// Não encontrou o Jetty... considera produção
return Application.DEPLOYMENT;
}
}

Obs 1: não testei o trecho acima... fiz direto no e-mail.
Obs 2: considero isso meio gambiarra, mas que dá para fazer, dá

-- Cristiano

2009/8/18 David . <davidp...@gmail.com>:

Bruno Borges

unread,
Sep 21, 2009, 8:38:06 PM9/21/09
to wicke...@googlegroups.com
É possível no Maven voce configurar um esquema pra modificar no web.xml algum determinado valor. Na hora de fazer um mvn release:release, por exemplo. :-)


Bruno Borges
blog.brunoborges.com.br
+55 21 76727099

"The glory of great men should always be
measured by the means they have used to
acquire it."
- Francois de La Rochefoucauld
Sent from Rio De Janeiro, RJ, Brazil

2009/9/21 Cristiano Kliemann <crist...@gmail.com>

Cristiano Kliemann

unread,
Sep 21, 2009, 8:53:04 PM9/21/09
to wicke...@googlegroups.com
Sim, acho uma forma muito mais elegante, inclusive.

Onde trabalho fazemos assim.

-- Cristiano

2009/9/21 Bruno Borges <bruno....@gmail.com>:
Reply all
Reply to author
Forward
0 new messages