Unofficial Content

As configurações do GeneXus deste ponto em diante são simples, mas é neste ponto que todas as configurações convergem.
É claro que qualquer falha em qualquer momento fará com que todos os problemas ocorram agora.
O mais importante é a configuração da localização correta dos arquivos.
Antes de qualquer coisa, abra o GeneXus 9.0 e verifique os upgrades, atualizado caso necessário e então crie um novo kbase.
Vamos agora testar as configurações em duas partes: Servlets e acesso ao Banco de Dados.
Para testarmos a primeira parte, crie uma WebPanel simples e sem acesso ao banco de dados. Isso fará com que consigamos primeiro testar o funcionamento dos servlets e somente depois o acesso à base de dados (que normalmente causa mais problemas).
Como na imagem abaixo, crie uma WebPanel simples. Mas tenha certeza que o mesmo não acessa em nenhum momento a base de dados, pois se acessar, um erro será exibido em execução.
Lembre-se de colocar este WebPanel como "Main Program", escolhendo esta propriedade como True nas propriedades da WebPanel.
35

36
Criando um novo modelo
Passe este kbase para Protótipo e acompanhe a configuração.
37
Informe o nome para o modelo, que pode ser qualquer um, sem afetar o funcionamento da aplicação.
Selecione como Java Web e o Banco de Dados SQL Server. Caso você esteja utilizando outro banco de dados, informe o correto aqui.
Como não haverá acesso a base de dados neste momento, o conteúdo será indiferente.
Clique em Next.
38
Neste nosso exemplo, estamos utilizando o Microsoft JDBC Driver (Type 4).
Para mais informações, consultem o tópico no final deste específico sobre JDBC.
Neste exemplo o nome da Base de Dados é gxteste, se conectando na porta padrão.
Informe o nome correto do servidor e a porta a qual o mesmo deverá se conectar, caso não seja a porta padrão.
Clique em Next.
39
Informe Usuário, Senha e a versão do SQL Server. Entenda que com TomCat ou qualquer aplicação Java não será possível utilizar "Trusted Connection" ou "Segurança Integrada".
Clique em Next.
40
Estas são as configurações mais críticas. Você deve informar o local onde serão copiadas as classes durante a compilação do seu kbase.
Diretório classes dentro da pasta de contexto da sua aplicação configurada dentro do TomCat.
Em nosso caso, esta pasta é:
C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\gxteste\WEB-INF\classes

Como todos os contextos devem ser criados dentro da pasta webapps, dentro do TomCat, você pode apontar este caminho para a pasta classes de outro contexto, mas o mesmo deve estar configurado como já foi informado anteriormente.
Nota: O diretório deve existir e o mesmo NÃO será criado pelo GeneXus.
As configurações de Static content informam onde as informações estáticas devem estar. Para que você entenda melhor, static content é qualquer coisa estática e não dinâmica, ou seja, páginas HTML, JavaScript, imagens, etc. Tudo deve estar dentro deste diretório e somente dentro deste.
Se você colocar qualquer coisa, como imagens em outro local, os mesmos não poderão ser acessados pela sua aplicação. Esta é uma configuração de segurança.
Este diretório DEVE existir e estar configurado para que sua aplicação tenha o mínimo de segurança e que assim funcione corretamente. A não especificação deste diretório irá impedir o correto funcionamento de sua aplicação neste exemplo e em qualquer outra aplicação desenvolvida.
A URL e o diretório trabalham juntos e mostram como o seu Browser e seu arquivo estão configurados. Ao alterar uma configuração, a outra deve ser alterada também.
Neste caso, estaremos apontando para a pasta imagens dentro do diretório raiz de nosso contexto. A visualização por parte do cliente é (Barra normal):
/imagens
Diretório imagens dentro da pasta raiz do contexto.
C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\gxteste\imagens

