05-05-2020 09:46 AM
I tried to configure separate repositories for encrypted and non-encrypted documents. I managed to do save documents in respective repositories as well but the URL received by Nuxeo after creation show 'default' repository only.
Here, in the above link I am still getting 'defalut' as repository name.
Below the changes I did.
nuxeo.db.xaMode=true
<?xml version="1.0"?>
<component name="datasources-encrypted-config">
<extension target="org.nuxeo.runtime.datasource" point="datasources">
<datasource name="jdbc/repository_encrypted" driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5432/sboot" username="sboot" password="sboot"
maxPoolSize="100"
minPoolSize="5"
blockingTimeoutMillis="1000"
idleTimeoutMinutes="5"
activeTimeoutMinutes="0"
sqlExceptionSorter="org.nuxeo.runtime.datasource.DatasourceExceptionSorter"
validationQuery=""
accessToUnderlyingConnectionAllowed="true" />
<link name="jdbc/NuxeoDS" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxsqldirectory" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxrelations-default-jena" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/comment-relations" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxaudit-logs" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxjbpm" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/placeful_service_ds" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxwebwidgets" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/nxuidsequencer" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/keyvaluestore" global="jdbc/nuxeo" type="javax.sql.DataSource" />
<link name="jdbc/repository_default" global="jdbc/nuxeo" type="javax.sql.DataSource" />
</extension>
</component>
<#escape x as x?xml>
<?xml version="1.0"?>
<component name="encrypted-repository-config">
<extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration">
<blobprovider name="encrypted">
<class>org.nuxeo.ecm.core.blob.binary.AESBinaryManager</class>
<property name="path">binaries-encrypted</property>
</blobprovider>
</extension>
<#if "${nuxeo.mongodb.server}" == "">
<extension target="org.nuxeo.ecm.core.storage.sql.RepositoryService"
point="repository">
<repository name="encrypted" label="label.encrypted.repository" factory="org.nuxeo.ecm.core.storage.sql.ra.PoolingRepositoryFactory">
<pool minPoolSize="${nuxeo.vcs["min-pool-size"]}" maxPoolSize="${nuxeo.vcs["max-pool-size"]}"
blockingTimeoutMillis="${nuxeo.vcs["blocking-timeout-millis"]}"
idleTimeoutMinutes="${nuxeo.vcs["idle-timeout-minutes"]}"
activeTimeoutMinutes="${nuxeo.vcs["active-timeout-minutes"]}" />
<clustering id="${repository.clustering.id}" enabled="${repository.clustering.enabled}" delay="${repository.clustering.delay}" />
<clusterInvalidatorClass>org.nuxeo.ecm.core.storage.sql.VCSPubSubInvalidator</clusterInvalidatorClass>
<noDDL>${nuxeo.vcs.noddl}</noDDL>
<ddlMode>${nuxeo.vcs.ddlmode}</ddlMode>
<aclOptimizations enabled="${nuxeo.vcs.optimizations.acl.enabled}"/>
<pathOptimizations enabled="${nuxeo.vcs.optimizations.path.enabled}"/>
<idType>${nuxeo.vcs.idtype}</idType>
<changeTokenEnabled>${nuxeo.changetoken.enabled}</changeTokenEnabled>
<indexing>
<#if "${nuxeo.db.type}" == "postgresql">
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}"
analyzer="${nuxeo.vcs.fulltext.analyzer.language}">
<index name="default">
<!-- all props implied -->
</index>
<index name="title">
<field>dc:title</field>
</index>
<index name="description">
<field>dc:description</field>
</index>
</fulltext>
<#elseif "${nuxeo.db.type}" == "oracle">
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}">
<index name="default">
<!-- all props implied -->
</index>
<index name="title">
<field>dc:title</field>
</index>
<index name="description">
<field>dc:description</field>
</index>
</fulltext>
<!--
For Oracle (Oracle Text indexing parameters):
<fulltext analyzer="LEXER MY_LEXER"/>
See doc at:
http://jira.nuxeo.org/browse/NXP-4035
http://download.oracle.com/docs/cd/B19306_01/text.102/b14218/cdatadic.htm
-->
<#elseif "${nuxeo.db.type}" == "mssql">
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}"
analyzer="${nuxeo.vcs.fulltext.analyzer.language}">
<index name="default">
<!-- all props implied -->
</index>
<!-- SQL Server does not support more than one fulltext index per
table: to add support for multiple fulltext index would required to
change the datamodel of VCS -->
</fulltext>
<#elseif "${nuxeo.db.type}" == "mysql">
<!-- For MySQL -->
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}">
<index name="default">
<!-- all props implied -->
</index>
<index name="title">
<field>dc:title</field>
</index>
<index name="description">
<field>dc:description</field>
</index>
</fulltext>
<#else>
<!-- for H2 (Lucene Analyzer): -->
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}" analyzer="org.apache.lucene.analysis.standard.StandardAnalyzer">
<index name="default">
<!-- all props implied -->
</index>
<index name="title">
<field>dc:title</field>
</index>
<index name="description">
<field>dc:description</field>
</index>
</fulltext>
</#if>
</indexing>
<#if "${nuxeo.db.type}" != "mysql">
<usersSeparator key="${nuxeo.db.user_separator_key}" />
</#if>
<#if "${nuxeo.db.type}" == "mysql">
<schema>
<field type="largetext">var_ParallelDocumentReview:review_result</field>
</schema>
</#if>
</repository>
</extension>
<extension target="org.nuxeo.runtime.kv.KeyValueService" point="configuration">
<store name="default" class="org.nuxeo.ecm.core.storage.sql.kv.SQLKeyValueStore">
<property name="datasource">jdbc/keyvaluestore</property>
<property name="table">kv</property>
</store>
</extension>
<#else>
<require>org.nuxeo.runtime.mongodb.MongoDBComponent</require>
<extension target="org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService"
point="repository">
<!-- it will lookup for "repository/default" connection -->
<repository name="default" label="label.default.repository">
<fulltext disabled="${nuxeo.vcs.fulltext.disabled}" searchDisabled="${nuxeo.vcs.fulltext.search.disabled}" />
<cache enabled="${nuxeo.dbs.cache.enabled}" maxSize="${nuxeo.dbs.cache.maxSize}"
concurrencyLevel="${nuxeo.dbs.cache.concurrencyLevel}" ttl="${nuxeo.dbs.cache.ttl}" />
<clustering id="${repository.clustering.id}" enabled="${repository.clustering.enabled}">
<invalidatorClass>org.nuxeo.ecm.core.storage.dbs.DBSPubSubInvalidator</invalidatorClass>
</clustering>
<changeTokenEnabled>${nuxeo.changetoken.enabled}</changeTokenEnabled>
</repository>
</extension>
</#if>
</component>
</#escape>
05-14-2020 07:12 AM
Hello,
I think you missed one step. You have to deactivate the default single-datasource mode in nuxeo.conf
nuxeo.db.singleDataSource=
Info: https://doc.nuxeo.com/nxdoc/multiple-repositories-configuration/
Regards.
Attention: Blogs & Forums are in READ-ONLY mode from Oct 9-19 as we transition to our new platform. Learn more.
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.