[
https://issues.apache.org/jira/browse/OFBIZ-6625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15000247#comment-15000247
]
Pierre Smits commented on OFBIZ-6625:
-------------------------------------
Though the patch technically works, I don't believe this is the way to go. With
this patch we now provide a means for tenants to access data in the master
tables. This circumvents the concept of tenants having only access to data in
their own databases.
Please revert the commit until the community has taken a decision on how to
tackle the greater issue.
> EcomSEO generates an error when used in multi-tenancy setup
> -----------------------------------------------------------
>
> Key: OFBIZ-6625
> URL: https://issues.apache.org/jira/browse/OFBIZ-6625
> Project: OFBiz
> Issue Type: Bug
> Components: specialpurpose/ecommerce
> Affects Versions: Trunk
> Reporter: Pierre Smits
> Assignee: Jacques Le Roux
> Priority: Critical
> Labels: multi-tenant
> Fix For: Upcoming Branch
>
> Attachments: seocontextfilter.patch
>
>
> When using the ecomseo application of the ecommerce component in a tenant the
> tenant entity can't be accessed, and the following error is returned.
> {code} [java] 2015-09-17 22:44:33,906 |http-bio-8443-exec-8
> |GenericDelegator |I| Can't access entity of entityGroup =
> org.ofbiz.tenant using tenant delegator default#enantId, use base delegator
> instead
> [java] 2015-09-17 22:44:33,906 |http-bio-8443-exec-8 |GenericDelegator
> |E| Failure in findByCondition operation for entity [Tenant]:
> org.ofbiz.entity.GenericEntityException: There is no datasource (Helper)
> configured for the entity-group [org.ofbiz.tenant]; was trying to find
> datasource (helper) for entity [Tenant]. Rolling back transaction.
> [java] org.ofbiz.entity.GenericEntityException: There is no datasource
> (Helper) configured for the entity-group [org.ofbiz.tenant]; was trying to
> find datasource (helper) for entity [Tenant]
> [java] at
> org.ofbiz.entity.GenericDelegator.getEntityHelper(GenericDelegator.java:544)
> ~[ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.entity.GenericDelegator.find(GenericDelegator.java:1774)
> ~[ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.entity.GenericDelegator.findList(GenericDelegator.java:1811)
> [ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.product.category.SeoContextFilter.doFilter(SeoContextFilter.java:300)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.ofbiz.product.category.SeoContentUrlFilter.doFilter(SeoContentUrlFilter.java:105)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.ofbiz.product.category.CatalogUrlFilter.doFilter(CatalogUrlFilter.java:338)
> [ofbiz-product.jar:?]
> [java] at
> org.ofbiz.product.category.CatalogUrlSeoFilter.doFilter(CatalogUrlSeoFilter.java:68)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [?:1.8.0_45]
> [java] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [?:1.8.0_45]
> [java] at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
> [java] 2015-09-17 22:44:33,907 |http-bio-8443-exec-8 |TransactionUtil
> |I| Transaction rolled back
> [java] 2015-09-17 22:44:33,907 |http-bio-8443-exec-8 |SeoContextFilter
> |W| Unable to get Tenant
> [java] org.ofbiz.entity.GenericEntityException:
> org.ofbiz.entity.GenericEntityException: There is no datasource (Helper)
> configured for the entity-group [org.ofbiz.tenant]; was trying to find
> datasource (helper) for entity [Tenant] (There is no datasource (Helper)
> configured for the entity-group [org.ofbiz.tenant]; was trying to find
> datasource (helper) for entity [Tenant])
> [java] at
> org.ofbiz.entity.GenericDelegator.findList(GenericDelegator.java:1831)
> ~[ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.product.category.SeoContextFilter.doFilter(SeoContextFilter.java:300)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.ofbiz.product.category.SeoContentUrlFilter.doFilter(SeoContentUrlFilter.java:105)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.ofbiz.product.category.CatalogUrlFilter.doFilter(CatalogUrlFilter.java:338)
> [ofbiz-product.jar:?]
> [java] at
> org.ofbiz.product.category.CatalogUrlSeoFilter.doFilter(CatalogUrlSeoFilter.java:68)
> [ofbiz-product.jar:?]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
> [tomcat-7.0.59-catalina.jar:7.0.59]
> [java] at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [?:1.8.0_45]
> [java] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [?:1.8.0_45]
> [java] at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> [tomcat-7.0.59-tomcat-coyote.jar:7.0.59]
> [java] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
> [java] Caused by: org.ofbiz.entity.GenericEntityException: There is no
> datasource (Helper) configured for the entity-group [org.ofbiz.tenant]; was
> trying to find datasource (helper) for entity [Tenant]
> [java] at
> org.ofbiz.entity.GenericDelegator.getEntityHelper(GenericDelegator.java:544)
> ~[ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.entity.GenericDelegator.find(GenericDelegator.java:1774)
> ~[ofbiz-entity.jar:?]
> [java] at
> org.ofbiz.entity.GenericDelegator.findList(GenericDelegator.java:1811)
> ~[ofbiz-entity.jar:?]
> [java] ... 25 more
> {code}
> This is due to the fact that the tenant entity is only available via the
> default delegator, and not via the delegator#<tenantId> delegator
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)