IBM J2EE Connector Tools Feature Versão 6.0.1.3 - Leia-me

Para IBM Rational Application Developer 6.0.1  ou 6.0.1.1 e IBM Rational Software Architect 6.0.1 ou 6.0.1.1

© Copyright IBM Corporation 2000, 2006. Todos os direitos reservados.

Para visualizar a versão mais recente deste arquivo, consulte o leia-me em www3.software.ibm.com/ibmdl/pub/software/rationalsdp/rad/601/html/J2C6013/nl/pt_BR/Readme_6013.html

Este arquivo está disponível nos seguintes idiomas nacionais:

Português do Brasil Chinês - Simplificado Chinês - Tradicional
Francês Alemão Italiano
Japonês Coreano Espanhol

Conteúdo

1.0 Sobre Este Release
   1.1 Histórico de Correção do Produto
2.0 Informação sobre Instalação
   2.1 Requisitos de Hardware
   2.2 Requisitos de Software
   2.2.1 WebSphere® Application Server
   2.2.2 Adaptadores de Recursos
   2.2.3 CICS Transaction Gateway
3.0 Limitações, Problemas e Soluções Alternativas Conhecidas
4.0 Suporte ao Cliente
5.0 Avisos e Marcas Registradas

1.0 Sobre Este Release

As ferramentas do J2EE Connector (J2C) Architecture permitem criar aplicativos J2EE que integram e estendem operações e dados em seus EIS (Enterprise Information Systems) existentes.

Este release contém correções e aplica manutenção aos adaptadores de recursos IMS incluídos no Rational® Application Developer e no Rational Software Architect. Após aplicar a atualização:

1.1 Histórico de Correção do Produto

As seguintes correções estão incluídas neste release do Recurso J2EE Connector Tools:

1.1.1 Modificações dos adaptadores de recursos IMS:

O IMS Connector para Java Versões 9.1.0.1.3a e 9.1.0.2.2a estão incluídos, para fins de desenvolvimento, no Recurso J2EE Connector Tools Versão 6.0.1.3 para IBM Rational Application Developer Versão 6.0.1.2. 6.0.1.1 ou 6.0.1. Eles são releases de manutenção (não uma nova função) e incluem as seguintes atualizações:

A função atual de nova tentativa no IMS Connector para Java permite que o IMS Connector para Java tente restabelecer uma conexão sempre que encontrar uma falha na comunicação no processo de envio de um pedido ou no recebimento de uma resposta do IMS Connect. Essa função foi implementada no nível de interação e foi determinada que essa implementação deveria levar às interações duplicadas, em casos onde um pedido foi enviado ao IMS e executado, mas a saída não foi entregue ao IMS Connector para Java. Se, nessa situação, o IMS Connector para Java recebeu um erro de conexão ao aguardar por uma resposta, o IMS Connector para Java deve tentar a interação novamente. Isso pode levar a interações duplicadas sendo processadas no IMS. Para eliminar essa possibilidade, a função de nova tentativa baseada em interação atual foi desativada neste release de manutenção.

Se o IMS Connector para Java recebe uma resposta e é notificado de que há saída adicional (secundária) disponível a ser recebida, como o IMS Connector para Java é apto a retornar apenas uma mensagem de saída por interação, o IMS Connector para Java efetuará NAK de todas as saídas secundárias, fazendo com que fiquem na fila de suspensão OTMA antes de retornar à primeira resposta recebida. Se um erro ocorrer enquanto o IMS Connector para Java está efetuando NAK da saída secundária, o IMS Connector para Java descartará atualmente a saída original e retornará uma exceção ao cliente contendo esse erro. Como um resultado, a saída original será perdida e não recuperável. Este problema foi corrigido neste release de manutenção, alterando o comportamento do IMS Connector para Java nesta situação, tal que o IMS Connector para Java retornará agora a mensagem de saída original e ignorará o erro ocorrido ao efetuar NAK da saída secundária. A saída secundária não entregue continuará a ser roteada à fila de suspensão OTMA.

