Histórico da Página
Índice | |
---|---|
|
...
|
...
...
Objetivo
O objetivo deste documento é demonstrar como configurar o
...
arquivo context.xml
...
do Tomcat conforme as necessidades do ambiente
...
As configurações são armazenadas no banco de dados e criamos a figura
...
do agrupador de propriedades
...
para tratar as propriedades que serão distintas a
...
cada Tomcat
...
utilizado.
Painel | ||||
---|---|---|---|---|
| ||||
Se não |
...
existe a necessidade de propriedades específicas por servidor Tomcat usando o mesmo banco de dados as únicas configurações necessárias são:
|
Painel | ||||
---|---|---|---|---|
| ||||
Abaixo exemplo do arquivo:
|
...
|
...
Agrupadores de Propriedades
A partir da versão
...
12.1.28
...
do produto DATASUL,
...
disponibiliza a funcionalidade de agrupadores de propriedades, que visa facilitar a criação, gerenciamento e redução dos recursos necessários para os ambientes.
O agrupador permite que um mesmo banco de dados
...
de foundation armazene as configurações dos
...
diversos ambientes Tomcat.
Para utilizar o agrupador de propriedades de inserir no arquivo de
...
configuração context.xml
...
a seguinte configuração:
<Environment name="totvs.envprop.group" value="Servidor_teste" type="java.lang.String" /> |
---|
...
Em que Servidor_teste
...
é o seu agrupador, pode-se utilizar o nome que melhor irá identificar o uso desse servidor Tomcat.
Quando estiver usando esse servidor toda a configuração de foundation feita nele não se propaga aos outros servidores que usam o mesmo banco de dados.
Para saber que está usando um agrupador no ambiente foi colocado o nome do agrupador na barra de status, vejam na imagem o destaque em vermelho.
No exemplo
...
foi alterada a cor de fundo do menu para verde e essa configuração só será utilizada nos servidores com agrupador Servidor_teste.
...
Arquitetura
...
Se no mesmo banco de dados estiverem configurados diversos servidores sem o agrupador quando alterar uma configuração, da cor por exemplo, todos os servidores que não tem o agrupador serão afetados, os que tem agrupador não.
Caso precise desfazer as configurações específicas do agrupador posso fazer isso através das propriedades de ambiente descritas nesse documento CFG - Ambiente .
Arquitetura
É possível utilizar várias configurações de ambiente com mais de um Tomcat e Appserver por conjunto de bancos.
Neste exemplo, o ambiente está distribuído
...
entre Tomcats, Appservers e conjunto da bancos
...
diferentes para demonstrar as possibilidades:
...
...
...
...
...
...
...
...
...
...
Para informar para o Tomcat qual o Appserver será utilizado, é preciso definir uma tag Environment, dentro do arquivo .../TOMCAT/conf/context.xml, que conterá a propriedade "totvs.appserver" e a URL de conexão do AppServer, conforme o exemplo abaixo:
...
Neste outro exemplo, existem os seguintes ambientes: produção, desenvolvimento e testes.
O ambiente de produção está apontando para um único servidor Appserver e servidor de banco de dados.
Já o ambiente de desenvolvimento e testes podem apontar para um servidor Appserver diferente, onde cada um terá o seu próprio PROPATH, e cada servidor Appserver poderá apontar para o mesmo servidor de banco de dados.
Neste formato, onde é possível manter vários servidores appserver, utilizando o arquivo .../TOMCAT/conf/context.xml, pode-se especificar propriedades diferentes em cada servidor, por exemplo:
- No Tomcat de desenvolvimento, existe o licenciamento do tipo "normal", já no Tomcat de homologação o licenciamento do tipo "test".
Então concluí-se que no o arquivo .../TOMCAT/conf/context.xml, podem existir propriedades diferenciadas para os ambientes, onde os valores especificados ficarão "fixos" dentro desses ambientes.
...
Context
Por meio do arquivo context.xml é possível sobrescrever as propriedades do produto DATASUL, o arquivo fica localizado na pasta conf, onde foi instalado o Tomcat. Para realizar o procedimento basta adicionar um nova Environment no arquivo context.xml.
Exemplo de propriedade sobrescrevendo a porta do License:
...
Quando adicionada uma propriedade no context.xml, está "sobrescrevendo" (em tempo de execução) o valor desta propriedade, onde o valor já existente no banco de dados será ignorado e será desconsiderado qualquer valor especificado na tela HTML de Propriedades do Sistema. Este recurso é muito útil quando existem ambientes de homologação, desenvolvimento e produção, pois cada um poderá ter o seu próprio AppServer e as suas propriedades customizadas.
Informações |
---|
Todos as propriedades são do tipo java.lang.String |
...
Agrupadores de Propriedades
A partir da versão 12.1.28 do produto DATASUL, estará disponibilizada a funcionalidade de agrupadores de propriedades, que visa facilitar a criação, gerenciamento e redução dos recursos necessários para os ambientes.
Um exemplo interessante de utilização dos agrupadores, seria em um ambiente de homologação e de desenvolvimento, onde utilizando os agrupadores pode-se configurar propriedades com valores diferenciados entre eles. Com isso é possível utilizar o mesmo servidor Appserver e o mesmo servidor de banco de dados.
Nesse exemplo, as configurações do arquivo context.xml serão as seguintes:
Ambiente de Desenvolvimento
Bloco de código |
---|
<?xml version="1.0" encoding="UTF-8"?>
<Context crossContext="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Environment name="totvs.appserver" value="AppServer://servidorApp:5162/totvs-brk1" type="java.lang.String" />
<Environment name="totvs.envprop.group" value="desenv" type="java.lang.String" />
<Environment name="totvs.license.ambient.type" value="normal" type="java.lang.String" />
</Context> |
Ambiente de Homologação
Bloco de código |
---|
<?xml version="1.0" encoding="UTF-8"?>
<Context crossContext="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Environment name="totvs.appserver" value="AppServer://servidorApp:5162/totvs-brk1" type="java.lang.String" />
<Environment name="totvs.envprop.group" value="homolog" type="java.lang.String" />
<Environment name="totvs.license.ambient.type" value="test" type="java.lang.String" />
</Context> |
...
Lista de propriedades
...