FeaturesPluginsDocs & SupportCommunityPartners

Guia de início rápido para o XSLT Designer

Visão geral

Neste tutorial, você conhece o XSLT Designer incluído no NetBeans IDE 6.0. O XSLT Designer é usado para desenvolver, implantar e testar os serviços de transformação XSL.

Um serviço de transformação XSL age como um serviço Web. Ele recebe mensagens de um serviço Web, transforma as mensagens de acordo com uma folha de estilo XSL e envia as mensagens de volta para o originador ou as encaminha para outro serviço Web.

Neste tutorial, você cria um serviço de transformação XSL simples que recebe uma mensagem, a transforma e a envia de volta para o serviço Web de chamada.

Pré-requisitos

Este tutorial presume que você tenha algum conhecimento básico ou experiência de programação com o NetBeans IDE.

Requisitos do sistema

Este tutorial presume que o seu sistema atende aos requisitos especificados na seção Requisitos do sistema das Notas de versão do NetBeans IDE 6.0.

Software necessário para o tutorial

Antes de começar, baixe e instale o software seguinte em seu computador: NetBeans IDE 6.0. Selecione a opção Baixar tudo. A opção Download completo inclui o SOA Pack e o servidor da aplicação GlassFish V2, que são necessários para este tutorial.

início

Configurando o ambiente do tutorial

Este tutorial requer que o servidor da aplicação GlassFish V2, que inclui o tempo de execução JBI, tenha sido instalado com o NetBeans IDE 6.0. Realize as etapas seguintes para confirmar se o servidor da aplicação GlassFish V2 está instalado com o NetBeans IDE 6.0 e que o tempo de execução JBI contém o mecanismo de serviço XSLT e a biblioteca de transformação compartilhada requerida para este tutorial:

  1. Abra a janela Serviços.
  2. Expanda o nó Servidores.
  3. Clique com o botão direito do mouse no nó GlassFish V2 e escolha Iniciar no menu pop-up.

    Se a opção Iniciar não estiver disponível e se houver um “emblema” verde ao lado do nó GlassFish V2, o servidor já está em execução.

    Servidor da aplicação em execução

  4. Depois que o servidor for iniciado, expanda o nó GlassFish V2 > JBI. Em seguida, expanda os nós Mecanismo de serviço e Bibliotecas compartilhadas para verificar se o mecanismo de serviço XSLT e a biblioteca de transformação compartilhada estão instalados.

    Servidor da aplicação em execução

início

Criando o projeto do módulo XSLT

Um serviço de transformação XSL é criado dentro de um projeto do módulo XSLT.

Para criar um novo projeto do módulo XSLT:

  1. No menu principal do IDE, escolha Arquivo > Novo projeto.
  2. Em Categorias, selecione SOA.
  3. Em Projetos, selecione Módulo XSLT.
  4. Clique em Próximo.

    Novo projeto do módulo XSLT

  5. No campo Nome do projeto, digite HelloXSLTransformation.
  6. Modifique a localização do projeto, ou aceite o padrão.

    Novo nome e localização do projeto

  7. Clique em Terminar.
  8. A janela Projetos agora contém um nó do projeto HelloXSLTransformation.

    HelloXSLTransformation na janela Projetos

Em seguida, você cria dois arquivos do esquema XML (.xsd), um arquivo de descrição do serviço Web (.wsdl) e uma arquivo de folha de estilo XSL (.xsl). Para executar um Serviço de transformação XSL, você precisa pelo menos de um esquema XML, um arquivo WSDL e uma folha de estilo XSL. Para fins deste tutorial, você cria dois esquemas XML.

início

Criando esquemas XML

Você criará dois esquemas XML: HelloXSLTIncoming.xsd e HelloXSLTOutgoing.xsd. Use o anterior como a base para a mensagem de entrada e o posterior como a base para a mensagem de saída.