Se um aplicativo tentar recuperar uma mensagem de saída utilizando a interação SYNC_RECEIVE_ASYNCOUTPUT e essa mensagem for originada de um cliente não OTMA (por exemplo, um terminal 3270, em vez de um IMS Connector para aplicativo cliente baseado em Java), ele receberá um "ICO0026E: com.ibm.ims.ico.IMSOutputOTMAMsg@2637e2ea.setMsg(byte[]) error." em vez da mensagem. Isso poderia ocorrer se um cliente não OTMA iniciar um aplicativo IMS, que, por sua vez, faz um ISRT para um ALTPCB. Quando o IMS Connector para aplicativo cliente baseado em Java tentar recuperar a mensagem, o OTMA inclui os segmentos "Controle", "Estado" e "Segurança" ao cabeçalho da mensagem. Em seguida, a saída DFSYDRU0 deve incluir o segmento "Dados do Usuário" ao cabeçalho da mensagem. Se não o fizer, o IMS Connector para Java emitirá a exceção acima, visto que o IMS Connector para Java depende que o segmento Dados do Usuário seja apresentado. Com essa correção, o IMS Connector para Java emitirá uma exceção mais significativa: "ICO0027E: com.ibm.ims.ico.IMSOutputOTMAMsg@xxxxxxxx.setMsg(byte[]) error. The OTMA header of the IMS output message did not contain a USER DATA segment."

Se estiver executando uma transação two-phase commit utilizando uma conexão IMS compartilhável, as credenciais de segurança apropriadas podem ser utilizadas. Se você transmitir "UserA" no IMSConnectionSpec ao obter uma conexão pela primeira vez, esse ID é utilizado como esperado. Se estiver no aplicativo CCI e não fechar a ConnectionA, mas obtiver uma nova conexão com o "UserB" especificado em IMSConnectionSpec, ConnectionB utilizará corretamente as credenciais de segurança de "UserB". No entanto, se seu aplicativo CCI retorna e utiliza a ConnnectionA novamente (como não estava fechada), ConnectionA estará utilizando as credenciais de "UserB". Para corrigir esse problema, o método IMSConnectionRequestInfo.equals() foi alterado, de maneira a observar o nome do usuário e a senha de um candidato IMSConnectionRequestInfo para verificar se correspondem aos valores necessários para a interação atual. Isso assegura que, quando um aplicativo solicita uma conexão com "UserB" no IMSConnectionSpec, como descrito no exemplo no parágrafo anterior, uma manipulação da conexão para um novo objeto IMSManagedConnection será retornada e não haverá compartilhamento, visto que a conexão existente no pool possui "UserA" em IMSConnectionSpec. O novo objeto IMSManagedConnection possui corretamente as credenciais de "UserB". Se o aplicativo retornar e tentar reutilizar a conexão que possui "UserA" no IMSConnectionSpec, ele obterá a conexão original com as credenciais de segurança corretas para "UserA."

O método de execução (da classe IMSInteraction), que leva dois parâmetros, um IMSInteractionSpec e um Registro de entrada, foi reprovado neste release de manutenção. O método de execução que leva um IMSInteractionSpec e a um Registro de entrada e um registro de saída como parâmetros não foi reprovado. Isso foi feito para evitar que os aplicativos CCI sejam utilizados inadvertidamente, utilizando o método de execução que não possui um registro de saída para interações que retornam saída.

1.1.2 Case in-sensitive to file extension.

Permite que as extensões do arquivo de origem cobol estejam em qualquer caso.

Isto é, sem distinção entre maiúsculas e minúsculas pode aceitar .CBL e .cbl..

1.1.3 PK23138:Copybook - TD Formula incorrect for ODO occurring after a redefine

Comentário Inicial:
Se um OCCURS DEPENDING ON ocorrer após uma redefinição, a fórmula para a redefinição está incorreta. Para a seguinte estrutura COBOL:

01 LK-TH-COLT-ITEM.
05 LK-TH-COLT-DDA-IND

