Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-5898

Tenant should run with specified domain name. Front store should support multi tenant feature.

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Implemented
    • Affects Version/s: Trunk
    • Fix Version/s: 14.12.01
    • Component/s: framework
    • Labels:
      None

      Description

      Following improvements are require in current multi tenant functionality

      • Enable multi tenancy for front store application
      • Tenant should run with specified domain name
      • User should have ability to provide domain name during tenant creation
      • Configuration details should tenant specific.

      Added functionality details at https://cwiki.apache.org/confluence/x/9oT0Ag

      1. OFBIZ-5898.patch
        17 kB
        Arun Patidar
      2. OFBIZ-5898.patch
        16 kB
        Arun Patidar

        Issue Links

          Activity

          Hide
          arunpati Arun Patidar added a comment - - edited

          Attached is a patch to extend existing multi tenancy functionality with following feature:

          • Added multi tenancy support for front store application
          • Added support to provide domain name during tenant creation
          • Added support to run tenant with specified domain name and also there is support of multi domain for a tenant (This can be useful with multi site feature)

          Added feature details at: https://cwiki.apache.org/confluence/x/9oT0Ag

          Show
          arunpati Arun Patidar added a comment - - edited Attached is a patch to extend existing multi tenancy functionality with following feature: Added multi tenancy support for front store application Added support to provide domain name during tenant creation Added support to run tenant with specified domain name and also there is support of multi domain for a tenant (This can be useful with multi site feature) Added feature details at: https://cwiki.apache.org/confluence/x/9oT0Ag
          Hide
          pfm.smits Pierre Smits added a comment -

          Arun,

          While I like the concept to enable the ecommerce component to be multi-tenable as well, I would like to point out the following:

          eCommerce front ends (webshops) are intended for specific target audiences. This means that UI and UX are of the utmost importance. While this extension of functionality caters to that partly (providing the different domain), it often involves more than just this.
          Not only difference in theme, but also heavily customizations in layout structures through screens, forms, groovy and ftl files. Often this means a new e-commerce application per target audience.

          Keeping such in one component increases the risk that changes in one eCommerce front end bleeds into another.
          Having front end applications in separate copies of the ecommerce component (whilst reusing all the services, etc), specifically developed for each tenant and associated to the tenantId reduces that risk significantly.

          Also if I recall correctly, handling of different domain names is already implemented in the content mgr component and can be used for multiple domains in an implementation. Thus also within a multi-tenancy setup.
          Are your changes with respect to this really required?

          Regards,

          Pierre

          Show
          pfm.smits Pierre Smits added a comment - Arun, While I like the concept to enable the ecommerce component to be multi-tenable as well, I would like to point out the following: eCommerce front ends (webshops) are intended for specific target audiences. This means that UI and UX are of the utmost importance. While this extension of functionality caters to that partly (providing the different domain), it often involves more than just this. Not only difference in theme, but also heavily customizations in layout structures through screens, forms, groovy and ftl files. Often this means a new e-commerce application per target audience. Keeping such in one component increases the risk that changes in one eCommerce front end bleeds into another. Having front end applications in separate copies of the ecommerce component (whilst reusing all the services, etc), specifically developed for each tenant and associated to the tenantId reduces that risk significantly. Also if I recall correctly, handling of different domain names is already implemented in the content mgr component and can be used for multiple domains in an implementation. Thus also within a multi-tenancy setup. Are your changes with respect to this really required? Regards, Pierre
          Hide
          diveshdut Divesh Dutta added a comment -

          Pierre,

          I agree with you that eCommerce front ends are intended for specific target audiences. In that case you will not leverage multi-tenant for eCommerce.

          But at the same time some service providers may like to offer eCommerce as "Software as a Service". And if that is the case, then services, screens, groovy, ftl files will all be the same. And as far as UI is concerned, themes can be managed by creating data in OFBiz. So you can have different themes/UI for each web shops. To support this business case, I guess Arun is providing the patch.

          So I think this is a good enhancement.

          Also as far as I know, You cannot manage domain names with respect to tenant in Content manager application of OFBiz.

          Show
          diveshdut Divesh Dutta added a comment - Pierre, I agree with you that eCommerce front ends are intended for specific target audiences. In that case you will not leverage multi-tenant for eCommerce. But at the same time some service providers may like to offer eCommerce as "Software as a Service". And if that is the case, then services, screens, groovy, ftl files will all be the same. And as far as UI is concerned, themes can be managed by creating data in OFBiz. So you can have different themes/UI for each web shops. To support this business case, I guess Arun is providing the patch. So I think this is a good enhancement. Also as far as I know, You cannot manage domain names with respect to tenant in Content manager application of OFBiz.
          Hide
          arunpati Arun Patidar added a comment -

          Thanks for your comment Divesh. Yes, this the case for which we need support of multi tenant on front store application, BTW its an additional support and there will be backward compatibility with this functionality, so the previous behavior remain same after applying patch.

          Show
          arunpati Arun Patidar added a comment - Thanks for your comment Divesh. Yes, this the case for which we need support of multi tenant on front store application, BTW its an additional support and there will be backward compatibility with this functionality, so the previous behavior remain same after applying patch.
          Hide
          arunpati Arun Patidar added a comment -

          Attached is the updated patch with optional 'domain Name' field. Also removed domainName field from Tenant entity as its now supported from new entity TenantDomainName.

          Show
          arunpati Arun Patidar added a comment - Attached is the updated patch with optional 'domain Name' field. Also removed domainName field from Tenant entity as its now supported from new entity TenantDomainName.
          Hide
          toashishvijay Ashish Vijaywargiya added a comment -

          Thanks Arun for the contribution. Your changes are committed in trunk at r1643510.

          I will keep this jira issue open for next couple of days just in case if anyone wanted to discuss something here.

          Show
          toashishvijay Ashish Vijaywargiya added a comment - Thanks Arun for the contribution. Your changes are committed in trunk at r1643510. I will keep this jira issue open for next couple of days just in case if anyone wanted to discuss something here.
          Hide
          arunpati Arun Patidar added a comment -

          Ashish,

          I have created new task OFBIZ-5902 for addressing #4 Configuration details should tenant specific. Now we can close this task.

          Show
          arunpati Arun Patidar added a comment - Ashish, I have created new task OFBIZ-5902 for addressing #4 Configuration details should tenant specific. Now we can close this task.
          Hide
          toashishvijay Ashish Vijaywargiya added a comment -

          I kept this task open for couple of days for any concerns. We have not received any comments so now we can safely close this task. Thanks!

          Show
          toashishvijay Ashish Vijaywargiya added a comment - I kept this task open for couple of days for any concerns. We have not received any comments so now we can safely close this task. Thanks!
          Hide
          pfm.smits Pierre Smits added a comment -
          Show
          pfm.smits Pierre Smits added a comment - See my review in: http://ofbiz.markmail.org/message/xsvyscpoup7nqsqk
          Hide
          pfm.smits Pierre Smits added a comment -

          Please revert the commit and reopen this issue.

          Show
          pfm.smits Pierre Smits added a comment - Please revert the commit and reopen this issue.

            People

            • Assignee:
              toashishvijay Ashish Vijaywargiya
              Reporter:
              arunpati Arun Patidar
            • Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development