Nos casos em que não há nenhuma contraparte direta para um tipo de serviço do WebSphere Studio
Application Developer Integration Edition, um cenário de consumo é necessário para consumir o serviço antigo do WebSphere Studio Application Developer Integration
Edition como está ao reprojetar o aplicativo no WebSphere Integration
Developer.
A seguir há algumas etapas para executar no WebSphere Studio Application Developer
Integration Edition
antes de chamar o assistente de Migração:
- Crie um novo projeto Java para manter seu código do proxy de cliente. Não coloque esse código do proxy de cliente no projeto de serviço, porque as mensagens geradas no estilo 5.1
e as classes de
Java bean serão ignoradas pelo assistente de Migração automática
que migra projetos de serviço.
- Abra o WebSphere Studio
Application Developer Integration Edition e clique com o botão direito do mouse no arquivo WSDL que contém a ligação e o serviço do transformador e selecione .
Você será solicitado sobre o tipo de proxy que irá criar, mas apenas o WSIF (Web Services
Invocation Framework) estará disponível. Clique em Avançar.
- Você pode agora especificar o pacote e o nome da classe Java do proxy de serviço que irá criar (você criará o proxy no projeto de serviço atual). Clique em Avançar.
- Agora você pode especificar o estilo de proxy, escolher Stub de Cliente, selecionar as operações desejadas que irá incluir no proxy e clicar em Concluir.
Isto cria uma classe Java que expõe os mesmos métodos que o serviço do WebSphere Studio
Application Developer Integration Edition, em que os argumentos dos métodos
Java
são as partes da mensagem WSDL de origem.
Agora você pode migrar para o WebSphere Integration Developer:
- Copie o projeto Java do proxy do cliente para o novo espaço de trabalho e importe-o
indo para .
- Importe o projeto de serviço utilizando o assistente de Migração. Isto resultará na criação de um módulo do Business Integration
com Mensagens, PortTypes, Ligações e Serviços do WSDL gerados
no WebSphere Studio
Application Developer Integration Edition.
- Na
perspectiva Business Integration, expanda o módulo para que seja possível ver
seu conteúdo. Abra o Editor de Montagem dando um clique duplo no primeiro item
no projeto do módulo (ele terá o mesmo nome que o projeto).
- Para criar o componente Java customizado, sob o projeto do módulo, expanda Interfaces e selecione a interface WSDL que foi gerada para esse serviço de transformador no WebSphere Studio Application Developer
Integration Edition.
- Arraste e solte essa interface sobre o Editor de Montagem. Um diálogo aparecerá solicitando que você selecione o tipo de componente que irá criar. Selecione Componente sem Tipo de Implementação e clique em OK.
- Um componente genérico aparecerá no diagrama de Montagem. Selecione-o e vá para a visualização Propriedades.
- Na guia Descrição, você pode alterar o nome e o nome de exibição do componente para algo mais descritivo (nesse caso, nomeie-o para algo como seu nome do EJB, mas anexe um sufixo, como “JavaMed”, porque ele será um componente Java que faz mediação entre a interface WSDL gerada para o serviço de transformador no WebSphere Studio
Application Developer Integration Edition e a interface Java do proxy de cliente de transformador).
- Na guia Detalhes você verá que esse componente tem uma interface - aquela que você arrastou e soltou sobre o Editor de Montagem.
- De volta ao Editor de Montagem, clique com o botão direito do mouse no componente que acabou de criar e selecione Em seguida, selecione o pacote no qual a implementação Java será gerada.
Isso cria um esqueleto do serviço Java que adere à interface WSDL de acordo com o modelo de programação SCA, no qual os tipos complexos são representados por um objeto que é um commonj.sdo.DataObject e os tipos simples são representados por equivalentes de seus Objetos Java.
Agora, você precisará preencher o código no qual vê as tags “//TODO” na classe de implementação Java gerada. Existem duas opções:
- Mova a lógica da classe Java original para essa classe, adaptando-a para a nova estrutura de dados.
- Crie uma instância privada da classe Java antiga dentro dessa classe Java gerada e escreva código para:
- Converter todos os parâmetros da classe de implementação Java gerada em parâmetros que a classe
Java antiga espera.
- Chamar a instância privada da classe Java antiga com os parâmetros convertidos.
- Converter o valor de retorno da classe Java antiga para o tipo de valor de retorno declarado pelo método de implementação Java gerado.
Depois de concluir as opções acima, você deverá religar o proxy de cliente. Não deve haver nenhuma "referência", portanto, você precisa apenas religar a interface do componente Java:
- Se esse serviço for chamado por um processo de negócios no mesmo módulo, então, crie uma ligação da referência do processo de negócios adequada para essa interface do componente Java.
- Se esse serviço for chamado por um processo de negócios em outro módulo, crie uma Exportação com Ligação SCA e, a partir do outro módulo, arraste e solte essa exportação no Editor de Montagem desse módulo para criar a Importação com Ligação SCA correspondente. Ligue a referência do processo de negócios adequada àquela Importação.
- Se esse serviço tiver sido publicado no WebSphere Studio Application Developer Integration Edition para expô-lo externamente, então, consulte a seção "Criando Exportações do SCA para Acessar o Serviço Migrado" para obter instruções sobre como publicar novamente o serviço.