05 LK-TH-COLT-POSTED-DATE PIC S9(9) COMP-3.
05 LK-TH-COLT-VALUE-DATE PIC S9(9) COMP-3.
05 LK-TH-COLT-DB-CR-IND PIC X.
05 LK-TH-COLT-TX-AMOUNT PIC S9(11)V99 COMP-3.
05 LK-TH-COLT-BALANCE-X PIC X(7).
05 LK-TH-COLT-BALANCE REDEFINES LK-TH-COLT-BALANCE-X
PIC S9(11)V99 COMP-3.
05 LK-TH-COLT-DDA-TRAN-CODE PIC S9(5) COMP-3.
05 LK-TH-COLT-CBA-TRAN-CODE PIC S9(5) COMP-3.
05 LK-TH-COLT-DELIVERY-CHANNEL PIC X(6).
05 LK-TH-COLT-BACKDATE-IND PIC X(1).
05 LK-TH-COLT-SERIAL-NUMBER PIC S9(13) COMP-3.
05 LK-TH-COLT-TRACE-NUMBER PIC S9(11) COMP-3.
05 LK-TH-COLT-NO-OF-LINES PIC S9(3) COMP-3.
05 LK-TH-COLT-LINES OCCURS 1 TO 4 TIMES
DEPENDING ON LK-TH-COLT-NO-OF-LINES.
10 LK-TH-COLT-DESC-LINE PIC X(21).

A fórmula para contentSize da estrutura é gerada para ser:
add(61,mpy(21,val(1,14)))
A fórmula deve ser:
add(54,mpy(21,val(1,14)))

Isso aparece para ambos os elementos da redefinição que são incluídos juntos, para fornecer 7 bytes extras! Apenas um item da redefinição deve ser utilizado no cálculo de offset de base. Esse problema existe nas bases de código da V6 e Constellation.

Uma redefinição complexa também deve ser observada com redefinições intermixadas, para assegurar que as fórmulas são calculadas corretamente.

1.1.4 PK22886:NPE (Null Pointer Exception) for J2C app with multiple ODOs in copybook

Se você gerar algumas classes J2C Java de um copybook COBOL utilizando o  Rational Application Developer.

O processo gerado pareceu funcionar bem,  mas, no tempo de execução, você obterá um NullPointerException. O que é único nesta situação é que há vários ODOs, não ODOs dentro de ODOs,
mas vários ODOs.                                

1.1.5 PK25739:No .trim()' added to the end of the equals comparison. for code generated  

Adding trim() to the result of the getter method.

Inclua um

@type-descriptor.recognition-desc pattern="xxxx"

doclet a um método em um databinding que retorna uma Cadeia.

Ao salvar, o método match() gerado deve efetuar um 'equals()' com um .trim() sendo incluído ao resultado do método getter.

Algo como:

if ("xxxx".equals (getFoo().trim()))

1.1.6 COBOL TO JAVA IMS MAPPING CHANGES DEFAULT "START IN" FOLDER.

Descrições dos Problemas

RAD é iniciado de um valor com o valor de atalho "Start in"
de c:\www\server1\config. Ao criar um IMS Cobol para mapeamento Java,   
esse valor "Start in" será alterado para qualquer    
pasta que o usuário procurar pelo arquivo Cobol.                 

Reproduza as instruções:   

Crie um atalho para ativar o espaço de trabalho.  Configure o atalho   
"Start in:" para "C:\www\server1\config".  Assegure-se de que                
"C:\www\server1\config" existe.                                
Inicie o servidor WTE WAS 5.1.1.                                
http://localhost/DefaultDir/servlet/test.DefaultDirServlet     
O servlet retornará:                                           
        getCanonicalPath() = C:\www\server1\config             
Pare o servidor                                                
Gere o IMS Data Mapping.  (cópia fornecida do Cobol in        
WebContent/cobol)                                              
Inicie o servidor WTE WAS 5.1.1                                  
http://localhost/DefaultDir/servlet/test.DefaultDirServlet     
O servlet retornará:                                           
        getCanonicalPath() = C:\Rad Save                       
