Executando um Cliente JAX-WS de Serviços da Web Não Gerenciado

O WebSphere Application Server fornece uma implementação de tempo de execução de cliente de serviços da Web thin Java™ Platform, Standard Edition 6 (Java SE 6) que se baseia na especificaçãoJava API for XML-based Web Services (JAX-WS) 2.2. O Thin Client para JAX-WS com WebSphere Application Server é um ambiente de cliente Java SE 6 independente que possibilita a execução de aplicativos de cliente de serviços da Web JAX-WS não gerenciados em um ambiente não WebSphere para chamar serviços da Web que são hospedados pelo servidor de aplicativos.

Antes de Iniciar

Configurações suportadas Configurações suportadas: É possível usar o Thin Client para JAX-WS com WebSphere Application Server como um tempo de execução de cliente independente em um ambiente Java SE puro, ou dentro de um ambiente OSGi. O Thin Client para JAX-WS não é suportado executando dentro dos ambientes WebSphere Application Server ou WebSphere Application Client. Nesta versão do servidor de aplicativos, com a exceção do Administration Thin Client, outros tempos de execução do Thin Client fornecidos com o servidor de aplicativos também podem residir no CLASSPATH e coexistir no Thin Client para JAX-WS. sptcfg

Antes que você configure um ambiente de execução do cliente não gerenciado JAX-WS, obtenha o arquivo JAR (Java Archive) Thin Client para JAX-WS. Para obter o Thin Client para JAX-WS, instale o WebSphere Application Server Versão 9.0 ou o Aplicativo Cliente para WebSphere Application Server Versão 9.0. O arquivo JAR Thin Client para JAX-WS, com.ibm.jaxws.thinclient_8.5.0.jar, está localizado no diretório app_server_root\runtimes.

Copie o Thin Client para JAX-WS, o arquivo com.ibm.jaxws.thinclient_8.5.0.jar e os arquivos endorsed_apis_8.5.0.jar, em outras máquinas para criar um ambiente do cliente leve que permita comunicação com o produto. As cópias do Thin Client para JAX-WS estão sujeitas aos mesmos termos e condições do contrato de licença do produto WebSphere em que você obteve o Thin Client para JAX-WS. Consulte os contratos de licença para o uso correto e outras limitações.

O Thin Client para JAX-WS é suportado nos seguintes ambientes:
  • IBM® Software Development Kits (SDKs) Versão 6.0
  • SDKs não IBM V6.0 com a seguinte limitação:
    • Limitação de Xerces em SDKs não IBM

      É necessário fazer download do Xerces-J Versão 2.6.2 e incluir o arquivo no caminho de classe ao configurar o ambiente Thin Client para JAX-WS.

    • WS-SecurityKerberos em SDKs não IBM

      O WS-SecurityKerberos não é suportado com o Sun JDK ou outros SDKs não IBM. Aplicativos executados em um ambiente do Thin Client para JAX-WS que usam a proteção em nível de mensagem do WS-Security e usam os tokens de segurança do Kerberos, conforme descrito na especificação Web Services Security Kerberos Token Profile 1.1, não funcionam corretamente em JDKs não IBM. Essa limitação existe devido a uma dependência no provedor IBM JGSS que apenas está disponível dentro dos IBM SDKs.

  • Ambientes de tempo de execução Equinox 3.6 OSGi

Sobre Esta Tarefa

Configure um ambiente Thin Client para JAX-WS, concluindo as seguintes etapas.

