Problema

Este artigo descreve como usar o Serviço da Web em processos para chamar serviços que exigem anexos de arquivo como valores de entrada. Este artigo também descreve como especificar o formato no qual os anexos de arquivo são retornados pelos serviços da Web do LiveCycle ES.

Por exemplo, variáveis de entrada e saída de serviço do tipo document são representadas em mensagens SOAP como anexos de arquivos. Para fornecer valores de documentos de entrada, a mensagem SOAP inclui um anexo de arquivo. As mensagens de resposta incluem anexos de arquivo quando os serviços da Web possuem variáveis de saída do tipo document.

Os arquivos podem ser anexados como MIME ou MTOM, texto codificado em base64 ou usando o URL do arquivo:

Nota: os serviços da Web fornecidos pelo LiveCycle ES não suportam anexos MTOM.

Configuração da mensagem de solicitação de serviço da Web

Esta seção descreve como configurar a propriedade Opções de serviço da Web da operação Invoke Web Service. Use essa propriedade para configurar a mensagem de solicitação SOAP enviada ao serviço da Web:

Abertura da caixa de diálogo Configurações do serviço da Web

Use a caixa de diálogo Configurações do serviço da Web para configurar a propriedade Opções de serviço da Web da operação Invoke Web Service.

Para abrir a caixa de diálogo Configurações do serviço da Web:

  1. No diagrama do processo, clique na operação Invoke Web Service.
  2. Na exibição Propriedades, expanda a seção Opções de serviço da Web e clique no botão ao lado da caixa Opções.

Especificação das propriedades do serviço da Web

É necessário fornecer as seguintes informações sobre o serviço da Web para que o serviço recupere o WSDL e envie e receba mensagens SOAP:

URL do WSDL: a URL da definição de serviço da Web. O URL para o processo de WSDLs está no seguinte formato: http://[nome do servidor]:[porta]/soap/services/[nome do processo]?wsdl Por exemplo, o URL a seguir aponta para o WSDL do processo chamado echoDocument. O servidor de aplicativos é executado no mesmo computador em que o LiveCycle Workbench ES está instalado: http://localhost:8080/soap/services/echoDocument?wsdl Nome de usuário: o nome de usuário da conta para acessar o serviço da Web. Só é preciso fornecer um nome de usuário se o serviço da Web exigir autenticação.

Senha: a senha que corresponde ao nome de usuário fornecido para a propriedade Nome do Usuário.

Porta: o serviço a ser usado, que é exposto por meio do WSDL. Um WSDL pode expor vários serviços.

URL de destino: o URL que fornece acesso ao serviço da Web. Para um processo denominado echoDocument, o URL é http://localhost:8080/soap/services/echoDocument.

strong>Operação: a operação do serviço da Web para invocar. A lista é preenchida automaticamente quando a definição de serviço da Web é carregada.

Tempo limite: a quantia de tempo durante a qual aguardar por uma resposta do serviço da Web antes de abandonar a chamada. O valor é fornecido em segundos.





Para especificar as propriedades do serviço da Web

  1. Na caixa de diálogo Configurações do serviço da Web, clique na guia Configurações.
  2. Na caixa URL do WSDL, digite o URL do WSDL do serviço da Web.
  3. Clique em Carregar para recuperar o WSDL. Algumas propriedades na guia Configurações são preenchidas automaticamente usando informações do WSDL.
  4. Se necessário, digite um nome de usuário e senha.
  5. Se o valor padrão para Porta não estiver correto, digite um valor diferente.
  6. Se o valor padrão para o URL do destino não estiver correto, digite um URL diferente.
  7. Selecione a operação a ser invocada.
  8. (Opcional) Especifique a quantidade de tempo que passa antes que a solicitação de serviço atinja o tempo limite.

Geração da solicitação SOAP inicial

A caixa de diálogo Configurações do serviço da Web gera automaticamente uma mensagem SOAP para chamar o serviço da Web. A mensagem é baseada nas propriedades de serviço da Web que você especificou. A mensagem SOAP é fornecida em uma caixa de texto na qual é possível editar a mensagem conforme necessário.

Para gerar a mensagem SOAP inicial:

  1. Na caixa de diálogo Configurações do serviço da Web, clique na guia Solicitação.
  2. Clique em Gerar.

Configuração dos anexos

A mensagem SOAP precisa incluir anexos de arquivo para representar valores de documento de parâmetros de entrada de serviço.

O código XML a seguir mostra a estrutura geral de uma mensagem SOAP usada para uma chamada de uma operação de serviço da Web:

  • O elemento Body contém um elemento com o mesmo nome da operação de serviço.
  • O elemento operation_name contém um elemento para cada parâmetro de entrada. Os nomes desses elementos são os mesmos que os nomes dos parâmetros.
  • O método usado para anexar arquivos à mensagem SOAP (MIME, MTOM (excluindo serviços da Web do LiveCycle ES), texto codificado com base64 ou URLs de arquivos) determina os elementos usados para identificar anexos de arquivos.

<soapenv:Envelope
		
	     xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
		
	     xmlns:ser="http://foo.net/services"> 
		
	    <soapenv:Header /> 
		
	    <soapenv:Body> 
		
	       <ser:operation_name> 
		
	          <ser:parameter_name> 
		
	             <!-- elements for file attachments are placed here --> 
		
	          </ser:parameter_name> 
		
	       </ser:operation_name> 
		
	    </soapenv:Body> 
		
	 </soapenv:Envelope> 