Workspaces\CobolMappingDefaultDir\DefaultDirWEB\WebContent\cobol

1.1.7 PMR 22509,004,000

TCPIPGroup_@Cust@__@Cust and LocalOptionGroup_@Cust@__@Cust@_ property Not set causing runtime errors

Descrição do Problema:

created a J2C bean with IMS Connectors and a JNDI connection targetting WAS 5.x (use JNDI wizard) in a managed connection enviornment..

Se é uma conexão gerenciada, as informações sobre autenticação da conexão JNDI estão vazias.

Ao executar, há erros em algumas propriedades não configuradas: - TCPIPGroup_@Cust@_@Cust@ e  LocalOptionGroup_@Cust@__@Cust@_

Ao examinar as informações de configuração do servidor WAS 5.x, você verá esses dois PropertyGroups extras nas connection factories.

Correção:

Não preencha mais os grupos de propriedades extras na configuração do servidor.

1.1.8 PMR 14814,379,000

O recurso J2C Connector Tools sobrescreve a tarefa Ant Padrão do Apache - "INPUT" .

Descrição do Problema:

Como reproduzir o problema:                                      
-certifique-se de que o J2EE Connector Tool está instalado               
-abra o RAD                                                      
-verifique se há um Tipo de <entrada> customizado na guia                 
 -Janela > Preferências > Ant > Tempos de Execução > Tipos             
-crie um arquivo simples do Ant, build.xml                             
-insira a guia de <entrada> com os atributos Apache padrão         
-tente Executar a compilação Ant                                      
-a construção falhará com a mensagem de erro 'The <input> type      
doesn't support the "message" attribute.'

Correção:

O tipo ant do J2C input foi alterado para j2cinput para evitar o conflito.

Se você tiver algum script Ant do J2C gravado com o tipo ant do J2C input, deverá alterá-lo para j2cinput

2.0 Informações de Instalação

Para obter informações sobre a instalação do recurso J2EE Connector Tools, consulte www3.software.ibm.com/ibmdl/pub/software/rationalsdp/rad/60/install_instruction/ifeature_instruction/J2C6013/nl/install_pt_BR.html

2.1 Requisitos de Hardware

Consulte as instruções de instalação para os requisitos de hardware para a instalação do recurso J2EE Connector Tools.

2.2 Requisitos de Software

É necessário ter um dos seguintes produtos instalados antes de ser possível instalar o recurso:

Se você desenvolver um aplicativo utilizando as ferramentas do J2C e executá-lo no WebSphere Application Server Versão 5, certifique-se de ter a manutenção necessária aplicada ao WebSphere Application Server Versão 5. Consulte a Seção 2.2.1 WebSphere Application Server para obter detalhes.

Consulte as instruções de instalação para obter detalhes adicionais sobre o software e as especificações suportadas pelo recurso J2EE Connector Tools.

Para obter detalhes sobre o software e as especificações suportadas por uma ferramenta específica no Rational Application Developer ou o Rational Software Architect, consulte a ajuda on-line.

2.2.1 WebSphere Application Server

O WebSphere V5.0 e o WebSphere V5.1 suportam o J2C 1.0. Os níveis de serviço do WebSphere Application Server requeridos para utilizar o J2EE Connector Tools estão listados na tabela a seguir. Os ambientes de teste de nível anterior disponíveis com o Rational Application Developer ou o Rational Software Architect V6.0 exigem o serviço listado na coluna WAS Distributed Service Level Required (Nível de Serviço Distribuído do WAS Exigido) na tabela. As correções acumulativas do WebSphere Application Server, por exemplo WAS 5.0.2.8, estão disponíveis a partir do site de suporte do WebSphere Application Server (www.ibm.com/software/webservers/appserv/was/support). As Correções do Integration Edition RunTime para 5.0 e 5.1, estão disponíveis a partir de www.ibm.com/support/docview.wss?rs=180&context=SSEQTP&dc=D410&dc=D420&uid=swg24004796&loc=en_US&cs=utf-8&lang=en. Os PTFs do WebSphere Application Server para z/OS® estão disponíveis no site de suporte do WebSphere Application Server para z/OS www.ibm.com/software/webservers/appserv/zos_os390/support/

