Home

TOTVS | Plataformas e tecnologias

Árvore de páginas

Versões comparadas

Chave

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

Índice

Índice
maxLevel4
outlinetrue
exclude.*ndice
stylenone

 

Plataforma

Produto:  ECM

Versão: 3.00

 

Ocorrência

O Totvs TOTVS | ECM está integrado com o Protheus sendo que os dois com Banco de Dados são MySQL. A conexão com o segundo data source é para movimentar formulários relativos a à matéria prima. Portanto, como efetuar a comunicação com um segundo Banco de Dados no Totvs TOTVS | ECM 3?

 

Causa

Dificuldades em efetuar conexão de dois Data Sources no Totvs TOTVS | ECM.

 

Solução

Para que o procedimento seja realizado é importante parar o serviço da plataforma Totvs TOTVS | ECM.

Para configurar um segundo Data Source no Totvs TOTVS | ECM faça os seguintes procedimentos:

Deck of Cards
effectDuration0.5
historyfalse
idsamples
effectTypefade
Card
defaulttrue
id1
labelPasso 1

Acesse no diretório do Windows, na pasta de instalação do Totvs TOTVS | ECM, o arquivo wdk-ds.xml disponível em <Install<Instalação-ECM>\server\default\deploy.

Bloco de código
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
	<local-tx-datasource>
		<use-java-context>false</use-java-context>
		<jndi-name>jdbc/webdeskDS</jndi-name>
		<connection-url>jdbc:mysql://localhost:3306/ecm<[host]:[porta]/[nome_base]</connection-url>
		<driver-class>com.mysql.jdbc.Driver</driver-class>
		<user-name>root</user-name>
		<password>123</password>
		<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
	<!--  <security-domain>EncryptDBPasswordDS</security-domain> -->
	</local-tx-datasource>
	
	<no-tx-datasource>
		<use-java-context>false</use-java-context>
		<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
		<connection-url>jdbc:mysql://localhost:3306/ecm<[host]:[porta]/[nome_base]</connection-url>
		<driver-class>com.mysql.jdbc.Driver</driver-class>
		<user-name>root<name>[username]</user-name>
		<password>123<<password>[senha]</password>
		<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
	<!--  <security-domain>EncryptDBPasswordQuartzDS</security-domain> -->		
	</no-tx-datasource>
</datasources>

 

Acima estamos utilizando um exemplo com o Banco de Dados MySQL.

Card
id2
labelPasso 2

Copie todo código do ‘<local-tx-datasource>' a '</local-tx-datasource>' e cole abaixo da linha que contém o código '</no-tx-datasource>' conforme mostrado abaixo:

Bloco de código
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
 	<local-tx-datasource>
 		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/webdeskDS</jndi-name>
 		<connection-url>jdbc:mysql://localhost:3306/ecm<[host]:[porta]/[nome_base]</connection-url>
 		<driver-class>com.mysql.jdbc.Driver</driver-class>
 		<user-name>root<name>[username]</user-name>
 		<password>123<<password>[senha]</password>
 		<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
 <!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
 	</local-tx-datasource>
 
 	<no-tx-datasource>
 		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
 		<connection-url>jdbc:mysql://localhost:3306/ecm<[host]:[porta]/[nome_base]</connection-url>
 		<driver-class>com.mysql.jdbc.Driver</driver-class>
 		<user-name>root<name>[username]</user-name>
 		<password>123<<password>[senha]</password>
 		<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>		<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
 	<!-- <security-domain>EncryptDBPasswordQuartzDS</security-domain> --> 
 	</no-tx-datasource>
 
 	<local-tx-datasource>
 		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/BancoecmDS</jndi-name>
 		<connection-url>jdbc:mysql://localhost:3306/banco-ecm<[host]:[porta]/[nome_base]</connection-url>
 		<driver-class>com.mysql.jdbc.Driver</driver-class>
 		<user-name>root<name>[username]</user-name>
 		<password>123<<password>[senha]</password>
 		<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
 	<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
 	</local-tx-datasource>
</datasources>

Card
id3
labelPasso 3

Altere as linhas do novo <local-tx-datasource> conforme descrito abaixo:

  • <jndi-name>jdbc/[nome]DS</jndi-name>
  • <connection-url>jdbc:mysql://localhost:3306[host]:[porta]/[nome do outro banco]</connection-url>
  • <user-name>[usuário de acesso ao banco]</user-name>
  • <password>[senha de acesso ao banco]</password>

 

