Mesmo seguindos os passos a seguir, talvez tenha que reiniciar o Tomcat algumas vezes, e também fechar o Genexus para que todas as configurações 'peguem' corretamente.
Parte 1. Configuração das Propriedades do Genexus
Basicamente toda operação ocorre nas propriedades do environment (na KB) e na pasta do Tomcat, não sendo necessárioas configurações no sistema operacional.
1) Nome da aplicação Java:
- Genexus definirá como nome da aplicação Java, no diretório do Tomcat, com a combinação entre o nome da KB e o nome do environment.
Exemplo: KB=Teste, Environment=JavaEnvironment, o nome da aplicação será definida como: Teste.JavaEnvironment - Um diretório será criado, pelo Genexus, no Tomcat para a publicação desta aplicação, na pasta webapps.
- Compiler Path: define o caminho para o compilador Java, que deve ser instalado através de um pacote Java Standard Edition, baixados da Sun.
Compiler Path=C:\Program Files\Java\jdk1.6.0_20\bin\javac.exe
- Interpreter Path: define o caminho para o interpretador Java, que deve ser instalado através de um Java Runtime Edition ou Java Standard Edition, baixados da Sun. A versão JSE é melhor para desenvolvimento porque já inclui o interpretador e compilador Java.
Interpreter Path=C:\Program Files\Java\jdk1.6.0_20\bin\java.exe
- Classpath: define os caminhos para os objetos de classe (jar, ou Java Archive) que são necessários para construir a aplicação. Normalmente é necessário indicar aqui as classes para acessar o Mysql e também a classe servlet-api.jar. Ao criar o projeto já serão definidas alguns caminhos no Classpath, voce deverá incluir a parte que se encontra em negrito abaixo.
classpath: gxclassr.jar;gxclassr.zip;GxUtils.jar;.;lucene-core-2.2.0.jar;iText.jar;./drivers/mysql-connector-java-5.1.13-bin.jar;./drivers/servlet-api.jar
- Genexus já inclui um conector Java, mas é recomendado que baixe um mais recente e o copie na pasta drivers de sua aplicação.
- Copie o arquivo C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar na pasta drivers de sua aplicação. No final a pasta drivers deve ficar com a seguintes classes:
3) Diretório e caminhos para o Tomcat:
- Servlet Directory: é o diretório onde roda a aplicação Genexus + Java no Tomcat. Na propriedade deverá ser indicado o caminho até a pasta classes.
Servlet Directory=C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\Teste.JavaEnvironment\WEB-INF\classes
- Static Directory: é o diretório onde o Genexus armazenará as informações estáticas (imagens, arquivos js, ...) da aplicação
Static Directory=C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\Teste.JavaEnvironment\static
- Web Root: indica a URL que será chamada pelo cliente para rodar a aplicação. No ambiente de teste deverá ser o próprio nome do projeto (item 1).
Web Root=http://localhost:8080/Teste.JavaEnvironment/servlet/
- Referente ao numero 8080, representa a porta ativa do Tomcat no servidor, caso queira o padrão, (80), e desde que não tenha o IIS instalado na mesma máquina, poderá alterar a configuração do arquivo C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\config.xml.
Aqui a coisa pega um pouco porque depende muito de instalação para instalação, vou reproduzir as configurações que fiz nessa kb de teste.
Primeiramente desligue o Tomcat e faça uma cópia dos arquivos que estão sendo reconfigurados, por segurança.
1) Configuração do web.xml
- O web.xml é um arquivo de configuração que se encontra no diretório C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf.
- Minha configuração ligou as propriedades invoker que estavam anteriormente marcadas com comentário.
- E também no servlet-mapping:
- Na pasta C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost, crie um arquivo chamado Teste.JavaEnvironment.xml.
- Com o seguinte conteúdo:
- Reproduza (copie) o conteúdo da pasta drivers (da aplicação) na pasta lib (do Tomcat), que se encontra no diretório C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\Teste.JavaEnvironment\WEB-INF
Importante: nesse modelo de configuração (via invoker) não crie nenhum arquivo web.xml na pasta WEB-INF, senão não funcionará.
Finalmente, ligue o Tomcat e execute a aplicação. 'Acho' que conseguirá rodar de primeira, mas ai é outra história.
Um comentário:
A configuração do ambiente Java realmente é muito chata.
O bom é que na Evolution esse quesito foi melhorado.
Postar um comentário