Para que você possa entender melhor, seguem algumas outras possibilidades:
Static content base URL: /site
Static content directory seem from de client: C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\<contexto>\site
Static content base URL: /imgs
Static content directory seem from de client: C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\<contexto>\imgs
Static content base URL: /site/imgs
Static content directory seem from de client: C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\<contexto>\site\imgs
Ou seja, o Static content base URL deve ser uma cópia do diretório de conteúdo estático determinado e criado em Static content directory seem from de client.
Observação:
Nota 1: O diretório deve existir e o mesmo NÃO será criado pelo GeneXus.
Nota 2: Na criação dos diretórios, coloque sempre tudo minúsculo. Existem diferenças entre nome com letras maiúsculas e minúsculas.
Nota 3: A seguinte configuração não é aconselhável e irá gerar erro no momento da criação do Deployment Wizard:
Static content base URL: /
Static content directory seem from de client: \webapps\<contexto>
NÃO use esta configuração se você for utilizar o Deployment Wizard.
Clique em Next.
41
Plataforma: Sun SDK
Informe a plataforma sendo como Sun SDK. A ARTech desaconselha completamente o uso com o Microsoft SDK for Java, pois o mesmo se encontra DESCONTINUADO e vários bugs já foram reportados e estes ficarão sem solução. O ideal é a utilização do Java da Sun Microsystems.
Compiler Path: C:\Arquivos de programas\Java\jdk1.5.0_08\bin\javac.exe
Informe o caminho do compilador Java para o SDK da Sun. Este será chamado pelo NMake da Microsoft e irá compilar a sua classe.
Make Path: C:\Arquivos de programas\Microsoft SDK for Java 4.0\Bin\NMAKE.EXE

Informe o caminho do NMake do Microsoft SDK for Java. Este é o único componente que iremos utilizar de todo o SDK da Microsoft. Este irá ser utilizando no processo de compilação, chamando e compilando suas classes. Entenda que mesmo utilizando o NMake da Microsoft, estas classes irão ser executadas em qualquer computador e em qualquer ambiente, seja TomCat, WebSphere, Linux ou Windows.
Nota: O SDK Java da Microsoft esá descotinuado e o download já não está disponível desde o site da Microsoft (dez/2006). Contudo este utilitário é distribuido tambem com o Visual Sutdio C++.
Interpreter Path: C:\Arquivos de programas\Java\jdk1.5.0_08\bin\java.exe
Todas as aplicações em Java são interpretadas e não é gerado por Default um compilado executável. Desta forma é necessário que seja especificado o Interpreter. Este será utilizado para a execução dos Programas em Java, como por exemplo, o RMenu e o mesmo deve ser informado corretamente.

ClassPath: gxclassr.zip;iText.jar;servlet-api.jar;msbase.jar;mssqlserver.jar;msutil.jar;.;

O ClassPath informa ao compilador e ao Java classes adicionais que devem estar presentes na compilação ou execução dos mesmos.
Seriam como .DLL no ambientes Windows, porém estas não precisam de registros e a simples inclusão no ClassPath já valida seu funcionamento.
As classes e seus conteúdos são:
gxclassr.zip - Classe do GeneXus, contendo rotinas GeneXus.
iText.jar - Rotinas de geração de PDF.
servlet-api.jar - Classe para funcionamento com TomCat (Somente TomCat)
msbase.jar;mssqlserver.jar;msutil.jar - Driver JDBC para SQL Server 2000.
. Outras classes.
Nota 1: Coloque somente o gxclassr.zip de classe do GeneXus. A classe gxclassd.zip contém as mesmas informações do gxclassr.zip e em adicional, funções para depuração da aplicação. A substituição ou inclusão do gxclassd.zip no ClassPath fará com que sua aplicação rode em modo de depuração, deixando sua aplicação extremamente lenta.
Nota 2: NUNCA especifique caminhos absolutos no ClassPath, como por exemplo, C:\kbases\80\gxteste\gxclassr.zip. Informe somente o nome da Classe, como por exemplo, gxclassr.zip.
Nota 3: Utilize o ; para separar as classes. Entenda que a ordem em que o ClassPath é montado influencia no funcionamento da aplicação, pois determina a ordem na hierárquica na qual serão utilizados os componentes. Caso existam dois componentes com o mesmo nome, será utilizado o primeiro na lista do ClassPath. Desta forma, coloque sempre:
Gxclassr.zip;<Classe do Servidor de Servlets>;<Classes JDBC>;.;
Mantenha sempre o ;.; como o último da lista sempre.

Web Application Base URL: http://servername:port/gxteste/servlet/

