Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Button
Texto<<< Voltar
Linkhttps://tdn.totvs.com/pages/releaseview.action?pageId=639954904


Instruções para realizar a configuração do Monitor EAI2 na arquitetura do Datasul


Objetivo


Esta documentação tem a finalidade de servir como uma guia no momento da configuração do Monitor EAI2 na arquitetura TOMCAT.

Para tanto, abaixo segue as instruções para que o novo monitor seja executado corretamente.





Informações
iconfalse

Antes de configurar o Monitor do EAI2, dê uma olhadinha em como criar os Aplicativos Internos e Externos dentro do produto Datasul.

No quadro a seguir você pode acessar a documentação que auxilia na criação de Aplicativos externos bem como a edição do Aplicativo interno.


Painel
borderColorlightblue
titleColorOrange
borderStyledashed


Page Banner
imagehttps://tdn.totvs.com/download/attachments/321291331/image2020-7-24_8-48-38.png?version=1&modificationDate=1595591318497&api=v2
actionTitleAcesse aqui
actionUrlhttps://tdn.totvs.com/pages/releaseview.action?pageId=321291331
button-linkhttps://tdn.totvs.com/x/Q4QmEw
button-textAcesse a página
descriptionComo configurar os Aplicativos no EAI2
titleEAI Aplicativos




Painel
borderColorlightblue
titleColorOrange
borderStyledashed
titleAcessos ao monitor

Somente determinados usuários possuem acesso ao monitor unificado do EAI.

Para acessar o monitor é necessário um usuário previamente existente no aplicativo interno (ERP). 

Para isso:

  • No produto Datasul é necessário criar um usuário do Tipo EAI;
  • Abra o programa Manutenção de Usuários (SEC000AA);
  • No momento de criação do usuário, selecione a opção EAI.

Painel
borderColorlightblue
titleColorOrange
borderStyledashed
titleTermos Comuns

O Monitor EAI foi construído para funcionar independentemente da tecnologia adotada em cada produto TOTVS.

Construído e pensado para a Web, ele apenas precisa de um servidor HTTP para sua instalação.

A partir deste ponto, os seguintes termos serão usados:

  • Aplicativo - Produto integrado;
  • JSON - Java Script Object Notation - o formato de objetos de Javascript (mas não utilizada somente por ele);
  • Aplicativo Interno - Produto no qual o Monitor Unificado está ligado;
  • Aplicativo externo - Produto ao qual o aplicativo interno se integra.


Painel
borderColororange
bgColorlightgrey
borderStyledashed

.

VAMOS AO MONITOR!!!



Painel
borderColororange
borderStyledashed

Antes de tudo!



A primeira tarefa a se fazer antes de começar a configurar o monitor, é realizar a conferência das informações dentro do produto DATASUL.

  • Para isso é preciso acessar o programa html.aplicativos-eai e conferir o NOME do Aplicativo interno cadastrado.

Segue exemplo:

  • Na sequência realizar a conferência das propriedades do EAI2 no produto, ou até mesmo a criação dessas propriedades.

Segue exemplo:

Aviso
titleIMPORTANTE!

A informação mais importante nesta etapa é conferir o nome do Aplicativo Interno, tanto no programa de cadastro do aplicativo como nas propriedades.

ESSES NOMES DEVEM SER O MESMO


  • Caso esses nomes não sejam os mesmos, quando o monitor for configurado, essas informações irão confundir a configuração e os dados apresentados serão inconsistentes.



Painel
borderColororange
borderStyledashed

WIZARD



Painel
borderColorlightblue
titleColorOrange
borderStyledashed


Card documentos
InformacaoA partir da versão 12.1.18 do Datasul, os fontes do Monitor EAI são expedidos junto com o produto e podem ser encontrados em: Framework Tomcat: <Pasta_Datasul>/<Pasta_Tomcat>/webapps/totvseai-monitor.
TituloPasta com fontes do Monitor EAI

Podem ser encontrados na pasta do Tomcat: <Pasta_Datasul>/<Pasta_Tomcat>/webapps/totvseai-monitor.




  •  Acesse o endereço http://<servidor>:<porta>/totvseai-monitor/index.html, onde <servidor> é endereço da máquina onde o Datasul está instalado e <porta> é a porta de instalação do produto (por exemplo: 8080).

A tela do wizard abaixo será apresentada para a configuração do arquivo monitor-url-list.json.

lembrando que este arquivo deve ser copiado para a pasta config situada dentro da pasta relativa ao monitor, conforme indicado no quadro acima



Painel
borderColororange
borderStyledashed

Preenchimento dos dados