Procedimento

  1. Copie o arquivo JAR do Thin Client para JAX-WS, com.ibm.jaxws.thinclient_8.5.0.jar, em outras máquinas para criar um ambiente do cliente leve.
  2. Use o Java Endorsed Standards Override Mechanism para substituir APIs que estão disponíveis no JDK no seu sistema.

    Porque o Thin Client para JAX-WS com WebSphere Application ServerVersão 9.0 requer APIs que sejam mais atuais do que o disponível em JDKs para suportar implementações JAX-WS 2.2 e JAXB 2.2, você deve substituir as APIs JDK padrão em uso pelo seus sistema usando o Java Endorsed Standards Override Mechanism.

    Copie o arquivo app_server_root\runtimes\endorsed\endorsed_apis_8.5.0.jar no diretório padrão, JAVA_JRE\lib\endorsed. Como alternativa, é possível usar a propriedade java.endorsed.dirs para especificar um diretório de sua escolha. Se escolher usar um diretório alternativo, é recomendado incluir apenas o arquivo JAR endorsed_apis.

  3. Configure o caminho. Insira o seguinte comando para incluir os diretórios Java bin mo seu caminho:
    [Windows][z/OS]
    set PATH=<your_JDK_bin_directory>;%PATH%
    [AIX][HP-UX][Solaris][Linux]
    export PATH=<your_JDK_bin_directory>:$PATH
  4. Configure o caminho de classe.
    • Inclua o arquivo JAR Thin Client para JAX-WS na definição do caminho de classe.
      Importante: Se o Thin Client deve usar oJava Message Service (JMS), então todos os arquivos JAR que são necessários devem estar no caminho de classe para JMS e para o cliente para que as entradas existam para todos os arquivos necessários. Caso contrário, os arquivos necessários não serão identificados como instalados e prontos para uso.
      [Windows][z/OS]
      set CLASSPATH=.;<your_jax-ws_thin_client_install_directory>\com.ibm.jaxws.thinclient_8.5.0.jar;
      <your_application_jars>;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<your_jax-ws_thin_client_install_directory>/com.ibm.jaxws.thinclient_8.5.0.jar:
      <your_application_jars>;$CLASSPATH
    • Se estiver usando um SDK não IBM, obtenha um arquivo xml-apis.jar e arquivo xercesImpl.jar do Xerces do website do Xerces, e configure a definição de caminho de classe.
      [Windows][z/OS]
      set CLASSPATH=.;<your_Xerces_install_directory>\xml-apis.jar;<your_Xerces_install_directory>
      \xercesImpl.jar;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<your_Xerces_install_directory>/xml-apis.jar:<your_Xerces_install_directory>
      \xercesImpl.jar:$CLASSPATH
  5. Opcional: Implemente conjuntos de políticas para o cliente.
  6. Configure o SSL para o cliente.
    1. Inclua as seguintes propriedades do sistema no comando Java:
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props

      É possível obter o arquivo ssl.client.props da instalação do WebSphere Application Server e modificar o arquivo para ajustar-se ao seu ambiente. Você deverá, no mínimo, atualizar o local dos arquivos de chave com.ibm.ssl.keyStore e com.ibm.ssl.trustStore no arquivo ssl.client.props para o local de correspondência de seu ambiente de destino.

      Por exemplo, utilize estas definições de configuração de SSL ao executar o aplicativo com um Sun JRE:
      com.ibm.ssl.protocol=SSL
      com.ibm.ssl.trustManager=SunX509
      com.ibm.ssl.keyManager=SunX509
      com.ibm.ssl.contextProvider=SunJSSE
      
      com.ibm.ssl.keyStoreType=JKS
      com.ibm.ssl.keyStoreProvider=SUN
      com.ibm.ssl.keyStore=/home/user1/etc/key.jks
      
      com.ibm.ssl.trustStoreType=JKS
      com.ibm.ssl.trustStoreProvider=SUN
      com.ibm.ssl.trustStore=/home/user1/etc/trust.jks

      O arquivo de armazenamento de chaves e armazenamento de confiança deve ser criado usando o utilitário Java keytool antes da execução do aplicativo. A geração de arquivo de chaves automática não é suportada com um JRE de produto não IBM.

  7. Execute o aplicativo cliente:
    • Insira o comando a seguir se tiver copiado o arquivo endorsed_apis_8.5.0.jar no diretório padrão JAVA_JRE\lib\endorsed padrão, por exemplo:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <your_client_application>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>
    • Insira o comando a seguir se tiver copiado o arquivo endorsed_apis_8.5.0.jar em um diretório diferente do diretório JAVA_JRE\lib\endorsed padrão, por exemplo:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar> 
      -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <your_client_application>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar>
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>

Resultados

Você configurou um ambiente de tempo de execução de cliente JAX-WS não gerenciado para chamar serviços da Web que estão hospedados em um WebSphere Application Server.
Evitar Problemas Evitar Problemas: O comando a seguir ilustra como exibir a versão do thin client que está sendo executado:
java -cp (wasHome)/runtimes/com.ibm.jaxws.thinclient_8.5.0.jar com.ibm.ws.webservices.Version
O exemplo a seguir ilustra a saída do comando:
IBM Web services build: cf021412.02
IBM Web services release: 8.5.5
Time stamp: 5/14/14 21:11:46
gotcha

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxwsthinclient
Nome do arquivo: twbs_jaxwsthinclient.html