WebSphere Application Server Nível de Serviço Distribuído do WAS Requerido Nível de Serviço Requerido do WAS para z/OS
5.0.x
  • Correção Acumulativa 5.0.2.8
  • Correções do Integration Edition RunTime para 5.0
W502023 (PTF UK00329)
5.1.x
Correções do Integration Edition RunTime para 5.1
W510205 (PTF UK0028)

O WebSphere V6 suporta aplicativos J2C 1.5.

2.2.2 Adaptadores de Recursos

Os seguintes adaptadores de recursos são suportados nas ferramentas J2C:

2.2.3 CICS Transaction Gateway

O software suportado para o CICS Transaction Gateway (CICS TG) está localizado em www-1.ibm.com/support/docview.wss?uid=swg21239203

3.0 Limitações, Problemas e Soluções Alternativas Conhecidos

3.1.1

As limitações encontradas no IBM ® J2EE Connector Tools Feature Versão 6.0.1 também se aplicam a este release.

3.1.2

Em muitos casos, as atualizações do adaptador de recursos IMS podem exigir APARs de co-requisito para o IMS Connect e IMS. Para obter informações sobre as APARs de co-requisito, consulte o seguinte Web site www.ibm.com/ims.

3.1.3

Não é possível ter várias versões de um adaptador de recursos em nenhuma versão do WebSphere® Application Server. O problema é que há apenas um único caminho de classe/carregador no WebSphere® Application Server; por isso, ele combinará classes dos dois níveis e você terá um comportamento indefinido.

3.1.4

PMR 03591:Annotation  Builder Performance Issue

Descrição do Problema

O construtor de anotações reconstruirá automaticamente todas as classes de ligação de dados, se você fizer alterações na guia de anotação.

Há casos em que as classes de ligação de dados contêm vários métodos get/set e qualquer reconstrução demorará muito. A CPU chegará a 100% e

O usuário pode imaginar que a ferramenta/ sistema foi interrompido. Na verdade, não está interrompido e retornará após o final da reconstrução. Algumas vezes, isso pode demorar 20 minutos, dependendo de quantos métodos estão nas classes de ligação de dados.

Solução Alternativa

3.1.5

Corpo do método incompleto em artefatos migrados, ao utilizar a linha de comandos WSADSIE para a ferramenta de migração RAD J2C.

Descrição do Problema

Se você utilizar a linha de comandos J2CMigration.bat/J2CMigration.sh para migrar seus WSDLs ao J2C Java Beans ou Ligação de Dados, você descobrirá que parte do corpo do método está vazio, apesar das tags doclets serem geradas nos métodos.

O gravador retornou à ferramenta de linha de comandos antes do construtor de anotações concluir a geração de códigos do corpo do método, com base nas tags doclets.

Solução Alternativa

Será necessário ativar o espaço de trabalho migrado utilizando o ambiente de trabalho. Em seguida, o construtor de anotações será reconstruído e todos os corpos dos métodos serão gerados e compilados.

4.0 Suporte ao Cliente

A home page do produto para o Rational Application Developer é www.ibm.com/software/awdtools/developer/application/. Para obter as Perguntas Mais Freqüentes, as listas de problemas conhecidos e correções e outras informações de suporte, visite a página de suporte em www.ibm.com/software/awdtools/developer/application/support/.

A página inicial do produto para o Rational Software Architect é www.ibm.com/software/awdtools/architect?swarchitect/. Para obter as Perguntas Mais Freqüentes, as listas de problemas conhecidos e correções e outras informações de suporte, visite a página de suporte em www.ibm.com/software/awdtools/architect/swarchitect/support/.

5.0 Avisos e Marcas Registradas

© Copyright IBM Corporation 2000, 2006. Todos os direitos reservados.

A Documentação do XDoclet incluída neste produto IBM é utilizada com permissão e inclui a seguinte declaração de atribuição de copyright: Copyright © 2000-2006, XDoclet Team. Todos os direitos reservados.

