---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Exemplos avançados de cliente de serviços web do Java Apache Axis2

# Exemplos avançados de cliente de serviços web do Java Apache Axis2 {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 min. de leitura

Exemplos que mostram como construir e usar um cliente Axis2 para consumir um ServiceNow Serviço Web.

O Axis é essencialmente um mecanismo SOAP - uma estrutura para construir processadores SOAP, como clientes, servidores ou gateways. A versão atual do Axis foi escrita em Java. Este conteúdo é destinado a administradores de sistema com experiência leve em desenvolvimento em Java. Para começar, você precisa do Java JDK versão 1.4.2 ou superior e do Axis2 versão 1.0 ou superior.

## Criar um projeto Java

Este exemplo usa o SDK do Eclipse versão: 3.4.2 para gerenciar o código de origem e executar a solicitação da web. O Eclipse não é necessário.

* Abra o Eclipse e selecione no menu ArquivoNovoProjetoProjeto Java.
* Dê um nome ao projeto.
* Verifique se o JRE correto está especificado.
  * Se estiver usando wsdl2java, execute "java -version" na linha de comando e esta será a versão a ser especificada para o JRE específico do projeto.
  * Se estiver usando o plug-in Axis2 Codegen, use o JRE padrão.  
    Figura 1. Projeto Java
  {#c_JAAWbSrvcsClntExAdv__ul_yb5_xz3_gp}
{#c_JAAWbSrvcsClntExAdv__ul_gk3_tz3_gp}

## Gerar seu código de cliente Axis2

* Em uma linha de comando no diretório bin da pasta do eixo:

      ./wsdl2java.sh -uri https://<instance name>.service-now.com/incident.do?WSDL -o /glide/workspace/TestWebService/

* No exemplo acima:
  * O "-uri" é o caminho em que você salvou uma cópia do wsdl em ".wsdl" ou ".xml" ou o URL em que o WSDL reside.
  * O "-o" é o caminho em que você deseja que os arquivos sejam gravados. Se não for especificado, os arquivos serão gravados no local do compartimento atual.
  {#c_JAAWbSrvcsClntExAdv__ul_izj_k1j_gp}
* No Eclipse, atualize o projeto e o esboço gerado e o CallbackHandler agora devem ser exibidosFigura 2. Eixo de Eixo
{#c_JAAWbSrvcsClntExAdv__ul_z3y_h1j_gp}

## Autenticação básica

    HttpTransportProperties.Authenticator basicAuthentication  = new HttpTransportProperties. Authenticator ( ) ;
    basicAuthentication. setUsername ( "admin" ) ;
    basicAuthentication. setPassword ( "admin" ) ;
    ...
     ServiceNowStub proxy  = new ServiceNowStub ( ) ;
    ...
     
     proxy._getServiceClient ( ). getOptions ( ). setProperty (org. apache. axis2. transport. http. HTTPConstants. AUTHENTICATE, basicAuthentication ) ;

## Compatibilidade com Axis2 versões 1.1 e superior

O suporte a blocos só está disponível no HTTP versão 1.1. Por padrão, a divisão em blocos está habilitada em Axis2.xml para versões 1.1 e superiores. ServiceNow não é compatível com blocos, portanto, você precisará desabilitar o bloco no momento da implantação ou no tempo de execução.

* Tempo de implantação: é possível desabilitar a fragmentação de HTTP removendo ou comentando o seguinte elemento de Axis2.xml

      <parameter name= "Transfer-Encoding" >chunked</parameter>

* Tempo de execução: o usuário pode desabilitar o agrupamento usando o seguinte conjunto de propriedades no Cliente ou no Estoque, somente versões 1.1.1 e superiores

      options.setProperty (org. apache. axis2. transport. http. HTTPConstants. CHUNKED,  Boolean. FALSE ) ;

{#c_JAAWbSrvcsClntExAdv__ul_rcz_t1j_gp}

## Criação de pacotes exclusivos

Você pode usar o parâmetro namespace2package do Axis2 (ns2p) para criar nomes de pacote exclusivos. O parâmetro usa este formato :

    <Axis path>\bin\wsdl2java.bat -u -p cr2 -ns2p <namespace>=<package name> -uri <wsdl to convert>

Por exemplo:

    <Axis path>\bin\wsdl2java.bat -u -p cr2 -ns2p http://www.service-now.com/change_request=my.change_request -uri change_request


