Chamada de um serviço web REST a partir de um fluxo de trabalho
- Saiba os requisitos de comunicação com o serviço web REST para o aplicativo:
- Os valores para autenticação com o aplicativo
- Os valores para solicitar dados do serviço web REST
- O formato dos dados fornecidos na resposta
Consulte a documentação do aplicativo ou consulte a empresa que hospeda o aplicativo.
- Para preparar RICOH ProcessDirector para se comunicar com o aplicativo, execute as seguintes tarefas:
- Se o aplicativo exigir um certificado de segurança, instale o certificado no computador primário de RICOH ProcessDirector.
- Se o seu ambiente exigir um servidor proxy para se comunicar com serviços web, configure o sistema para usá-lo.
Para obter mais informações, consulte as tarefas relacionadas.
- Execute um teste manual que autentique com o aplicativo e que solicita uma resposta
do serviço web REST. Verifique se o serviço web retorna a resposta que você deseja.Muitos navegadores possuem plug-ins, como Boomerang para Google Chrome, que testam chamadas de serviço web clientes REST.
- Se o serviço web incluir uma carga, decida como quer fornecer essas informações:
- Você pode inserir a carga como o valor da propriedade Request payload.
- É possível armazenar a carga de um arquivo de texto que a etapa CallRESTService pode acessar durante o processamento de tarefa.
- Clique na guia Fluxo de trabalho
- Clique no nome do fluxo de trabalho que deseja modificar.
- Opcional: Desative o fluxo de trabalho clicando no botão à esquerda do nome do fluxo de trabalho.
Se você não desativar o fluxo de trabalho ao editá-lo, tarefas que usam esse fluxo de trabalho continuarão avançando pelas etapas. Quando você salvar, o fluxo de trabalho será momentaneamente desativado e, em seguida, ativado novamente. As tarefas que estão sendo processadas no fluxo de trabalho podem apresentar um erro.
- Revise as etapas incluídas no fluxo de trabalho e os valores padrão definidos por elas.
- Inclua uma etapa com base no modelo de etapas CallRESTService para o fluxo de trabalho no local adequado.
- Defina valores para as propriedades da tarefa.
- Defina a propriedade Request URL para a URL do serviço web que a etapa chama.O URL pode usar protocolo HTTP ou HTTPS.
- Defina a propriedade Request method para o valor exigido pelo serviço web.
- Defina a propriedade Password para a senha que a etapa fornece ao serviço web REST para autenticação com o aplicativo.Você insere a senha como valor desta propriedade. Para fornecer a senha para o serviço web REST, especifique a propriedade Job.WebService.Password como um símbolo na propriedade Request payload, Cabeçalho da solicitação ou Parâmetros da solicitação: ${Job.WebService.Password}. Para determinar qual propriedade utilizar, consulte a documentação do serviço web.
- Defina a propriedade Request payload type:
- Para especificar o corpo da solicitação de serviços web como o valor da propriedade Request payload, selecione TEXT.
- Para especificar o corpo da solicitação de serviços web em um arquivo de texto que a etapa CallRESTService possa acessar durante o processamento de tarefa, selecione FILE.
- Obs.:
- Caso não especifique uma carga, RICOH ProcessDirector irá ignora o valor dessa propriedade.
- Caso o serviço web inclua uma carga, defina a propriedade Request payload:
- Se você definir a propriedade Request payload type para TEXT, insira a carga como o valor dessa propriedade.
- Se você definir a propriedade Request payload type para FILE, insira o caminho do diretório completo, o nome e a extensão do arquivo de texto
como o valor dessa propriedade.
Insira a carga como o conteúdo do arquivo de texto.
Para enviar a senha na carga, especifique a propriedade Job.WebService.Password como um símbolo.
Neste exemplo XML, o ID de pedido é armazenado como o valor da propriedade da tarefa Custom 3 ( Job.Info.Attr3). A carga inclui a senha como valor do elemento <Token> e o ID de pedido como o valor do elemento <OrderID>:
<Token>${Job.WebService.Password}</Token><OrderID>${Job.Info.Attr3}</OrderID>
A etapa resolve os símbolos quando chama o serviço web REST.
- Defina os valores para as propriedades Cabeçalho da solicitação e Parâmetros da solicitação conforme necessário.
Cada campo de cabeçalho ou parâmetro é um par palavra-chave/valor. Cada par deve aparecer em uma linha separada e deve ser separado usando sinais de dois pontos (:) ou de igual (=).
A palavra-chave e o valor podem ser várias palavras. RICOH ProcessDirector usa o primeiro sinal de dois pontos ou de igual em cada linha para dividir as palavras em par palavra-chave/valor.
Este exemplo contém dois parâmetros: token e orderId. O valor de cada palavra-chave é um símbolo RICOH ProcessDirector. Cada símbolo contém uma destas propriedades: Job.WebService.Password e Job.Info.Attr3.
token:${Job.WebService.Password}orderId:${Job.Info.Attr3}
A etapa resolve os símbolos quando chama o serviço web REST.
- Se o seu ambiente exigir um servidor proxy para se comunicar com serviços web, configure a propriedade Use proxy para o servidor proxy correto.
- Defina a propriedade Response file para o caminho do diretório completo e o nome do arquivo que RICOH ProcessDirector utiliza para armazenar a resposta do aplicativo.Geralmente, esse valor é ${getFileName(print,json,write)} ou ${getFileName(print,xml,write)}, dependendo do tipo de resposta que o aplicativo retorna.Após a resposta ser armazenada no arquivo, outras etapas no fluxo de trabalho podem processar a resposta.
- Defina a propriedade Request URL para a URL do serviço web que a etapa chama.
- Quando terminar, clique em OK.
- Salve e habilite o fluxo de trabalho.
Ao concluir a configuração dos fluxos de trabalho, teste a troca de dados entre RICOH ProcessDirector e o aplicativo.
Exemplo
O recurso Ativação de Serviços Web inclui um fluxo de trabalho RestfulWebServiceWF fornecido com uma etapa CallRESTService.