Partes baseadas em Design Patterns: Elements of Reusable Object-Oriented Software, de Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides, Copyright © 1995 de Addison-Wesley Publishing Company, Inc. Todos os direitos reservados.

Estas informações foram desenvolvidas para produtos e serviços oferecidos nos Estados Unidos. É possível que a IBM não ofereça os produtos, serviços ou recursos discutidos nesta publicação em outros países. Consulte seu representante IBM local para obter informações sobre os produtos e serviços atualmente disponíveis em sua área. Referências a produtos, programas ou serviços IBM não significam que apenas produtos, programas ou serviços IBM possam ser utilizados. Qualquer produto, programa ou serviço funcionalmente equivalente, que não infrinja nenhum direito de propriedade intelectual da IBM ou outros direitos legalmente protegidos, poderá ser utilizado em substituição a este produto, programa ou serviço. Entretanto, a avaliação e verificação da operação de qualquer produto, programa ou serviço não-IBM são de responsabilidade do Cliente.

A IBM pode ter patentes ou solicitações de patentes pendentes relativas a assuntos tratados nesta documentação. O fornecimento desta publicação não garante ao Cliente nenhum direito sobre tais patentes. Pedidos de licença devem ser enviados, por escrito, para:


Gerência de Relações Comerciais e Industriais da IBM Brasil
Av. Pasteur, 138-146
Botafogo
Rio de Janeiro, RJ
CEP: 22290-240

Para pedidos de licenças com relação a informações sobre DBCS (Conjunto de Caracteres de Byte Duplo), entre em contato com o Departamento de Propriedade Intelectual da IBM em seu país ou envie pedidos, por escrito, para:

IBM World Trade Asia Corporation
Licensing
2-31 Roppongi 3-chome, Minato-ku
Tokyo 106, Japan

O parágrafo a seguir não se aplica a nenhum país em que tais disposições não estejam de acordo com a legislação local: A INTERNATIONAL BUSINESS MACHINES CORPORATION FORNECE ESTA PUBLICAÇÃO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE NENHUM TIPO, SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS IMPLÍCITAS DE MERCADO OU DE ADEQUAÇÃO A UM DETERMINADO PROPÓSITO. Alguns países não permitem a exclusão de garantias expressas ou implícitas em certas transações; portanto, essa disposição pode não se aplicar ao Cliente.

Estas informações podem conter imprecisões técnicas ou erros tipográficos. Periodicamente, são feitas alterações nas informações aqui contidas; tais alterações serão incorporadas em futuras edições desta publicação. A IBM pode, a qualquer momento, aperfeiçoar e/ou alterar os produtos e/ou programas descritos nesta publicação, sem aviso prévio.

Referências nestas informações a Web sites não-IBM são fornecidas apenas por conveniência e não representam de forma alguma um endosso a esses Web sites. Os materiais contidos nesses Web sites não fazem parte dos materiais deste produto IBM e a utilização desses Web sites é de inteira responsabilidade do Cliente.

A IBM pode utilizar ou distribuir as informações fornecidas da forma que julgar apropriada sem incorrer em qualquer obrigação para com o Cliente.

Licenciados deste programa que desejam obter informações sobre este assunto com objetivo de permitir: (i) a troca de informações entre programas criados independentemente e outros programas (incluindo este) e (ii) a utilização mútua das informações trocadas, devem entrar em contato com:

Gerência de Relações Comerciais e Industriais da IBM Brasil
Av. Pasteur, 138-146
Botafogo
Rio de Janeiro, RJ
CEP: 22290-240

Tais informações podem estar disponíveis, sujeitas a termos e condições apropriadas, incluindo em alguns casos, o pagamento de uma taxa.

O programa licenciado descrito neste documento e todo o material licenciado disponível são fornecidos pela IBM sob os termos do Contrato com o Cliente IBM, do Contrato de Licença do Programa Internacional IBM ou de qualquer outro contrato equivalente.