Após este procedimento, salve as alterações e inicialize o serviço do Totvs TOTVS | ECM.

 

OBS: A conexão do Totvs TOTVS | ECM com um segundo Data Source pode ser realizada com outros modelos de banco também, obedecendo a Matriz de Portabilidade portabilidade da plataforma.

A baixo Abaixo apresentamos alguns exemplos com os bancos Oracle e SQL Server.

Card
id4
labelPasso 4

Se alguma configuração for realizada de forma incorreta será apresentado apresentada uma mensagem de erro no arquivo server.log disponível em <Install<Instalação-ECM>/server/default/log.

 

 

Exemplo de comunicação com dois Data Sources – Oracle

 

Bloco de código
languagexml
<?xml version="1.0" encoding="UTF-8"?>
 	<datasources>
 		<local-tx-datasource>
		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/webdeskDS</jndi-name>
 		<connection-url>jdbc:oracle:thin:@FRANCES:1521:ORADB<@[host]:[porta]:[nome_base]</connection-url>
 		<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
 		<user-name>ecm<name>[username]</user-name>
 		<password>ecm<<password>[senha]</password>
 		<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
 	</local-tx-datasource>
 
 	<no-tx-datasource>
 		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
 		<connection-url>jdbc:oracle:thin:@FRANCES:1521:ORADB<@[host]:[porta]:[nome_base]</connection-url>
 		<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
 		<user-name>ecm<name>[username]</user-name>
 		<password>ecm<<password>[senha]</password>
 		<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
 	</no-tx-datasource>
 
 	<local-tx-datasource>
 		<use-java-context>false</use-java-context>
 		<jndi-name>jdbc/ORA2DS</jndi-name>
 		<connection-url>jdbc:oracle:thin:@FRANCES:1521:ORACLEDB<@[host]:[porta]:[nome_base]</connection-url>
 		<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
 		<user-name>root<name>[username]</user-name>
 		<password>123<<password>[senha]</password>
 		<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
 	</local-tx-datasource>
 </datasources>


Exemplo de comunicação com dois Data Sources – SQL Server
 

Bloco de código
languagexml
<?xml version="1.0" encoding="UTF-8"?>
 	<datasources>
	<local-tx-datasource>
		<use-java-context>false</use-java-context>
		<jndi-name>jdbc/webdeskDS</jndi-name>
		<connection-url>jdbc:sqlserver://10.80.81.123:1433[host]:[porta];databaseName=ecm<[nome_base]</connection-url>
		<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
		<user-name>root<name>[username]</user-name>
		<password>123<<password>[password]</password>
		<check-valid-connection-sql>select 1</check-valid-connection-sql>
	<!--  <security-domain>EncryptDBPasswordDS</security-domain> -->
	</local-tx-datasource>
	
	<no-tx-datasource>
		<use-java-context>false</use-java-context>
		<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
		<connection-url>jdbc:sqlserver://10.80.81.123:1433[host]:[porta];databaseName=ecm<[nome_base]</connection-url>
		<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
		<user-name>root<name>[username]</user-name>
		<password>123<<password>[password]</password>
		<check-valid-connection-sql>select 1</check-valid-connection-sql>
	<!--  <security-domain>EncryptDBPasswordQuartzDS</security-domain> -->		
	</no-tx-datasource>
<local-tx-datasource>
		<use-java-context>false</use-java-context>
		<jndi-name>jdbc/SQLECMDS</jndi-name>
		<connection-url>jdbc:sqlserver://10.80.81.123:1433;databaseName=banco-ecm<[host]:[porta];databaseName=[nome_base]</connection-url>
		<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
		<user-name>root<name>[username]</user-name>
		<password>123<<password>[password]</password>
		<check-valid-connection-sql>select 1</check-valid-connection-sql>
	<!--  <security-domain>EncryptDBPasswordDS</security-domain> -->
	</local-tx-datasource>
</datasources>
Nota
titleObservação

As informações contidas acima são exemplos para a utilização de dois Data Source Sources no Totvs TOTVS | ECM, contudo o procedimento de configuração é de responsabilidade do cliente.