Beans no servidor tomcat

5 respostas
J

Pessoal Bom Dia.

Estou tentando colocar um projeto na web e queria saber as pastas exatas onde coloco meus beans e servlets…

antes eu coloquei assim:

/webapps/ROOT/WEB-INF/classes/webcripty (o pacote é o webcripty)(deu erro dizendo que o pacote nao existia)

como achei que o problema fosse de localização dos beans, coloquei em:

/webapps/examples/WEB-INF/classes/webcripty (deu o mesmo erro)

O que eu posso estar fazendo de errado?

me disseram que no netbeans eu posso criar um arquivo .war e descompactar na pasta webapps que tudo acontece automaticamente. É isso mesmo? Como crio esse arquivo?

Obrigado a quem puder ajudar…

5 Respostas

juniorsatanas

O War é, a grosso modo, um arquivo zip! O TomCat não gera toda a aplicação, o que ele faz é um deploy automático, ele pega o teu War e “descompacta” ele na mesma pasta (WebApp).

Você poderia utilizar o ant para gerar o teu War.
WAR = Web Application Archives!

Pra gerar um WAR na mão, faça assim:

Code:

cd <DIRETORIO_DA_SUA_APLICACAO>
jar cfv <NOME_DA_APLICACAO>.war .

Pra ver se ele compactou direito:

Code:

jar tfv <NOME_DA_APLICACAO>.war

Na verdade, vc pode ate mesmo não gerar este arquivo compactado e jogalo como diretorio.war que ele ja irá trabalhar com o mesmo, a vantagem é que se vc modificar um jsp ele não precisa fazer redeploy da aplicação toda.

a questão de ser war é que uma extensão predefinida, isso não quer dizer que faça nada de especial, mais é importante para no seu projeto vc saiba o que é uma aplicação e o que é um arquivo zip.
o jar segue a mesma regra, é apenas um arquivo zip com outro nome, no entanto quando vc ver vc ja sabe que é uma biblioteca de classes

war seria Web Application R…
(se puderem comletar agora não me lembro. hehehhhe)

J

Ok, mas onde eu guardo os beans? em qual diretorio? o meu pacote é a pasta onde eu devo guardar os beans, certo? mas dentro de quais diretorios fica essa pasta?

juniorsatanas

Implantando Módulo Web
Pode-se implantar o módulo de duas forma:

1)Copiando o módulo web para o diretório de implantação do web container.

2)Copiando o pacote do módulo web (arquivo *.war) no diretório de implantação do web container.

Obs1: Pode-se ainda no caso do Tomcat configurar o descritor server.xml para que identifique o módulo web.
Obs2: Um context root identifica a aplicação web num JEE server (ex: http://host:port/context_root/alias).

entendeu ?

juniorsatanas

isso vai depender MEU CARO: olhe este exemplo e este site para você entender melhor.
5. Efetuar a instalação (deployment) da aplicação no Container WEB

* Na máquina de deployment (servidor J2EE do cliente final):
      o Lembre-se que o deployment da aplicação é feita no servidor do usuário final (cliente), que não é necessariamente a máquina do programador.

Como estamos usando o JBoss como servidor J2EE, fazer o deployment de uma aplicação significa simplesmente copiar o arquivo EAR para o diretório deploy apropriado.

Considerando que a máquina do programador é a máquina do cliente final, usaremos o ANT para fazer o trabalho de deployment, executando a tarefa deploy definida no arquivo build.xml.

C:…\cadastromail&gtant deploy
Buildfile: build.xml

deploy:
[copy] Copying 1 file to C:…\jboss-3.2.6\server\default\deploy

BUILD SUCCESSFUL
Total time: 3 seconds

http://www.ucb.br/prg/professores/giovanni/disciplinas/2004-1/talp/material/jacques/html/servlets/intro.htm

juniorsatanas

no meu caso fico assim no servidor do cliente:

C:\corejsf-examples\ch1\build\web\WEB-INF\lib
as bibliotecas

se o clientes usar linux tu vai ter que da chmod 777 arquivo.

espero ter ajudado meu camarada !

Criado 3 de junho de 2007
Ultima resposta 4 de jun. de 2007
Respostas 5
Participantes 2