Nesta tela deve ser informado o servidor HTTP e a porta REST do ambiente desejado (neste caso, 8080).

  • É preciso informar usuário e senha para conectar na URL, e clicar no botão Carregar.


  • Quando o monitor é acionado em um ambiente limpo, os dados iniciais do configurador serão obtidos a partir URL informada no campo URL Serviço Monitor. 
Informações

Caso precise refazer o arquivo monitor-url-list.json, basta retirá-lo/apagá-lo da pasta config e assim o wizard será apresentado novamente.


  • A partir daí, a tela de configuração é preenchida com as informações faltantes, como a lista dos aplicativos externos. Depois disso, é possível ajustar as informações sugeridas como, por exemplo, as URLs de serviços do monitor dos aplicativos externos listados.
Informações

Dependendo do aplicativo externo, é preciso informar o usuário e senha, assim como é feito no momento de cadastrar um App Externo no produto Datatsul.

  • Realize o download do arquivo de configuração, conforme indicado na barra inferior do wizard.
  • Quando o monitor já está configurado, o wizard mostra os dados constantes no arquivo monitor-url-list.json. É possível alterar informações como usuário e senha, bem como os dados de conexão com os aplicativos externos (URL, usuário e senha).


Painel
borderColororange
borderStyledashed

Arquivo JSON



O arquivo baixado deve ser copiado para o diretório \totvseai-monitor\config no servidor Datasul, mantendo, impreterivelmente, o nome de monitor-url-list.json

Caso seja necessário colocar o arquivo de configuração em outra pasta, consulte a seção, Alteração do local do Arquivo ao final deste documento.


Painel
borderColororange
borderStyledashed

Acesso ao Monitor



Depois de executar todos os procedimentos, basta realizar o acesso a página principal do Monitor EAI e o mesmo estará pronto para utilização. Observação: O login deve ser realizado de acordo com o conteúdo informado nos campos Usuário e Senha da tela do Wizard.




Painel
borderColororange
borderStyledashed

Sobre o arquivo de configuração (monitor-url-list.json)



O arquivo monitor-url-list.json, situado na pasta config, é fundamental para o correto funcionamento do monitor. Nele estarão contidos todos os aplicativos referenciados numa integração, sejam internos ou externos. Um aplicativo é descrito através de um JSON contendo os seguintes atributos:

Nome do Aplicativo: Este nome, no Datasul, é composto pelo nome do environment utilizado (em upper case), seguido de @ e DATASUL. Para os demais produtos, usar, depois do @ PROTHEUS, LOGIX ou RM, conforme aplicação.
O nome será um atributo do tipo Objeto JSON, que por sua vez, conterá os seguintes atributos:

  1. monitorURL: Deve seguir o mesmo endereço HTTP utilizado no produto
  2. isActive: Deve existir e ter valor igual a true somente para o aplicativo interno onde o monitor estiver embarcado.

  3. userCode: Usuário necessário para acessar os serviços de monitoramento do aplicativo interno (deve estar em base64).

  4. password: Senha necessária para acessar os serviços de monitoramento do aplicativo interno (deve estar em base64).

  5. externalApps: Atributo do tipo array de caracteres, contendo o identificador do aplicativo. Por exemplo: APP_LOGIX@LOGIX.

Os demais aplicativos devem ser referenciados usando as orientações acima. Abaixo, um exemplo de configuração do arquivo, onde um DATASUL com um environment de nome APP_INTERNO, no grupo de , comunica-se com um LOGIX com environment de nome APP_EXTERNO_1:

Exemplo de configuração do arquivo monitor-url-list.json

{
    "APP_INTERNO@DATASUL" : {

                 "monitorURL": "http://localhost:8080",
        "isActive" : "true",
        "userCode" : "j50dkke3=",
        "password" : "j068k2jo="
        "externalApps" : ["APP_EXTERNO_1@LOGIX"]
    },
    "APP_EXTERNO_1@LOGIX" : {
        "userCode" : "Uj3O9=",
        "password" : "THi3L3=",
        "externalApps" : ["APP_EXTERNO@DATASUL"]
    }
}



Painel
borderColororange
borderStyledashed

Alteração do local do arquivo



Há situações onde o local padrão do arquivo monitor-url-list.json (/totvseai-monitor/config) não é a mais conveniente. Alguns exemplos são:

  • Ambientes de teste do monitor, onde a atualização do pacote é frequente.

  • Necessidade de compartilhar o arquivo sem ter que expor toda a pasta de fontes do monitor.

Por conta disso, é possível alterar o local padrão realizando ajuste do arquivo totvs-app.constant.js, situado na pasta totvseai-monitor/js. Neste arquivo, deve-se ajustar o valor da propriedade (ou variável) EXTERNAL_APPS_URL para apontar para um novo local, o qual deve estar visível como um endereço WEB.

Por exemplo: supondo que o monitor esteja hospedado no servidor http://localhost:8080, e que a nova localização do arquivo seja uma pasta chamada ...\<diretório_tomcat>\config, o arquivo de configuração deve estar acessível pelo navegador de internet usando o endereço http://localhost:8080/config/monitor-url-list.json

Aviso
iconfalse

A nova pasta precisa estar na estrutura do TOMCAT para ser visível com um endereço web pelo servidor. Além disso, precisa ser referenciado no arquivo server.xml, conforme o passo 7, a seguir 

Logo, a variável deve ser alterada para:

Informações
iconfalse
EXTERNAL_APPS_URL: '/config/monitor-url-list.json',



Painel
borderColororange
borderStyledashed

Configuração do arquivo SERVER.XML



Dependendo do servidor WEB que hospeda o monitor de EAI, será necessário ajustar algumas configurações para criação da pasta externa ao pacote padrão do aplicativo. Para saber como proceder este ajuste em servidores de aplicação TOTVS, verifique abaixo:


Procedimentos necessários no servidor de aplicação Tomcat para disponibilizar conteúdo estático (HTML, imagens, etc.) que não esteja necessariamente vinculado em uma aplicação Web Java (.war).

Procedimentos

  1. Se julgar necessário, crie um diretório na máquina que hospeda o servidor Tomcat.
  2. Edite o arquivo server.xml, geralmente situado em <dir_instalação_tomcat>/conf.
  3. Localize a tag <Host> e dentro dela inclua a tag <Context> seguindo o template abaixo:
    <Context path="<caminho usado na URL para a pasta>" docBase="<pasta no servidor>"></Context>
    Em <caminho usado na URL para a pasta>, informe um valor qualquer, por exemplo, "config".
    Em <pasta no servidor>, informe o caminho completo da pasta criada no item 1. Pode-se informar um caminho relativo a pasta bin, por exemplo, "../config", que seria o mesmo que "<dir_instalacao_tomcat>/config".
  4. Salve o arquivo e reinicie o Tomcat.
  5. Coloque o conteúdo que desejar na pasta criada no item 1.

Exemplos

Server.xml após ajuste

Bloco de código
languagexml
themeEclipse
linenumberstrue
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
  <Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
  <GlobalNamingResources>
    <Resource auth="Container" 
              description="User database that can be updated and saved" 
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory" 
              name="UserDatabase" 
              pathname="conf/tomcat-users.xml" 
              type="org.apache.catalina.UserDatabase"/>
  </GlobalNamingResources>

  <Service name="Catalina">
    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>

    <Engine defaultHost="localhost" name="Catalina">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
      </Realm>

      <Host appBase="webapps" autoDeploy="true" name="localhost" startStopThreads="3" unpackWARs="true">
		
		<!--  CONFIGURACAO DO EAI  -->
		<Context docBase="../config_files" path="/config" />

		<!--  CONFIGURACAO DO VALVE -->
        <Valve className="com.totvs.valve.TotvsCorsValve"
            allowHeaders="Content-Type,Accept,Accept-Language,Content-Language,Authorization,tenantId,userId,companyId,authorization,returnformatversion"
            contextsToValidate="/totvs-login,/totvs-rest,/dts,/api,/webexecbo,/totvseai-monitor"
            allowOrigin="http://localhost:8100"
            allowMethods="GET, POST, DELETE, PUT, PATCH, HEAD, OPTIONS"
            allowCredential="true" />
		
	  </Host>
    </Engine>
  </Service>
</Server>
Aviso
titleImportante - VALVE

O produto DATASUL não permite requisições para servidores diferentes, para que não ocorram bloqueios das requisições pelo CORS é preciso configurar o Datasul-Valve, também no arquivo server.xml


A tag "Valve" deve estar configurada como o último elemento da tag "Host". Caso exista algum "Header" da request diferente dos informados anteriormente (allowHeaders), estes devem ser incluídos nessa tag.

Bloco de código
languagexml
themeEclipse
titledatasul-valve
linenumberstrue
<Valve className="com.totvs.valve.TotvsCorsValve"
allowHeaders="Content-Type,Accept,Accept-Language,Content-Language,Authorization,tenantId,userId,companyId,authorization,returnformatversion"
contextsToValidate="/totvs-login,/totvs-rest,/dts,/api,/webexecbo,/totvseai-monitor"
allowOrigin="http://localhost:8100"
allowMethods="GET, POST, DELETE, PUT, PATCH, HEAD, OPTIONS"
allowCredential="true" />






Product_template
DescOlá, Boas vindas!
Monitor EAI2

 Numbers Vetores por Vecteezy - Acesse