FeaturesPluginsDocs & SupportCommunityPartners

Tutorial de início rápido da Plataforma NetBeans 6.0

Este tutorial demonstra como construir um Editor HTML, sem qualquer codificação Java. No fim deste tutorial, você terá um Editor HTML que se parece com este:

painel da tela de abertura

Embora seja uma aplicação demonstrativa muito simples, ela não é um brinquedo! É um programa real que dá suporte a edição fácil de páginas HTML, com recursos como auto-completar de código, validação e fragmentos de código HTML predefinidos.

O Editor HTML que você cria neste tutorial é uma aplicação rich-client concluída "sobre a Plataforma NetBeans". O que isso significa é que o núcleo do IDE, que é a Plataforma NetBeans, será a base da sua aplicação. Sobre a Plataforma NetBeans, você adiciona os módulos necessários e exclui aqueles de que o IDE precisa mas que a sua aplicação não. Aqui você vê alguns dos módulos do IDE, adicionados à Plataforma NetBeans, que é a sua base:

Editor HTML

Criar esse Editor HTML significa gerar um esqueleto de aplicação, excluindo os módulos e os itens de interface do usuário de que você não precisa e, em seguida, definir a janela Favoritos como a janela que será aberta por padrão quando o IDE se iniciar. Todas essas atividades são suportadas pelos elementos de interface do usuário no IDE.

Você verá por si mesmo como é simples e fácil construir, ou para ser mais preciso, montar uma aplicação completa sobre a Plataforma NetBeans. No fim, é mostrado como tornar o produto final facilmente baixável e iniciável usando o WebStart.

Observação: embora seja um produto separado, não é necessário baixar a Plataforma NetBeans separadamente por causa deste tutorial. Você desenvolverá a aplicação rich-client no IDE e, em seguida, excluirá os módulos que são específicos do IDE, mas que são supérfluos para a sua aplicação.

Conteúdo

 O conteúdo desta página se aplica ao IDE NetBeans 6.0

Para obter mais informações sobre como trabalhar com módulos, consulte a Home page do projeto de desenvolvimento do NetBeans no site do NetBeans. Se você tiver dúvidas, visite as Perguntas freqüentes do desenvolvedor do NetBeans ou use o link de comentários na parte inferior desta página.


Guia de introdução

Antes de começar, você deve instalar o seguinte software no seu computador:


Gerando a aplicação de esqueleto