Todos os dados sobre desempenho aqui descritos foram determinados em um ambiente controlado. Portanto, os resultados obtidos em outros ambientes operacionais poderão variar significativamente. Algumas medidas podem ter sido tomadas em sistemas de nível de desenvolvimento e não há garantia de que estas medidas serão iguais em sistemas geralmente disponíveis. Além disso, algumas medidas podem ter sido estimadas por extrapolação. Os resultados reais podem variar. Os usuários deste documento devem verificar os dados aplicáveis para seu ambiente específico.

As informações sobre produtos não-IBM foram obtidas junto aos fornecedores dos respectivos produtos, de seus anúncios publicados ou de outras fontes disponíveis publicamente. A IBM não testou estes produtos e não pode confirmar a precisão do desempenho, compatibilidade nem qualquer outra reivindicação relacionada a produtos não-IBM. Dúvidas sobre os recursos de produtos não-IBM devem ser encaminhadas diretamente a seus fornecedores.

Todas as declarações relacionadas aos objetivos e intenções futuras da IBM estão sujeitas a alterações ou cancelamento sem aviso prévio e representam apenas metas e objetivos.

Estas informações contêm exemplos de dados e relatórios utilizados nas operações diárias de negócios. Para ilustrá-los da forma mais completa possível, os exemplos podem incluir nomes de indivíduos, empresas, marcas e produtos. Todos estes nomes são fictícios e qualquer semelhança com nomes e endereços utilizados por uma empresa real é mera coincidência.

LICENÇA DE DIREITOS AUTORAIS:

Estas informações contêm programas de aplicativos de exemplo na linguagem fonte, ilustrando as técnicas de programação em diversas plataformas operacionais. O Cliente pode copiar, modificar e distribuir estes programas de exemplo sem a necessidade de pagar à IBM, com a finalidade de desenvolvimento, utilização, marketing ou distribuição de programas aplicativos em conformidade com a interface de programação de aplicativo para a plataforma operacional para a qual os programas de exemplo são criados. Esses exemplos não foram completamente testados sob todas as condições. A IBM, portanto, não pode garantir ou inferir confiabilidade, possibilidade de assistência ou função desses programas.

Cada cópia ou parte destes programas de amostra ou de qualquer trabalho derivativo deve incluir um aviso de direitos autorais com os dizeres:

© (nome da sua empresa aqui) (ano). Partes deste código são derivadas dos Programas de Exemplo da IBM Corp. © Copyright IBM Corporation. 2000, 2006. Todos os direitos reservados.

Se estiver visualizando uma cópia eletrônica destas informações, as fotografias e ilustrações coloridas podem não aparecer.

Informações sobre a Interface de Programação

Essas informações destinam-se a ajudá-lo na criação de software aplicativo utilizando esse programa.

As interfaces de programação de uso geral permitem gravar software aplicativo que obtém os serviços das ferramentas desse programa.

No entanto, estas informações também podem conter informações sobre diagnósticos, modificações e ajustes. As informações de diagnósticos, modificações e ajustes são fornecidas para ajudá-lo a depurar o software aplicativo.

Aviso: Não utilize estas informações sobre diagnósticos, modificações e ajustes como uma interface de programação, pois elas estão sujeitas a alterações.

Marcas Registradas e Marcas de Serviço

Os termos a seguir são marcas registradas da International Business Machines Corporation nos Estados Unidos e/ou em outros países:

Java e todas as marcas baseadas em Java são marcas registradas da Sun Microsystems, Inc. nos Estados Unidos e/ou em outros países.

Windows® e Windows NT® são marcas registradas da Microsoft® Corporation nos Estados Unidos e/ou em outros países.

Intel® e Pentium® são marcas registradas da Intel Corporation ou de suas subsidiárias nos Estados Unidos e/ou em outros países.

UNIX® é uma marca registrada da The Open Group nos Estados Unidos e em outros países.

Linux® é uma marca registrada da Linus Torvalds nos Estados Unidos e/ou em outros países.

Outros nomes de empresa, produtos ou serviços podem ser marcas registradas ou marcas de serviço de terceiros.