Tecnologia > Ferramentas de Apoio > LSP - Linguagem Senior de Programação > Chamando um web service via Regra

Chamar um web service via Regra

O Editor de Regras dispõe de um conjunto de funções para que seja possível a atribuição e manipulação dos parâmetros de um web service, bem como a sua execução. Para isto é necessário declarar uma variável identificando o serviço que se deseja executar.

Sintaxe:

@ Definir idProvedor.idServico.idPorta VarName; @

Definir interno.com.senior.g5.rh.fp.calculoFolha.Calcular vCalcula;

A variável informada é a que será utilizada para acessar os parâmetros, funções da porta, ler, fazer atribuições e comparações com os parâmetros.

Importante

Para que não ocorra conflito nas chamadas de web service, caso existam regras que utilizem o mesmo web service, a variável declarada deve ser uma diferente das já existentes.

Modos de Execução

Os modos de execução de web service via regra LSP são tratados por numeração na regra, conforme abaixo:

Importante

Não é possível utilizar o modo de execução Agendado em regras LSP, pois não é possível informar a periodicidade na regra.

O parâmetro ModoExecucao = 1 (Local) deve ser utilizado apenas em regras que serão executadas em instâncias de web services. Ou seja, esse parâmetro não deve ser usado nas seguintes formas de acesso: Cliente-Servidor, BrowserAccess, WindowsAccess, Web 5.0 e processos automáticos.

Web services internos (Senior)

Esta seção se aplica a chamadas de web services da própria Senior, identificados pelo prefixo interno na declaração.

Autenticação

A autenticação de web services internos pode ser feita de três formas: por usuário e senha, por token ou pelas credenciais da sessão atual. Apenas um método pode ser utilizado por chamada.

Por usuário e senha

Informe os parâmetros User e Password. O usuário exibido no Console de Web Services será o usuário informado no parâmetro.

Exemplo:

Definir interno.regra.folha ws;
ws.user = "joao";
ws.password = "****";
		

Por token

Informe o parâmetro Token. O usuário exibido no Console de Web Services será o usuário ao qual o token pertence.

Exemplo:

Definir interno.regra.folha ws;
ws.Token = "sgfgsd5fds5fds33";
		

Importante

Não é permitido informar Token e User/Password simultaneamente. Ao fazer isso, o sistema retorna um erro e a chamada não é executada.

Exemplo incorreto:

// Incorreto — causa erro

Definir interno.regra.folha ws;
ws.Token = "sgfgsd5fds5fds33";
ws.User = "joao";
ws.Password = "123456";
		

Por padrão, quando os parâmetros User e Password são informados na regra, eles são utilizados para autenticação. Caso deseje que esses parâmetros sejam ignorados e a autenticação seja feita pelas credenciais da sessão atual, acesse a Central de Configurações Senior e insira a chave com o valor com.senior.middleware.webservices.use_implicit_params_login = false.

Web services de terceiros

Esta seção se aplica a chamadas de Web services externos, não pertencentes à Senior, cadastrados no editor de web services com seu próprio endereço e configuração de provedor.

Autenticação

A autenticação em Web services de terceiros é configurada diretamente no cadastro do provedor de serviços, não sendo necessário informar parâmetros de autenticação na regra.

 

WS-Security

Permite a integração de sistemas que utilizam web services terceiros com autenticação WS-Security. Com isto, as chamadas destes web services, do tipo SOAP, permitem a inclusão de informações de segurança no cabeçalho e assim, a sua integração.

A customização desta chamada é realizada a partir de um parâmetro na regra LSP: WSSeguranca, que receberá um XML e posteriormente será repassado para o cabeçalho do envelope SOAP: Webservice.WSSeguranca = "XML_Segurança";.

 

Importante

Para mais informações sobre autenticação via Headers em Web Services, acesse a página Autenticação via Headers em Web Services

Este artigo ajudou você?