Para os serviços da Web de processos ativados, o nome da operação é sempre invoke. Nomes de parâmetros são os nomes das variáveis de entrada definidas no processo. A tabela a seguir descreve como configurar as opções na caixa de diálogo Configurações do serviço da Web para anexar arquivos. Exemplos de mensagens SOAP são fornecidos para cada método. Os exemplos são mensagens de solicitação para o serviço da Web de um processo com um parâmetro de entrada denominado documentIn. O parâmetro documentIn é um valor de documento.

Tipo de anexo Descrição Exemplo de mensagem SOAP
MIME/MTOM

A guia Anexo da caixa de diálogo Configurações do serviço da Web é usada para especificar o valor do documento. Cada linha na tabela representa um anexo de arquivo.

Para configurar um anexo MIME:

  1. Clique na guia Anexo.
  2. Clique em Carregar parte do anexo para adicionar linhas à tabela para os anexos que devem ser especificados para a operação de serviço da Web que está sendo chamada. As colunas Parte e Tipo são preenchidas com valores automaticamente.

    Anote os valores na coluna Parte. Você precisará desses valores na etapa 6 deste procedimento. A coluna Parte contém a identificação do anexo. O serviço da Web determina a identificação.

  3. Para cada linha da tabela, clique na célula Anexos e no botão de reticências que aparece para abrir o Criador de XPath. A expressão XPath criada precisa resolver para o local de dados em que o valor do documento é salvo.
  4. Para cada linha da tabela, clique na célula Content-Type e digite o tipo MIME do arquivo a ser anexado, por exemplo, application/pdf.
  5. Clique na guia Solicitação e adicione um elemento attachmentID dentro de cada elemento que representa o parâmetro que recebe um anexo de arquivo como o valor.
  6. Dentro de cada elemento attachmentID, digite o texto que aparece na coluna Parte do anexo na guia Anexo.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:attachmentID> part0 </ser:attachmentID> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
texto codificado em base64

O tipo de conteúdo MIME e a representação de texto codificada em base64 do arquivo estão incluídos na mensagem SOAP:

  • O tipo de conteúdo é especificado em um elemento contentType.
  • O texto é especificado em um elemento binaryData.

Para obter o texto codificado em base64, use a função XPath getDocContentBase64.

O procedimento a seguir pressupõe que o texto codificado na base 64 que representa o valor do documento é armazenado em uma variável de processo.

Para configurar um anexo de texto codificado na base 64:

  1. Clique na guia Solicitação.
  2. Adicione os seguintes elementos dentro daquele que representa o parâmetro que recebe o valor do documento:
    • contentType
    • binaryData
  3. Dentro do elemento contentType, digite o tipo de conteúdo ou adicione uma expressão XPath que seja resolvida para uma variável de string que contenha o tipo de conteúdo.
  4. Dentro do elemento binaryData, adicione uma expressão XPath que seja resolvida para uma variável de sequência que contenha o texto codificado na base64 que representa o documento.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:contentType> {$/process_data/@contentType$} </ser:contentType> <ser:binaryData> {$/process_data/@docBase64$} </ser:binaryData> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
URL do arquivo

A URL do arquivo é especificada em um elemento remoteURL.

Para configurar um anexo de URL de arquivo:

  1. Clique na guia Solicitação.
  2. Adicione um elemento remoteURL dentro do elemento que representa o parâmetro que recebe o valor do documento.
  3. Dentro do elemento remoteURL, digite a URL do arquivo ou adicione uma expressão XPath que resolva para uma variável de string que contenha a URL.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:remoteURL> http://help.adobe.com/en_US/livecycle/es/overview.pdf </ser:remoteURL> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>

Configuração de mensagens de resposta do serviço da Web do LiveCycle ES

Quando um serviço da Web do LiveCycle ES retorna um valor de documento, o valor é um anexo da mensagem de resposta do SOAP. O comportamento padrão dos serviços da Web do LiveCycle ES é armazenar o valor do documento de resultado no servidor do LiveCycle ES e incluir o URL do documento na mensagem de resposta. No entanto, se a mensagem de solicitação SOAP incluir um anexo MIME, a resposta também usará um anexo MIME para retornar os valores do documento.

É possível substituir o comportamento padrão e especificar o método que os serviços da Web do LiveCycle ES usam para retornar anexos de documentos. Os arquivos podem ser anexados a mensagens de resposta SOAP como anexos MIME, texto codificado na base64 ou usando a URL do arquivo. Para especificar a maneira como os arquivos são anexados às mensagens de resposta, é necessário anexar um dos valores na tabela a seguir ao URL de destino especificado na guia Configurações da caixa de diálogo Configurações do serviço da Web:

Tipo de anexo Texto para acrescentar
texto codificado em base64 ?blob=base64
MIME ?blob=mime
URL do arquivo ?blob=http

Por exemplo, o valor a seguir para URL de destino faz com que o serviço da Web de um processo denominado echoDocument anexe arquivos a mensagens de resposta SOAP como texto codificado em base64:

http://localhost:8080/soap/services/echoDocument?blob=base64

Para substituir o comportamento do anexo de mensagem de resposta SOAP padrão:

  1. Na caixa de diálogo Configurações do serviço da Web, clique na guia Configurações.
  2. Na caixa URL de destino, anexe um dos valores ao URL:
    • ?blob=base64
    • ?blob=mime
    • ?blob=http

Esta obra está licenciada sob uma licença não adaptada da Creative Commons Attribution-Noncommercial-Share Alike 3.0  As publicações do Twitter™ e do Facebook não são cobertas pelos termos do Creative Commons.

Avisos legais   |   Política de privacidade online