Para criar o esquema XML da mensagem de entrada:

  1. Na janela Projetos, clique com o botão direito do mouse no nó HelloXSLTransformation > Arquivos de transformação e escolha Novo > Esquema XML.
  2. No campo Nome do arquivo, digite HelloXSLTIncoming.
  3. Clique em Terminar. Um novo nó—HelloXSLTIncoming.xsd—aparece sob o nó Arquivos de transformação em seu projeto HelloXSLTransformation e o novo esquema se abre no editor de esquemas XML.

    Esquema XML adicionado ao projeto

  4. Na primeira coluna da visualização Esquema, clique com o botão direito do mouse em Elementos e escolha Adicionar elemento no menu pop-up. A caixa de diálogo Adicionar elemento se abre.
  5. No campo Nome, digite name.
  6. Em Tipo, selecione o botão de opção Usar tipo existente.
  7. Expanda o nó Tipos internos e selecione string.
  8. Clique em OK.

    Caixa de diálogo Novo elemento do esquema

  9. Para visualizar o código-fonte do esquema que você criou, clique no botão Código-fonte na barra de ferramentas do editor de esquemas XML. Você deve ver o seguinte código:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                targetNamespace="http://xml.netbeans.org/schema/HelloXSLTIncoming"
                xmlns:tns="http://xml.netbeans.org/schema/HelloXSLTIncoming"
                elementFormDefault="qualified">
        <xsd:element name="name" type="xsd:string"></xsd:element>
    </xsd:schema>

Para criar o esquema XML da mensagem de saída:

  1. Na janela Projetos, clique com o botão direito do mouse no nó HelloXSLTransformation > Arquivos de transformação e escolha Novo > Esquema XML.
  2. No campo Nome do arquivo, digite HelloXSLTOutgoing.
  3. Clique em Terminar. Um novo nó —HelloXSLTOutgoing.xsd— aparece sob o nó Arquivos de transformação em sem projeto HelloXSLTransformation e o novo esquema se abre no editor de esquemas XML.
  4. Na primeira coluna da visualização Esquema, clique com o botão direito do mouse em Elementos e escolha Adicionar elemento no menu pop-up. A caixa de diálogo Elemento se abre.
  5. No campo Nome, digite greeting.
  6. Em Tipo, selecione o botão de opção Usar tipo existente.
  7. Expanda o nó Tipos internos e selecione string.
  8. Clique em OK.
  9. Para visualizar o código-fonte do esquema que você criou, clique no botão Código-fonte na barra de ferramentas do editor de esquemas XML. Você deve ver o seguinte código:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                targetNamespace="http://xml.netbeans.org/schema/HelloXSLTOutgoing"
                xmlns:tns="http://xml.netbeans.org/schema/HelloXSLTOutgoing"
                elementFormDefault="qualified">
        <xsd:element name="greeting" type="xsd:string"></xsd:element>
    </xsd:schema>
  10. Clique em Salvar todos na barra de ferramentas.

Você deve ver dois arquivos do esquema listados sob o nó Arquivos de transformação em seu projeto HelloXSLTransformation.

Dois arquivos do esquema no projeto

Observação: o editor de esquemas XML não é o assunto deste tutorial. Para obter informações detalhadas sobre o editor de esquemas XML, consulte Introdução às ferramentas do esquema XML.

início

Criando um arquivo WSDL

Em seguida, você cria um arquivo de descrição do serviço Web definindo a interface da Web do seu serviço de transformação XSL.

Para criar um arquivo WSDL:

  1. Na janela Projetos, clique com o botão direito do mouse no nó HelloXSLTransformation > Arquivos de transformação e escolha Novo > Documento WSDL.
  2. No campo Nome do arquivo, digite HelloXSLTWSDL, em seguida, clique em Próximo.
  3. Em Entrada na coluna Elemento ou tipo, clique no botão de reticências (...). A caixa de diálogo Selecionar elemento ou tipo é aberta.
  4. Selecione Por arquivo > HelloXSLTransformation > src/HelloXSLTIncoming.xsd > Elementos > nome e clique em OK.

    Selecione elemento Nome

  5. Em Saída na coluna Elemento ou tipo, clique no botão de reticências (...). A caixa de diálogo Selecionar elemento ou tipo é aberta.
  6. Selecione Por arquivo > HelloXSLTransformation > src/HelloXSLTOutgoing.xsd > Elementos > saudação e clique em OK.

    Selecione o elemento Saudação

  7. Clique em Próximo.
  8. No campo Tipo de vinculação, selecione SOAP.
  9. Em Subtipo de vinculação, selecione Literal de documento, em seguida, clique em Terminar.

Você deve ver o arquivo HelloXSLTWSDL.wsdl listado no nó Arquivos de transformação em seu projeto HelloXSLTransformation.

