Escrevendo destinos Ant para serviços da Web no servidor Web Tomcat

Consulte também

Ao trabalhar com serviços da Web no servidor Web Tomcat, recomenda-se que você use o Java Web Services Developer Pack 1.6 (JWSDP 1.6). No entanto, o servidor Web Tomcat compatível com JWSDP é baseado no servidor Web Tomcat 5.0.19. Assim, se desejar usar uma versão do servidor Web Tomcat que seja superior a 5.0.19, não será possível usar JWSDP 1.6. Em vez disso, será necessário escrever destinos Ant no IDE, como descrito abaixo.

Para preparar o uso de destinos Ant para implantar um serviço da Web no servidor Web Tomcat:

  1. Copie todos os arquivos JAR de $NB_HOME/ide7/modules/ext/jaxrpc16 em $NB_HOME/enterprise2/apache-tomcat-5.50,17/common/lib.
  2. Certifique-se de que o servidor de aplicativo Sun Java System esteja registrado no IDE.
  3. Na janela Tempo de execução (Ctrl-5), expanda o nó dos servidores, clique com o botão direito do mouse no nó do servidor Web Tomcat e escolha Iniciar. Com isso é criada a pasta full_path_to_$NB_USER_DIR/5.0/apache-tomcat-5.50,17_base. Nessa pasta, ative a funcionalidade de implantação automática do servidor Web Tomcat alterando autoDeploy="false" para autoDeploy="true" na pasta conf/server.xml. Clique com o botão direito do mouse no nó do servidor Web Tomcat e escolha reiniciar, para que o servidor possa carregar a alteração.

Para criar o serviço da Web ou arquivos do cliente:

  1. Crie um projeto de aplicativo da Web. Defina o servidor de aplicativo Sun Java System como o servidor de destino.
  2. Adote um dos procedimentos seguintes:

Para escrever destinos Ant para implantar um serviço da Web no servidor Web Tomcat:

  1. Adicione o seguinte destino ao arquivo build.xml e altere full_path_to_$NB_USER_DIR para o caminho completo, como c:\.netbeans:
    <target name="-pre-init">
      <property name="j2ee.platform.wscompile.classpath" value="${libs.jaxrpc16.classpath}"/>
      <property name="tomcat.home" value="full_path_to_$NB_USER_DIR/5.0/apache-tomcat-5.5.17_base"/>
    </target>

    A pasta apache-tomcat-5.50.17_base é criada somente depois de o servidor Web Tomcat ter sido iniciado.

  2. Adicione o seguinte destino ao arquivo build.xml:
    <target name="run-deploy" depends="init,compile,compile-jsps,-do-compile-single-jsp,dist">
     <property name="raw.war.name" value="${dist.dir}/raw-${war.name}"/>
     <copy file="${dist.war}" tofile="${raw.war.name}"/>
     <delete file="${dist.war}"/>
     <taskdef name="wsdeploy" classname="com.sun.xml.rpc.tools.ant.Wsdeploy" classpath="${wscompile.classpath}"/>
     <wsdeploy
       inWarFile="${raw.war.name}"
       outWarFile="${dist.war}"
       fork="true"
       classpath="${wscompile.classpath}:${build.classes.dir.real}:${javac.classpath}"
       keep="true"
       verbose="true"
       source="1.1.2"/>
     <delete file="${raw.war.name}"/>
     <copy file="${dist.war}" todir="${tomcat.home}/webapps"/>
    </target>
  3. Adicione o seguinte destino ao arquivo build.xml e altere my-host para o nome do host de seu ambiente e altere my-port-number para o número da porta de seu ambiente:
    <target name="run-display-browser" if="do.display.browser" depends="run-deploy">
       <nbbrowse url="http://my-host:my-port-number/${ant.project.name}/${client.urlPart}"/>
    </target>

    Crie um documento XML na pasta WEB-INF. Chame o documento XML jaxrpc-ri. Adicione este conteúdo a jaxrpc-ri.xml, altere mypackage.mysubpackage.myclassSEI para o nome totalmente qualificado da classe SEI e mypackage.mysubpackage.myclassImpl para o nome totalmente qualificado da classe de implementação:

    <?xml version="1.0" encoding="UTF-8"?>
    <webServices
        xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/dd"
        version="1.0"
        targetNamespaceBase="http://java.sun.com/xml/ns/jax-rpc/wsi/wsdl"
        typeNamespaceBase="http://java.sun.com/xml/ns/jax-rpc/wsi/types"
        urlPatternBase="/webservice">
        <endpoint
        name="MyTomcatWS"
        displayName="TomcatService"
        description="Tomcat Web Service endpoint"
        interface="mypackage.mysubpackage.myclassSEI"
        implementation="mypackage.mysubpackage.myclassImpl"/>
        <endpointMapping
        endpointName="MyTomcatWS"
        urlPattern="/MyTomcatWS"/>
    </webServices>

    Agora clique com o botão direito do mouse no nó do projeto, escolha Propriedades, selecione o painel Executar e digite MyTomcatWS no URL relativo.

Para implantar um serviço da Web ou um cliente do serviço da Web no servidor Web Tomcat:

  1. Clique com o botão direito do mouse no nó do projeto, escolha Propriedades, selecione o painel Executar e selecione o servidor Web Tomcat na lista suspensa Servidor.
  2. Clique com o botão direito do mouse no nó do projeto e escolha Construir projeto.
  3. Adote um dos procedimentos seguintes:
  4. Se estiver protegido por um firewall corporativo, defina o host proxy e o número da porta.
  5. Na janela Projetos, clique com o botão direito do mouse no projeto e escolha Executar projeto.
O serviço da Web é implantado e exibido no navegador, usando o nome do host e o número da porta especificados no destino <run-display-browser>.
Consulte também
Sobre o servidor Web Tomcat
Autenticando o servidor Web Tomcat
Configurando um agrupamento de conexões do banco de dados do Tomcat

Notificações legais