Este é o caminho padrão para executar suas aplicações pelo Browser. Este deve ser sempre:
http://<ServidorWeb>/<Contexto>/servlet/
Note que o diretório servlet não foi criado dentro do seu Contexto e este é interpretado pelo conteúdo dentro de WEB-INF e do arquivo web.xml e dos arquivos Server.cfg e client.cfg dentro de classes. Isto monta o funcionamento para a execução de um servlet.
Clique em Next.
42
Confirme os dados que foram inseridos nas configurações anteriores e clique em Finish.
Não irá aparecer a WebPanel em seu modelo. Para resolver isso, clique em Build / Impact Database.
Ajustando o seu modelo
Após a configuração, está faltando o arquivo servlet-api.jar que se encontra dentro do diretório TomCat.
Este arquivo faz parte do TomCat e é necessário para a compilação das aplicações. Você irá encontrá-lo em:
C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib
Você precisa copiar este arquivo para o diretório \DATA00x\web de seu kbase.
Nota: Se este arquivo não estiver presente no diretório de correto, o GeneXus não conseguirá compilar sua aplicação.
O seu ambiente está praticamente configurado e pronto para ser testado. Neste momento você deve dar um Build All com Force. Isso é obrigatório para que todo o seu kbase seja montado de acordo com as configurações informadas.
Após o Build All, você PRECISA compilar sua aplicação.
Diferente dos geradores Visual Fox Pro e Visual Basic, você PRECISA compilar sua aplicação antes de cada execução. Não existe como rodar uma aplicação clicando no execute sem que a mesma tenha sido compilada por completo.
Entenda que em ambiente Java, cada servlet é compilado e copiado para diretório especificamos o contexto dentro do TomCat ("Servlet directory").
Diretório lib
Neste momento já montamos todas as configurações e nossa aplicação está quase em execução. Antes, devemos copiar um arquivo para dentro do nosso contexto no TomCat.
Como foi especificado no ClassPath, necessitamos colocar o gxclassr.zip e o iText.jar dentro do diretório do lib de nosso contexto para que nossa aplicação funcione.
Para isso:
Dentro do GeneXus, clique em:
Tools / Explore Model Target Path
Abra a pasta Web e copie o arquivo gxclassr.zip e o iText.jar para dentro do diretório:
C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\gxteste\WEB-INF\lib
Após, renomeie este arquivo de gxclassr.zip para gxclassr.jar, pois o TomCat não entende o arquivo .zip como uma possibilidade válida de classe, o que não ocorre na maioria dos outros servidores de servlet.
Nota: O Windows possui uma propriedade chamada "Ocultar as extensões dos tipos de arquivos conhecidos". Isso pode confundir algumas pessoas e ao renomear o arquivo gxclassr.zip, ele acaba se transformando em gxclassr.jar.zip e desta forma o servidor não funciona. Para alterar esta propriedade e ter certeza de sua alteração, abra o Windows Explorer e clique em Ferramentas / Opções de pasta / Modo de exibição e desmarque a opção de ocultar extensões.
Outra forma de saber e ter certeza desta alteração é ver o ícone do arquivo. O arquivo "*.jar" deve ter um ícone diferente do ícone do "*.zip".
Pressione F5 para abrir a tela de execução e compilação.
Antes de compilar ou executar, clique em Options.
Note que são as mesmas configurações que informamos ao criarmos o modelo.
Clique em Advanced.
Uma janela como esta será aberta. Marque "Use Default Browser" informando que será utilizando o Browser padrão instalado e configurado em seu sistema. Caso você queira visualizar com outro browser, como por exemplo o Netscape Navigator, informe o caminho onde se encontra o executável do Netscape.
Não altere nenhuma outra configuração.
Clique em Ok e em Ok novamente.
Na tela de execução, clique sobre o nome de seu WebPanel e clique em Compile.
A compilação deve ser feita e o Status deve estar como Succeeded. Qualquer problema neste momento informa que suas configurações não foram feitas corretas.
Caso não esteja correta, verifique novamente todas as suas configurações.
Caso compile sem problemas, clique em Close.
Após compilar, o próximo passo será a execução. Clique em Execute.
Sua aplicação será executada sem problemas.
Caso a mesma não seja executada, verifique novamente todas as configurações.
Drivers JDBC Próximo passo

Last update: April 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant