Árvore de páginas

Há duas formas de se configurar o dashboard de Contratos, utilizando a porta multiprotocolo ou configurando o servidor HTTP manualmente. As duas formas são explicadas abaixo:

2.1 - Porta Multiprotocolo

Essa é a maneira mais simplificada e prática de se executar o dashboard, porém só está disponível partir da versão 20200214  da LIB e do Appserver versão 7.00.191205P. Se possível,  priorizar esse método, pois é o mais moderno e rápido. 

Abaixo as etapas para se configurar:

  • No seu appserver.ini, na seção GENERAL, deve-se incluir a chave App_Environment, cujo o valor deve ser o nome do ambiente que os serviços rodarão. 
  • Com a porta multiprotocolo ativa, deve-se configurar o SSL para uma conexão segura, caso não deseje usar SSL é possível desabilita-lo, mas isso não é recomendado. Para mais informações sobre essa configuração acesse a página Application Server - Porta Multiprotocolo
  • Verifique se no seu RPO constam os fontes/recursos abaixo:

  • Adicionar ao seu menu do Gestão de Contratos(SIGAGCT) a rotina CNTA330, responsável pela execução do dashboard
  • Acessar a rotina, ela já pode ser executada

Com a porta multiprotocolo ativa, o Protheus executa o servidor rest na mesma porta TCP de comunicação do Protheus, diferente de antes, quando o serviço rodava numa porta distintaPor exemplo, caso o Protheus rode na porta 1236, os serviços ficam disponíveis em [SEU IP]:1236/app-root/. É importante ressaltar essa diferença, pois ao tentar acessar os serviços rest pelo caminho anterior, o usuário pode achar que o serviço não está funcionando, quando na verdade está apenas acessando o caminho errado.

Também é possível conferir se o servidor rest multiprotocolo iniciou corretamente através do console, conforme exemplo abaixo:

Com a configuração da porta multiprotocolo os parâmetros MV_GCTPURL e MV_BACKEND não são mais necessários.

É importante ressaltar que a porta multiprotocolo cria um servidor rest distinto do que era configurado anteriormente, quando se criava as seções HTTP e HTTPREST, dessa forma é possível utilizar os dois servidores ao mesmo tempo. O servidor rest criado pela porta multiprotocolo é executado na camada do AppServer, por isso é mais veloz e possivelmente será o modelo mais utilizado no futuro, enquanto o Rest anterior é feito em Advpl.

É possível verificar se o servidor HTTPREST(modelo antigo) foi ativado corretamente pelo console.log conforme abaixo:


Abaixo um exemplo dos dois servidores rest rodando simultaneamente:


Dessa forma o novo REST Server proverá os serviços pro dashboard Meus Contratos enquanto o servidor rest antigo pode continuar funcionando provendo os serviços pra outras aplicações, por exemplo outros portais.

2.2 - Servidor HTTP


1 - Habilitar a Seção http do TOTVS Application Server e configurar as chaves Patch com o endereço de onde a aplicação deverá ser hospedada e XFrameOptions com o valor ALLOW-FROM *.



Exemplo de configuração:

[HTTP]
ENABLE=1
PORT=80
PATH=C:\AP_DATA\HTTP-ROOT
XFRAMEOPTIONS = ALLOW-FROM *


Obs.: A pasta HTTP-ROOT deve fazer parte do path, pois os arquivos serão descompactados nesse diretório.

Para mais informações, consulte: https://tdn.totvs.com/display/public/PROT/FwCallApp+-+Abrindo+aplicativos+Web+no+Protheus


2- Habilitar o parâmetros MV_GCTPURL com o endereço do servidor da aplicação.

Exemplo de Configuração
MV_GCTPURL http://localhost:80 


3- Habilitar o parâmetro MV_BACKEND com o endereço do servidor do serviço REST.

Exemplo de Configuração
MV_BACKENDhttp://localhost:17115/rest


4- Configurar no menu do módulo Gestão de Contratos a chamada da rotina CNTA330



Erros comuns

  1. ERR_CONNECTION_TIMED_OUT: verificar se a sua conexão com a internet está estável e as configurações do firewall/antivírus e do DNS estão corretas. Verifique através do comando PING se o IP está acessível da máquina que está tentando acessar a dashboard.
  2. ERR_CERT_AUTHORITY_INVALID: verificar se a sua configuração SSL foi feita seguindo as instruções da documentação do AppServer, caso tenha realizado a configuração corretamente verificar se o seu certificado ainda é válido. Para confirmar se o problema é relacionado ao certificado é possível desativar o SSL, para isso basta adicionar a chave MULTIPROTOCOLPORTSECURE=0 na seção do [Drivers] do AppServer.ini e a chave SecureConnection=0 na seção do ambiente no Smartclient.ini.


3. Configuração da seção Sockets [HTTPREST]: Ao abrir o Dashboard os campos de Empresa/Filial não carregam e é apresentada a mensagem Internal Error. Verifique se o parâmetro Security está igualado a 1, conforme a imagem:

Para mais informações consulte a documentação de configuração do Web Service REST.


4. Configuração da seção URIs [HTTPURI]: Ao abrir o Dashboard alguns Cards, e/ou os campos de Empresa ou Filial não carregam e no console do appserver é exibida a mensagem [INFO ][SERVER] timeout to accept new requisition. Aumente o número de threads disponíveis (de preferência 4 ou mais) na chave Instances, conforme a imagem:

Para mais informações consulte a documentação de configuração de Instances.