Estou estudando o GAE e gostaria de usar o VRaptor com ele. Pelo que andei lendo o Cold Start pode ser um problema pra aplicações no GAE, logo o startup deve ser o mais rápido possível.
Li nesta página http://vraptor.caelum.com.br/cookbook/usando-o-static-scanning-no-gae-j/ sobre como utilizar o static scanning pra evitar que o VRaptor realize scan de todas as classes do classpath no startup.
Gostaria de saber se existe alguma forma de executar isto fora do Ant e como saber se o processo funcionou?
Realizei o processo aqui e não vi diferença alguma nos logs de inicialização.
não… depois de compilar todas as suas classes pra WEB-INF/classes vc precisa rodar o main da classe br.com.caelum.vraptor.scan.VRaptorStaticScanning passando como parâmetro o local do web.xml:
java -cp <todos os jars da aplicação + o WEB-INF/classes> br.com.caelum.vraptor.scan.VRaptorStaticScanning caminho/pro/WEB-INF/web.xml
mais fácil rodar pelo ant, maven, eclipse, ou qqer coisa que já gere o classpath pra vc.
Mas o que esse negócio faz exatamente? E por que ele precisa do web.xml? Ele substitui alguma classe do VRaptor?
Eu entendi que ele faz o scan em tempo de build, mas como o VRaptor encontra essas infomações depois?
ele cria uma classe (se quiser procurar depois ela se chama br.com.caelum.vraptor.generated.StaticProjectBootstrap) em WEB-INF/classes que registra todas as classes que foram escaneadas, de maneira estática, pra ser usada na hora que o vraptor subir da próxima vez.
ele precisa do web.xml pra saber onde fica o WEB-INF/classes