Instalación del AS/400 WEBSERVER Para los web panels generados con el generador RPG, el AS/400 debe ser utilizado como el Servidor Web además de ser utilizado como el servidor de la base de datos. Para esto será necesario configurar el Servidor http en el AS/400. Veremos a configuración que requerimientos: Requerimientos 1. V3R7 (RISC) o superior. También puede utilizarse con la versión V3R2 (on la PTF Q6317320 y la biblioteca QSYSINC instaladas) 2. Tener configurado el TCP/IP. Para realizar una aplicación de Web Panels en el AS/400, es necesario tener una Base de conocimientos GeneXus con un modelo generando para RPG. En esa estructura, se hace referencia a dos bibliotecas: la de datos y la de programas. Estas bibliotecas deberán configurarse en el servidor http y en la descripción del trabajo que ejecutará el web panel. Configuración del Servidor HTTP El servidor HTTP tiene un archivo de configuración donde se mapean las URLs a paths en el AS. Imágenes y páginas estáticas de la aplicación Gran parte de los documentos del Web van a estar en el IFS (es el file system parecido al del PC), en algún subdirectorio, y los documentos se van a copiar desde el PC con el comando FTP. Estos documentos consisten en las páginas estáticas del sistema y los bitmaps (jpegs, gifs). Supongamos que vamos a tener los archivos del la raíz del web en un subdirectorio /Web. La copia desde el PC se hará con los siguientes comandos: 1. ftp -I as400.artech.com.uy (nombre del AS/400) Permite conectarse al AS/400 usando el protocolo FTP para poder transferir archivos. Mostrará la siguiente información Connected to as400.artech.com.uy.
220-QTCP at AS400. 220 Connection will close if idle more than 5 minutes. 2. User (as400.artech.com.uy:(none)): roberto 331 Enter password. Password:******** 230 ROBERTO logged on. Solicita el usuario y la contraseña a utilizar para conectarse al AS/400 3. Para crear el directorio a donde se copiarán las imágenes y/o las páginas estaticas, se debe usar el comando MKDIR ftp> mkdir /Web 250-NAMEFMT set to 1. 250 Created directory /pp 4. Para copiar los archivos desde el PC, se debe ubicar/posicionar en el directorio previamente creado y con el comando MPUT copiarlos. ftp> cd /Web 250 Current directory changed to /Web. ftp> mput c:\webfiles\*.* (Copiar los docs y jpegs del web al AS) 200 PORT subcommand request successful. 150 Sending file to /Web/default.html 250 File transfer completed successfully. 97 bytes sent in 0.00 seconds (97000.00 Kbytes/sec) 200 PORT subcommand request successful. 150 Sending file to /Web/artech.gif 250 File transfer completed successfully. 851 bytes sent in 0.00 seconds (851000.00 Kbytes/sec)
ftp> bye De esta manera se copian los archivos del PC al AS/400. Configuración del Servidor WEB Luego debemos configurar el Servidor Web para que mapee el Http://as400../ (el directorio raíz) al /Web y que mapee los programas cgi-bin a la biblioteca de programas modelo PGMLIB. Para hacer esto hay que logearse como QSECOFR Esto se realiza con los siguientes pasos: con el commando CFGTCPAPP se debe configurar el servidor http: CFGTCPAPP SERVER(*HTTP) Aparecerá el siguiente menú: Select one of the following: 1. Change HTTP attributes 2. Work with HTTP configuration Related options: 10. Configure workstation gateway Se debe ir a la opción 1 y seleccionar Autostart = *YES. El resto de las opciones no es necedsario modificarlas. Change HTTP Attributes (CHGHTTPA) Type choices, press Enter. Autostart........... *YES *YES, *NO, *SAME Number of server jobs: Minimum........... 3 1-200, *SAME, *DFT Maximum........... 5 1-200, *SAME, *DFT, *NOMAX Coded character set identifier 00819 1-65533, *SAME, *DFT Server mapping tables: Outgoing EBCDIC/ASCII table. *CCSID Name, *SAME, *CCSID, *DFT Library.......... Name, *LIBL, *CURLIB
Incoming ASCII/EBCDIC table. *CCSID Name, *SAME, *CCSID, *DFT Library.......... Name, *LIBL, *CURLIB Luego, en la opción 2 se realiza la configuración de bajo nivel. Se indicará la biblioteca en que están los web panels. 00010 # * * * * * * * * * * * * * * * * * * * * * * * * * 00020 # HTTP DEFAULT CONFIGURATION 00030 # * * * * * * * * * * * * * * * * * * * * * * * * * 00040 # 00050 # 00060 HostName as400.artech.com.uy 00070 # 00080 # The default port for HTTP is 80; Should specify port 00090 # if port 80 is not used. 00100 Port 80 00110 # 00120 Enable POST 00130 Enable GET 00140 Enable HEAD 00150 # Disable {all others} 00160 # 00180 Exec /cgi-bin/* /QSYS.LIB/PGMLIB.LIB/* Este es el mapeo para ejecutar los web panels de la PGMLIB, donde dice PGMLIB va el nombre de la biblioteca de programas del modelo de WEB Panels (Se soporta solamente una) 00240 Pass /* /Web/* Este es el mapeo del raíz al directorio /Web 00390 DirAccess On
Esto te permite ver listado de directorios por ejemplo si haces http://as400/ te mostraría el listado del directorio /Web Hay que eliminar cualquier otra línea que empiece con Exec, Pass, Map, Fail y Redirect y las líneas de Exec y Pass deben estar en ese orden. Estando en este paso, es posible realizar una pequeña prueba de la configuración, levantando el servidor (strtcpsvr *http) y accediendo a una de las páginas estáticas desde el browser (http://as400/paginit.html, siendo paginit.html una página copiada con FTP al directorio /Web). Configuración de la Descripción del Trabajo. Para poder ejecutar los web panels, es necesario configurar el trabajo (job) donde ejecutan los web panels para que la lista de bibliotecas incluya la GX, DTALIB y PGMLIB. Esto se hace cambiando la descripción del job QTCP/QTMHHTTP CHGJOBD JOBD(QTCP/QTMHHTTP) INLLIBL(DTALIB PGMLIB GX QTEMP QGPL) En este punto ya es posible ejecutar los web panels desde el Browser, para ello deberá usarse (siguiendo el ejemplo) la url: http://as400.artech.com.uy/cgibin/hmywebpanel.pgm. Notar que la extensión por defecto es pgm.