TomCat 7 Realizar deploy na mão

Boa tarde,

É o seguinte, trabalho com java mas em uma framework um pouco diferente
E essa framework só gera o arquivo “aplicacao.war” para até o TomCat 6

Mas tenho um caso novo onde o cliente já tem o TomCat 7 e preciso instalar a aplicação la.

Apenas com os arquivos, sem o .war ou .ear é possível realizar o deploy no tomcat 7?

Grato

Quais arquivos?
Todo .war que roda em Tomcat 6 roda em Tomcat 7…
Além disso, você pode criar o .war na mão, apenas com as classes e o prompt de comando.
Ou usar uma IDE adequada, como o Eclipse, Netbeans, IntellyJIdea, JDeveloper e gerar o .war automaticamente.

drsmachado,

Obrigado.

Infelizmente não posso utilizar outra IDE. Mas me interessou essa questão de criar o .war na mão. teria algum material ou dica de como fazer?

Coloquei a pasta da minha aplicação dentro do webapps do TomCat 7, tentei, tentei, tentei até que ele deu start na aplicação, mas quando tento realmente rodar a aplicação ele me retorna um erro 404, dizendo que não encontrou a classe, mas elas estão la. Sabe se no web.xml e devem estar todos os meus arquivos ou apenas o Main ou index?

Grato

Camarada, web não tem main.
Você pode definir no web.xml quais são os servlets que usa, todos, especificamente.
Porém, isso depende da arquitetura.
Qual é o framework em questão?

Estou trabalhando com o Genexus, mas na versão que estou ele gera o .war apenas para o TomCat 6.

Falei sobre essa parte, preciso descrever todas as minhas classes aqui?

                <servlet>
                        <servlet-name>himh001</servlet-name>
                        <servlet-class>himh001</servlet-class>
                </servlet>

O .war feito para rodar no TomCat 6 para o TomCat 7 existem diferenças?

Peguei a documentação do TomCat para ler, mas é toda em inglês até entendo alguma coisa… mas meu inglês não é fluente.

Fico muito grato se puder me dar mais alguma dica.

Att

08/08/2013 09:21:22 org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /multiacervo threw load() exception
java.lang.ClassNotFoundException: org.apache.catalina.servlets.InvokerServlet
	at java.net.URLClassLoader$1.run(Unknown Source)

Esse é o erro do Log do localhost.

Acho que na mão não tem como fazer o deploy, vou ter que criar um .war mesmo.

Por isso não recomendo code builders…
Não.
O web.xml você só descreve as servlets.
Só as classes que extendem HttpServlet e que possuem os métodos doGet, doPost (e/ou doPut também).
O erro que ele acusa é que está faltando um jar, que provavelmente exista no 6 e não no 7.

Mais uma questão…

Um .war feito para o tomcat 6 não funciona no tomcat 7 ?

Qual a diferença entre esses 2 arquivos?

Att

[quote=CoringadoBatman]Mais uma questão…

Um .war feito para o tomcat 6 não funciona no tomcat 7 ?

Qual a diferença entre esses 2 arquivos?

Att[/quote]
Funciona.
Na verdade, a restrição é quanto ao Tomcat 6 e a especificação Servlet 3.0, que ele não consegue interpretar (ele interpreta até 2.5). Tirando isso, não existe impedimento.

drsmachado, obrigado pela sua ajuda.

Com ela e o manual do tomcat e algum esforço resolvi o problema.

Como fiz:

Criei o war igual criava para o tomcat 6 e alterei a application version e coloquei todas as minhas classes que teriam “main” nos e

o arquivo web.config ficou enorme mas deu certo. Rodou e deu pra ver que o TomCat 7 está muito mais rápido e eficiente do que as outras versões.

Se alguém enfrentar essa dificuldade também, posta ai que ajudo com os passos que realizei aqui.