[jira] [Commented] (OFBIZ-6625) EcomSEO generates an error when used in multi-tenancy setup

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (OFBIZ-6625) EcomSEO generates an error when used in multi-tenancy setup

Nicolas Malin (Jira)

    [ 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)