O Cenário de Consumo para Migração de Serviço

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:
  1. 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.
  2. 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 Serviços Corporativos > Gerar Proxy de Serviço. 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.
  3. 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.
  4. 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:
  1. Copie o projeto Java do proxy do cliente para o novo espaço de trabalho e importe-o indo para Arquivo > Importar > Projeto Existente para Espaço de Trabalho.
  2. 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.
  3. 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).
  4. 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.
  5. 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.
  6. Um componente genérico aparecerá no diagrama de Montagem. Selecione-o e vá para a visualização Propriedades.
  7. 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).
  8. Na guia Detalhes você verá que esse componente tem uma interface - aquela que você arrastou e soltou sobre o Editor de Montagem.
  9. De volta ao Editor de Montagem, clique com o botão direito do mouse no componente que acabou de criar e selecione Gerar Implementação… > Java 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:
  1. Mova a lógica da classe Java original para essa classe, adaptando-a para a nova estrutura de dados.
  2. Crie uma instância privada da classe Java antiga dentro dessa classe Java gerada e escreva código para:
    1. Converter todos os parâmetros da classe de implementação Java gerada em parâmetros que a classe Java antiga espera.
    2. Chamar a instância privada da classe Java antiga com os parâmetros convertidos.
    3. 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.
Tarefas relacionadas
Migrando um Serviço do Transformador
Criando Exportações SCA para Acessar o Serviço Migrado

Feedback
(C) Direitos Autorais IBM Corporation 2005, 2006. Todos os Direitos Reservados.