Ao criar uma aplicação na Plataforma NetBeans, o primeiro passo é criar um projeto de conjunto de módulos. O projeto de conjunto de módulos padrão inclui todos os módulos incluídos na Plataforma NetBeans, assim como todos os módulos incluídos no NetBeans IDE. Já que não precisamos de todos esses módulos, excluiremos os que não são necessários.

  1. Usando o assistente para Novo projeto (Ctrl-Shift-N), crie um Projeto de conjunto de módulos a partir do modelo na categoria de módulos do NetBeans, como mostrado abaixo:

    painel da tela de abertura

    Clique em Próximo e chame o conjunto de módulos de "Editor HTML do NetBeans". Clique em Terminar.

  2. Clique com o botão direito do mouse no nó do projeto, escolha Propriedades e, em seguida, faça algumas alterações na caixa de diálogo Propriedades do projeto do conjunto de módulos:
    • No painel Construir, clique em "Criar aplicação independente" para especificar que vai ser uma aplicação rich-client sobre a Plataforma NetBeans.

      Verifique se você gosta do nome da marca do executável e do título da aplicação da barra de título, como mostrado abaixo:

      painel da aplicação

    • No painel Tela de abertura, forneça a tela de abertura da aplicação, como mostrado abaixo:

      painel da tela de abertura

      Se você não tiver uma tela de abertura, use esta.

    • No painel Bibliotecas da caixa de diálogo Propriedades do projeto, você vê uma lista de "clusters". Um cluster é uma coleção de módulos relacionados. Os únicos clusters que precisam ser selecionados são ide8 e platform7. Desmarque todos os outros clusters.
    • No cluster platform7, você precisa somente dos seguintes módulos:

      APIs de ação
      Bootstrap
      Núcleo
      Núcleo - Execução
      Núcleo - UI
      Núcleo - Janelas
      API de Sistema de dados
      API das caixas de diálogo
      API de Execução
      API do explorer e folha de propriedades
      Favoritos
      API do sistema de arquivos
      Consultas Gerais da API
      APIs de E/S
      Integração com o JavaHelp
      Opções do mapa de teclas
      Biblioteca de Personalização de Aparência & Funcionalidade
      API de pesquisa MIME
      Pesquisa MIME em SystemFS
      Sistema de arquivos mestre
      API do módulo de sistema
      API de nós
      SPI e Diálogo de opções
      Janela de saída
      API de progresso
      UI de progresso
      API de configurações
      API das opções de configuração
      Inicialização
      Integração das extensões de layout do Swing
      Controle de Abas
      API de Texto
      API de utilitários da IU
      API de utilitários
      API do sistema de janelas

    • No cluster ide8, somente os módulos seguintes são necessários:

      Paleta comum
      Comparar
      Editor
      Coincidência de colchetes do editor
      Auto-completar de código do editor
      Dobramento de código do editor
      Seções protegidas do editor
      Recuo do editor
      Biblioteca do editor
      Biblioteca2 do editor
      Configurações do editor
      Armazenamento de configurações do editor
      Utilitários do editor
      API da faixa de erros
      Núcleo da faixa de erros
      Painéis da caixa de diálogo de opções gerais
      Framework de linguagens genéricas
      HTML
      Editor HTML
      Biblioteca do editor HTML
      Analisador léxico HTML
      Padrões IDE
      Imagem
      Analisador léxico
      Analisador léxico para ponte NetBeans
      API do navegador
      Editor simples
      Biblioteca do editor simples
      API de projeto
      API de pesquisa
      Biblioteca de editores baseados em marcas

  3. Otimizando a interface de usuário

    Você pode manter ou rejeitar o quanto quiser da interface de usuário do IDE. Seu Editor HTML provavelmente não precisa de um ou todos os itens do menu Ferramentas. Semelhantemente, talvez haja barras de ferramentas ou botões da barra de ferramentas que não sejam necessários. Nesta seção, você remove a interface de usuário do IDE até que haja um subconjunto que seja útil para a sua aplicação rich-client.

    1. Expanda o conjunto de módulos, clique com o botão direito do mouse no nó Módulos e escolha Adicionar novo, como mostrado abaixo:

      esta camada em contexto

      O assistente para Novo projeto (Ctrl-Shift-N) aparece. Nomeie o projeto de BrandingModule, clique em Próximo e, em seguida, clique em Terminar.

    2. No nó Arquivos importantes do módulo de marca, expanda o nó Camada XML. Dois subnós são expostos:

      camada xml expandida

    3. No nó <esta camada em contexto>, o IDE mostra uma visualização mesclada de todas as pastas e arquivo que todos os módulos registram em suas camadas. Para excluir os itens, você pode clicar com o botão direito do mouse neles e escolher 'Excluir', como mostrado abaixo:

      esta camada em contexto

      O IDE adiciona marcas ao arquivo layer.xml do módulo que, quando o módulo é instalado, oculta os itens que você excluiu. Por exemplo, clicando com o botão direito do mouse em Barra de menus/Editar, você pode remover itens de menu do menu Editar que não são necessários para o Editor HTML. Fazendo isso, você gera trechos de código como o seguinte no arquivo layer.xml:

      <folder name="Menu">
          <folder name="Edit">
              <file name="org-netbeans-modules-editor-MainMenuAction$StartMacroRecordingAction.instance_hidden"/>
              <file name="org-netbeans-modules-editor-MainMenuAction$StopMacroRecordingAction.instance_hidden"/>
          </folder>       
      </folder>

      O resultado do trecho de código acima é que as ações Iniciar gravação de macro e Parar gravação de macro fornecidas por outro módulo são removidas do menu por seu módulo de marca.

    4. Use a abordagem descrita na etapa anterior para ocultar as barras de ferramentas, os botões da barra de ferramentas, os menus e os itens de menu que você desejar.

    Otimizando o layout da janela

    Usando o nó <esta camada em contexto>, você pode não somente excluir itens existentes, mas também pode alterar o conteúdo deles. Por exemplo, o Editor HTML trabalha em arquivos HTML, sendo assim, ao contrário do IDE regular, que trabalha com arquivos-fonte Java e projetos, faz sentido mostrar a janela Favoritos no layout inicial.

    A definição do layout da janela também é descrita como arquivos em camadas, tudo armazenado na pasta Janelas2. Os arquivos na pasta Janelas2 são arquivos XML pseudo-legíveis por humanos definidos pelas APIs do sistema de janelas. Eles são complexos mas a boa notícia é que, para fins do nosso Editor HTML, não é necessário compreendê-los completamente, como mostrado abaixo.

    1. Em seu nó <esta camada em contexto> do módulo de marca, clique com o botão direito do mouse no nó Janelas2 e escolha Localizar, como mostrado abaixo:

      localizar favoritos

    2. Procure por um objeto chamado Favoritos, ignorando o uso de maiúsculas/minúsculas. Você encontrará dois arquivos:

      localizar favoritos

      O primeiro arquivo define a aparência do componente e como ele é criado. Como o componente não precisa ser alterado, não é necessário modificar o arquivo. O segundo é mais interessante para os seus propósitos, ele contém o seguinte:

      <tc-ref version="2.0">
          <module name="org.netbeans.modules.favorites/1" spec="1.1" />
          <tc-id id="favorites" />
          <state opened="false" />
      </tc-ref>

    3. Embora a maior parte do XML seja criptografada, existe uma linha que parece promissora — sem precisar ler nenhum tipo de documentação, é provável que alterar false para true tornará o componente aberto por padrão. Faça isso agora.
    4. De uma forma semelhante, você pode alterar a Paleta do componente para que ela abra por padrão, e o Navegador para que ele se feche. Realize estas etapas.

    Agora você deve ver que o seu módulo de marca contém três novos arquivos, um para cada um dos arquivos que você alterou. Na verdade, esses arquivos substituem aqueles que você encontrou nas etapas anteriores, sendo que agora você forneceu as informações necessárias para substituir o layout da janela:

    localizar favoritos

    Otimizando a janela Favoritos

    Nas subpastas de uma pasta de marca do conjunto de módulos, que esteja visível na janela Arquivos, você pode substituir as strings definidas nos códigos-fonte do NetBeans. Nesta seção, você substituirá as strings que definem os rótulos usados na janela Favoritos. Por exemplo, alteraremos o rótulo "Favoritos" para "Arquivos HTML", pois usaremos essa janela especificamente para arquivos HTML.

    1. Abra a janela Arquivos e expanda a pasta de marca do conjunto de módulos.
    2. Crie uma nova estrutura de pastas em marca/módulos. A nova pasta deve se chamar org-netbeans-modules-favorites.jar. Dentro dessa pasta, crie uma hierarquia de pastas org/netbeans/módulos/favoritos. Dentro da pasta final, ou seja, favoritos, crie um novo arquivo Bundle.properties. Essa estrutura de pastas e arquivo de propriedades correspondem à estrutura de pastas nos códigos-fonte do NetBeans relacionados à janela Favoritos.
    3. Adicione as strings mostradas na captura de tela abaixo para substituir as mesmas strings definidas no arquivo de propriedades correspondentes nos códigos-fonte da janela Favoritos:

      localizar favoritos

      Para facilitar a cópia e colagem, essas são as strings definidas acima:

      Favorites=HTML Files
      ACT_AddOnFavoritesNode=&Find HTML Files...
      ACT_Remove=&Remove from HTML Files List
      ACT_View=HTML Files
      ACT_Select=HTML Files
      ACT_Select_Main_Menu=Select in HTML Files List
      
      # JFileChooser
      CTL_DialogTitle=Add to HTML Files List
      CTL_ApproveButtonText=Add
      ERR_FileDoesNotExist={0} does not exist.
      ERR_FileDoesNotExistDlgTitle=Add to HTML Files List
      MSG_NodeNotFound=The document node could not be found in the HTML Files List.

    Executando o aplicativo

    Executar a sua aplicação é tão simples quando clicar com o botão direito do mouse no nó do projeto e escolher um item de menu.

    1. Clique com o botão direito do mouse no nó do projeto da aplicação e escolha Limpar e construir tudo.
    2. Clique com o botão direito do mouse no nó do projeto da aplicação e escolha Executar:

      executando a aplicação

    3. Depois que a aplicação é implantada, você pode clicar com o botão direito do mouse dentro da janela Favoritos e escolher uma pasta contendo arquivos HTML e, em seguida, abrir um arquivo HTML, como mostrado abaixo:

      painel da tela de abertura

    4. Incluindo a funcionalidade de atualização

      Para estender sua aplicação, você deve permitir que os usuários instalem módulos para aprimorar a funcionalidade da aplicação. Para fazer isso, você precisa simplesmente ativar alguns módulos extras, que empacotarão o gerenciador de plug-ins com o seu Editor HTML.

      1. Clique com o botão direito do mouse no projeto de conjunto de módulos e escolha Propriedades. Na caixa de diálogo Propriedades do projeto, use o painel Bibliotecas e marque as caixas de verificação que são realçadas abaixo:

        executando a aplicação

      2. Clique com o botão direito do mouse no nó do projeto da aplicação e escolha Limpar e construir tudo.
      3. Execute a aplicação e observe que agora você tem um novo item de menu, chamado "Plug-ins", no menu Ferramentas:

        painel da tela de abertura

      4. Escolha o nome item de menu Plug-ins e instale alguns plug-ins que sejam úteis para seu Editor HTML. Navegue no Portal Plug-in para localizar alguns que sejam adequados.

      Distribuindo a aplicação

      O IDE pode criar uma aplicação JNLP, para Web, iniciando a sua aplicação, assim como um arquivo ZIP, que inclui o iniciador da aplicação. Nesta seção, examinamos a última abordagem.

      1. Clique com o botão direito do mouse no nó do projeto da aplicação e escolha Construir distribuição de ZIP, como mostrado abaixo:

        executando a aplicação

        Um arquivo ZIP é criado na pasta dist do conjunto de módulos, que você pode ver na janela Arquivos.

      2. Depois de descompactar a aplicação, você deve ver o seguinte:

        executando a aplicação

        Observação: o iniciador da aplicação é criado na pasta bin, como mostrado acima.


      3. Distribuindo o Editor HTML por meio do Repositório JNLP compartilhado do NetBeans

        Finalmente, vamos ajustar o arquivo master.jnlp que é gerado na primeira vez em que você inicia a aplicação. Embora ele faça o trabalho, ele não está pronto para distribuição. Pelo menos, você precisa alterar a seção de informações para fornecer melhores descrições e ícones.

        Outra alteração na infra-estrutura JNLP padrão é o uso de um repositório JNLP compartilhado em www.netbeans.org. Por padrão, a aplicação JNLP gerada para um conjunto sempre contém todos os seus módulos, assim como os módulos do qual ela depende. Isso pode ser útil para uso de intranet, mas é um pouco menos prático para uso amplo na internet. Na internet, é muito melhor que todos as aplicações construídas na Plataforma NetBeans façam referência a um repositório de módulos do NetBeans, o que significa que tais módulos são compartilhados e não precisam ser baixados mais de uma vez.

        Existe um repositório como tal para NetBeans 6.0. Ele não contém todos os módulos que o NetBeans IDE possui, mas ele contém o suficiente para criar aplicações não-IDE como o nosso Editor HTML. (Consulte o problema 112726.) Para usar o repositório, você só precisa modificar platform.properties, adicionando a URL correta:

        # share the libraries from common repository on netbeans.org
        # this URL is for release60 JNLP files:
        jnlp.platform.codebase=http://www.netbeans.org/download/6_0/jnlp/
        

        Assim que a aplicação é iniciada como uma aplicação JNLP, todos os seus módulos de plug-in compartilhados são carregados a partir de netbeans.org e compartilhados com as aplicações que fazem o mesmo.




        Próximas etapas

        Agora que você aprendeu vários truques interessantes e possui uma aplicação funcional construída na Plataforma NetBeans, é possível observar ainda mais os subnós do nó Camada XML. Sem muito trabalho, você pode continuar ajustando a sua aplicação, removendo-a e otimizando-a até ter uma aplicação sólida, simplificada, que faz exatamente o que você deseja que ela faça. Em seguida, descubra como é fácil adicionar seus próprios módulos à sua aplicação. Os Tutoriais para módulo do NetBeans (Plug-in) e desenvolvimento de aplicação rich-client mostram uma ampla variedade de casos de uso para estender o Editor HTML. Por exemplo, talvez você queira adicionar seus próprios itens de menu na barra de menus. Ou talvez você queira fornecer trechos de código HTML adicionais na paleta do componente. Ambos cenários, e muito mais, são destacados nos tutoriais nos Recursos do desenvolvedor de módulo.

        Consulte também o Tutorial da aplicação Paint da Plataforma NetBeans 6.0, que mostra como criar sua própria aplicação Paint. Finalmente, uma aplicação um pouco mais complexa é fornecida no Tutorial do leitor de alimentação da Plataforma NetBeans 6.0.



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   Open ESB - The Open Enterprise Service Bus Powered by