Um arquivo WSDL na janela Projetos

Observação: a criação e a edição de arquivos WSDL não são assunto deste tutorial. Para obter informações detalhadas, consulte Guia do desenvolvedor para o editor WSDL.

início

Criando uma folha de estilo XSL

Uma folha de estilo XSL é um arquivo XML que contém instruções sobre a transformação da mensagem de entrada na mensagem de saída.

Para criar uma folha de estilo XSL:

  1. Na janela Projetos, clique com o botão direito do mouse no nó HelloXSLTransformation > Arquivos de transformação e escolha Novo > Serviço XSLT.
  2. Em Tipo de serviço, selecione Serviço de solicitação-resposta. Clique em Próximo.
  3. Observe que HelloXSLTWSDL.wsdl é selecionado na lista suspensa Serviço Web. Clique em Próximo.
  4. No campo Arquivo XSL, digite HelloXSLTService. Clique em Terminar.

    O nó HelloXSLTService.xsl aparece sob o nó Arquivos de transformação em seu projeto HelloXSLTransformation. O arquivo HelloXSLTService.xsl abre na visualização Design do editor de transformação XSL. A Paleta da visualização Design se abre à direita.

    Editor de transformação XSL
    Clique para ampliar

  5. Na Paleta, expanda a seção String e arraste a função concat para o painel Transformações da visualização Design XSLT.

    A função Concat

  6. Na Paleta, na seção String, selecione a função string-literal e arraste-a para o painel Transformações. Clique duas vezes no campo da string de retorno para torná-lo editável e digite Olá (com um espaço no fim).
  7. Arraste a alça do lado direito do campo Olá para a alça do lado esquerdo da linha string1 na função Concat. Uma seta se encaixa para mostrar o fluxo.

    Conectando string-literal e concat

  8. Selecione o elemento Nome no painel da árvore de origem à esquerda, e arraste a alça para a linha string2 na função Concat.
  9. Arraste a alça da string de retorno para o elemento Saudação no painel da árvore de destino à direita. A visualização Design agora deve ser semelhante à seguinte:

    Mapeamento final

  10. Clique no botão Código-fonte na barra de ferramentas da visualização Design. Você deve ver o seguinte código:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:ns1="http://xml.netbeans.org/schema/HelloXSLTIncoming" xmlns:ns="http://xml.netbeans.org/schema/HelloXSLTOutgoing">
            <xsl:template match="/">
                    <xsl:element name="ns:greeting">
                            <xsl:value-of select="concat(&apos;Hello &apos;, /ns1:name)"/>
                    </xsl:element>
            </xsl:template>
    </xsl:stylesheet>
  11. Clique em Salvar todos na barra de ferramentas.

início

Criando e implantando a aplicação composta

Um projeto XSLT não pode ser implantado diretamente. Você deve primeiro adicionar um projeto XSLT como um módulo JBI a um projeto de aplicação composta antes de implantar o projeto de aplicação composta. O deployment do projeto torna a composição de serviço disponível no servidor da aplicação, permitindo, portanto, que suas unidades de serviço sejam executadas.

Para criar um projeto de aplicação composta:

  1. Escolha Arquivo > Novo projeto no menu principal.
  2. Em Categorias, selecione SOA.
  3. Em Projetos, selecione Aplicação composta. Clique em Próximo.
  4. No campo Nome do projeto, digite HelloXSLTCAP.
  5. Especifique uma localização do projeto ou aceite o padrão.
  6. Clique em Terminar.
  7. A janela Projetos agora contém um nó do projeto HelloXSLTCAP.

    Projeto de aplicação composta adicionado à janela Projetos

Para adicionar um módulo JBI:

  1. Clique com o botão direito do mouse no nó HelloXSLTCAP e escolha Adicionar módulo JBI no menu pop-up.
  2. Selecione o projeto HelloXSLTransformation e clique em Adicionar arquivos Jar do projeto.

    Adicionar um módulo JBI

  3. Para verificar se o módulo JBI foi adicionado, expanda HelloXSLTCAP > Módulos JBI .

    Módulo JBI adicionado

