Eis alguns conceitos básicos que devem ser compreendidos antes de utilizar o Net.Data. Em particular , o servidor HTTP sendo utilizado e o Sistema de Arquivos Integrados.
O Net.Data só pode ser invocado como um programa CGI (common gateway interface) no AS/400. Como um programa CGI, o Net.Data segue a interface CGI, que tornou-se um padrão: dados do cliente (ex: usuário do navegador), tais como formulários ou dados URL, são recebidos por um programa CGI do stdin, e dados de saída gerados por um programa CGI são devolvidos ao cliente através da gravação ao stdout.
Os pontos principais que devem ser observados se desejar executar o Net.Data com um servidor HTTP são se:
Se a resposta a estas duas questões foi sim, então o Net.Data pode ser utilizado com o servidor HTTP da sua escolha.
Uma observação final. Nas seções seguintes, mostraremos como instalar e utilizar o Net.Data com a utilização do Internet Connection for AS/400, que é o servidor HTTP que é a parte padrão do sistema operacional OS/400 na V3R2 e V3R7 (e releases subseqüentes). Se não estiver utilizando o Internet Connection for AS/400, será necessário determinar como ativar o servidor HTTP para que invoque o Net.Data como um programa CGI.
Assume-se que todas as referências de objeto que podem ser especificadas ao se utilizar o Net.Data estejam no formato nome do caminho. O nome do caminho informa ao sistema como localizar um objeto. O nome do caminho é expresso como uma seqüência de nomes de diretórios seguidos pelo nome do objeto. Diretórios individuais e o nome do objeto são separados por uma barra (/); por exemplo:
/diretório1/diretório2/arquivo
Os nomes de caminho estão intimamente ligados ao sistema de arquivos integrado.
O sistema de arquivos integrado é uma parte do OS/400 que suporta entrada/saída de fluxo e gerenciamento de armazenamento similar a sistemas operacionais de computadores pessoais e UNIX, enquanto fornece uma estrutura integrante sobre todas as informações armazenadas no AS/400.
Seguem abaixo alguns dos principais recursos do sistema de arquivos integrado:
Os sistemas de arquivos fornecem o suporte que permite que usuários e aplicações acessem segmentos específicos de armazenamento que estão organizados como unidades lógicas. Estas unidades lógicas são arquivos, diretórios, bibliotecas e objetos.
Cada sistema de arquivos possui um conjunto de estruturas lógicas e regras para interagir com as informações armazenadas. Estas estruturas e regras podem diferir de um sistema de arquivos para outro. Na verdade, do panorama das estruturas e regras, o suporte OS/400 para acessar arquivos de banco de dados e vários outros tipos de objetos através de bibliotecas pode ser considerado um sistema de arquivos. Do mesmo modo, o suporte OS/400 para acessar documentos (que não verdade são arquivos de fluxo) através de estruturas de pastas pode ser considerado um sistema de arquivos separado.
O sistema de arquivos integrado, na verdade, trata os suporte de biblioteca e o suporte de pastas como sendo sistemas de arquivos separados. Outros tipos de suporte de gerenciamento de arquivos que possuem recursos diferentes também são tratados como sistemas de arquivos separados. Eis alguns dos sistemas de arquivos disponíveis no AS/400:
Os nomes de caminho possuem o seguinte formato:
/Diretório/Diretório . . . /Objeto
Cada componente do nome de caminho pode ter até 255 caracteres de extensão, muito mais do que nos sistemas de arquivos QSYS.LIB ou QDLS. O nome completo do caminho pode ser extremamente extenso, até 16 megabytes. Não há limite em relação a profundidade da hierarquia de diretórios exceto os limites de espaço do programa e do sistema.
O sistema de arquivos preserva o mesmo formato de maiúsculas e minúsculas no qual os nomes de objetos são fornecidos, mas não há distinção entre maiúsculas e minúsculas quando o sistema pesquisa nomes.
Os nomes de caminho possuem o seguinte formato:
/Diretório/Diretório/ . . . /Objeto
Cada componente do nome de caminho pode ter até 255 caracteres de extensão. O nome completo do caminho pode ter até 16 megabytes. Não há limite em relação a profundidade da hierarquia de diretórios exceto os limites de espaço do programa e do sistema.
Ao contrário do sistema de arquivos "raiz" (/), o sistema de arquivos QOpenSys distingue entre maiúsculas e minúsculas ao pesquisar nomes de objetos. Por exemplo, um cadeia de caracteres fornecida com todos os caracteres em maiúsculas não irá corresponder à mesma cadeia de caracteres na qual um dos caracteres está em minúscula.
Cada componente do nome do caminho deve conter o nome do objeto seguido pelo tipo do objeto. Por exemplo:
/QSYS.LIB/CGI.LIB/MYPGM.PGM
/QSYS.LIB/EMP.LIB/PAY.FILE/TAX.MBR
O nome do objeto e o tipo do objeto são separados por um ponto (.). Objetos em uma biblioteca podem possuir o mesmo nome caso tenham tipos de objeto diferentes, então o tipo do objeto deve ser especificado para identificar exclusivamente o objeto. O nome do objeto em cada componente pode ter até 10 caracteres de extensão e o tipo do objeto pode ter até 6 caracteres. A hierarquia de objeto dentro do QSYS.LIB pode ter dois ou três níveis de profundidade (dois ou três componentes no nome do caminho), dependendo do tipo de objeto sendo acessado. Se o objeto for um arquivo de banco de dados, a hierarquia pode conter três níveis (biblioteca, arquivo, membro); caso contrário, pode haver apenas dois níveis (biblioteca, objeto). Se / e QSYS.LIB forem incluídos como os dois primeiros níveis, a hierarquia de diretório para QSYS.LIB poderá ter até cinco níveis de profundidade.
Geralmente, o sistema de arquivos QSYS.LIB não distingue entre maiúsculas e minúsculas nos nomes dos objetos. Uma busca por nomes de objetos alcançará os mesmos resultados independentemente dos caracteres nos nomes estarem em maiúsculas ou minúsculas. No entanto, se um nome estiver entre aspas, o formato de cada caractere no nome será preservado. Sendo assim, uma pesquisa que envolve nomes entre aspas, é sensível ao formato dos caracteres no nome entre aspas.
Para saber mais sobre o sistema de arquivos integrado, incluindo outros sistemas de arquivos não mencionados acima, consulte a Integrated File System Introduction.