Header Ads

Como expor o WebService da TOTVS

Este documento tem por objetivo demonstrar qual é o procedimento para configurar o Host para disponibilizar os WebServices responsáveis pela integração de aplicativos de terceiros com o RM.

Cada WebServices possui os seus métodos. O WebService indicado para consulta de cadastro e inclusão/alteração/exclusão de um cadastro é o wsDataServer. Já o indicado para executar um processo (faturar movimento, cancelar movimento, cancelar lançamento, etc) é o wsProcess.

A notícia boa é que ativar os webservices é muito simples e você pode fazer isto via IIS ou via Host do RM. Aqui, nós trataremos apenas a utilização via Host do RM. Antes de qualquer coisa, você precisa se certificar que tenha acesso de administrador ao servidor e permissão de escrita no diretório de instalação do RM. O processo todo é feito em dois passos, mas atenção, é necessário reiniciar o Host do RM no final.

1) Edite o arquivo RM.Host.Service.exe.config e RM.Host.exe.config, que estão na pasta <diretório de instalação do RM>\RM.Net:

2) Adicione as seguintes tags no bloco de instruções <appSettings> ... </appSettings>
<add key="DEFAULTDB" value="CorporeRM" />
<add key="HTTPPORT" value="8051" />
No value da tag DefaultDB deve ser informado o Alias, do arquivo Alias.dat que contém a base de dados que será utilizada. Na tag HTTPPORT informe a porta utilizada pelo Host para os serviços via WS (Geralmente é informado o padrão 8051).

Como exemplo abaixo, teremos um arquivo HOST.

<?xml version="1.0"?>
<configuration>
   <appSettings>
        <add key="JobServer3Camadas" value="false" />
        <add key="Port" value="8050" />
        <add key="ActionsPath" value="C:\totvs\CorporeRM\RM.Net;C:\totvs\CorporeRM\Corpore.Net\Bin" />
        <add key="EnableCompression" value="true" />
        <add key="DEFAULTDB" value="CorporeRM" />
        <add key="HTTPPORT" value="8051" />
   </appSettings>
   <runtime>
        <gcServer enabled="true" />
   </runtime>
</configuration>

3) Em alguns casos é necessário adicionar um endereço a reserva de portas dentro do sistema operacional Windows, para isto, abra o Promp de comandos e digite a seguinte informação:
netsh http add urlacl url=http://+:8051/ user=NetworkService

Será exibida uma mensagem de que a URL foi reservada com sucesso, conforme print abaixo:

Neste exemplo a porta utilizada é a 8051. Caso deseje adicionar mais serviços do Host com outras portas ou a porta utilizada seja diferente da padrão, deve-se executar o comando netsh para a(s) porta(s) desejada(s).

4) Por fim, abra o programa RM.Host.ServiceManager.exe e pare o serviço e reinicie ele novamente. Após ele reiniciar, os serviços estaram disponíveis. Para verificar se as configurações estão corretas, informe a URL abaixo no browser (Internet Explorer, Mozilla Firefox, etc):.

http://<IP ou HostName da máquina em que o Host está configurado>:<porta informada no arquivo de configuração do host, tag HTTPPORT>/wsPageIndex
ou o link abaixo, se executar ele dentro do próprio servidor do WebService.
http://localhost:8051/wsPageIndex

Para testar o mesmo na rede, troque LOCALHOST pelo IP do servidor e veja se a página aparece conforme imagem abaixo, e se o campo DEFAULTDB esta preenchido com o ALIAS que definiu no item 2) acima

5) Para expor o WebService a conexões externas, deve-se liberar a conexão externa para o servidor e redirecina-la para o servidor em questão. (Procure o pessoal de sua TI para fazer isto), e dentro dos arquivos HOST configurado no item 2) deve-se adicionar mais uma tag:
<add key="ServicesHostName" value="ip externo OU nome externo" />
Então, se a sua empresa liberar o acesso externo, no campo VALUE deve ser informado a URL ou então o IP externo. Vamos supor que o endereço do WebService, seguido da porta de comunicação seja http://webservice.minhaempresa.com.br:8051 então no exemplo acima vai ficar:
<add key="ServicesHostName" value="webservice.minhaempresa.com.br" />

6) O Totvs RM utiliza o padrão SOAP em todas as chamadas, ou seja, para construir integrações ou acessar dados, você precisará de um cliente que tenha suporte ao protocolo SOAP. Um dos clientes mais populares e utilizados para desenvolvimento e testes é o SoapUI, e para baixar o software, Clique Aqui para baixar o mesmo.

Gostou da dica? Comente e compartilhe.

Fonte: TDN oficial da TOTVS

Nenhum comentário

Tecnologia do Blogger.