Para implantar a aplicação composta HelloXSLTCAP:

  1. Na janela Projetos, clique com o botão direito do mouse no nó HelloXSLTCAP e escolha Implantar projeto no menu pop-up.
    Observação: se a caixa de diálogo Aviso - Selecionar servidor aparecer, selecione Sun Java System Application Server 9 e clique em OK.
  2. Na janela Saída que abre na parte inferior do IDE, observe a mensagem CONSTRUÇÃO BEM-SUCEDIDA.
  3. Para verificar se o projeto foi implantado, expanda Sun Java System Application Server 9 > JBI > Associações de serviço na janela Tempo de execução. Você deve ver o nó HelloXSLTCAP.

    Composição de serviço

início


Realizando uma execução de teste do serviço de transformação XSL

Testar um serviço de transformação XSL significa enviar uma mensagem que o serviço esteja esperando e recebendo, nesse caso, uma mensagem de resposta.

Antes de realizarmos o teste, devemos criar um caso de teste.

Para criar um conjunto de teste:

  1. Na janela Projetos, expanda o nó HelloXSLTCAP e clique com o botão direito do mouse no nó Teste.
  2. No menu pop-up, selecione Novo caso de teste.
  3. No campo Nome do caso de teste, digite JohnSmith. Clique em Próximo.
  4. Em Selecionar o documento WSDL, expanda HelloXSLTransformation - Arquivos do processo XSLT e selecione HelloXSLTWSDL.wsdl. Clique em Próximo.
  5. Em Selecionar a operação a ser testada, expanda HelloXSLTWSDLBinding e selecione HelloXSLTWSDLOperation. Clique em Terminar.
  6. O nó JohnSmith aparece em HelloXSLTCAP > Teste e o arquivo da mensagem de entrada —Input.xml— se abre no editor.

    Mensagem de entrada

  7. No Input.xml, modifique a
     <hel:name>?string?</hel:name>
                    
    linha para
     <hel:name>John Smith</hel:name>
                    
    O arquivo Input.xml deve ser:
     <soapenv:Envelope xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:hel="http://xml.netbeans.org/schema/HelloXSLTIncoming">
            <soapenv:Body>
                    <hel:name>John Smith</hel:name>
            </soapenv:Body>
    </soapenv:Envelope>
                    
  8. Clique em Salvar todos na barra de ferramentas.

O nó Saída sob o nó do caso de teste se refere à mensagem de resposta esperada que é usada para comparação com as mensagens de resposta reais. Antes de executarmos o teste pela primeira vez, o arquivo Output.xml está vazio. Iremos preenchê-lo com o conteúdo da mensagem de resposta (desde que ela seja o que esperamos).

Para executar o teste:

  1. Clique com o botão direito do mouse no nó JohnSmith e selecione Executar. Observe que o teste falha e a caixa de diálogo seguinte aparece:

    Caixa de diálogo Sobrescrever

  2. Clique em Sim. Observe que o nó do teste falho aparece abaixo do nó Saída.

    Nó Teste falho

  3. Clique duas vezes no nó do teste falho para ver a mensagem que o Serviço de transformação XSL envia de volta:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://xml.netbeans.org/schema/HelloXSLTOutgoing">
            <SOAP-ENV:Header/>
            <SOAP-ENV:Body>
                    <ns:greeting xmlns:ns="http://xml.netbeans.org/schema/HelloXSLTOutgoing">Hello John Smith</ns:greeting>
            </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Observe a linha
     <ns:greeting xmlns:ns="http://xml.netbeans.org/schema/HelloXSLTOutgoing">Hello John Smith</ns:greeting>
                    
    O Serviço de transformação XSL recebeu o nome, o concatenou com a 'Olá' e enviou a mensagem de resposta.
  4. Execute o teste novamente. O teste é marcado como aprovado.

    O teste passou

Parabéns! Você criou, implantou e testou com êxito um Serviço de transformação XSL.

início

Próxima etapa

Agora que você criou com êxito o serviço de transformação XSL de solicitação-resposta, continue com o tipo Ponte de serviço.



início

Bookmark this page

del.icio.us furl simpy slashdot technorati digg
Companion
Projects:
MySQL Database Server   Open JDK: an Open SourceJDK   GlassFish Community: an Open Source Application Server    Mobile & Embedded Community    Open Solaris   java.net - The Source for Java Technology Collaboration   Virtual Box - full virtualizer  Open ESB - The Open Enterprise Service Bus Powered by