nunca precisei me preocupar muito com a distribuicao da aplicacao.
Era so gerar o WAR ou EAR e mandar pro responsavel.
Mas dessa vez eu to enrolado com um problema bem complexo.
Pelo que entendi ele esta distribuido num ambiente UNIX com Apache + Tomcat.
Li por aqui que usam o Apache pra conteudo estático e tomcat pro dinamico. Qual seria o problema de colocar o tomcat pra gerenciar conteudo estatico? Entendi o uso do apache pois podem conter outras aplicacoes em PHP por exemplo, que o tomcat nao resolveria. Tem como usar o apache apenas pra enxergar minha aplicacao completa (estatico + dinamico) no tomcat?
Minha ideia é gerar um simples WAR e jogar no Tomcat.
O conteúdo estático pode ser servido bem mais rapidamente pelo Apache que pelo Tomcat.
Além disso, em ambiente Unix deixar algo na porta 80 (default para http) só deve ser feito sob condições especiais, já que supõe que o usuário usado para rodar o programa é “root”. Como o Apache está preparado para isso mas o Tomcat não, normalmente o Apache redireciona os pedidos (porta 80) para o Tomcat (porta 8080), para evitar problemas de segurança que o Tomcat teria fatalmente se ele ficasse como “root” atendendo na porta 80.
Portanto você vai ter de separar sua aplicação em duas partes:
Tudo que está sob WEB-INF deve ficar no Tomcat.
Tudo que está fora de WEB-INF deve ficar no Apache. Nesse caso você deve perguntar ao administrador da máquina Unix como é que normalmente isso é feito (ele normalmente quer um arquivo .tar.gz que contenha esses arquivos estáticos, para ele poder copiar no lugar correto do Apache.
micheljuca
Valeu cara, como sempre vc ajudando
entao eu perco o deploy automatico, simplesmente jogando o war em webapps. Agora a distribuicao fica meio manual. Eh meio chato mas eh o jeito.
EDIT
Como ficariam as pastas?
eu jogo a pasta WEB-INF dentro do diretorio webapp/MinhaApp ?
micheljuca
Ah, outra coisa, as jsps podem ficar em
Web-content
WEB-INF
index.jsp
ou seja, a index.jsp ta fora de WEB-INF. Vai pro Apache assim mesmo?
T
thingol
Uai, foi só uma generalização infeliz.
index.jsp é conteúdo dinâmico, portanto tem de ir para o Tomcat, não para o Apache. De modo geral:
Páginas .jsp, arquivos .class, arquivos de configuração (.properties) têm de ficar no Tomcat
Páginas estáticas (.html, .js, .css), applets (.jar), imagens (.jpg, .png, .gif) têm de ficar no Apache
Só lembrar que na hora de configurar o Apache, há alguma coisa para mexer (não conheço direito o Apache para dizer exatamente o que fazer) para que ele aceite a abreviação http://site/aplicacao em vez de http://site/aplicacao/index.jsp .
micheljuca
ja é um comeco, agora é fuçar.
valeu!
micheljuca
o que eu ainda nao entendi é a disposicao das pastas.
Eu crio um projeto no tomcat e jogo o conteudo com a estrutura de um projeto normal mas incompleto?
E como eu vou referenciar links? Visto que as imagens estao no apache. Ainda nao consegui visualizar isso.