CUBA Platform Roadmap 2018

Is there any possibility to bring visual designer for Polymer 3

Having one is one of our initial goals since Polymer has an official designer and more lightweight wizzywid. However both are not production ready and not up to date since Polymer team is busy on Polymer 3 release preparation. We keep an eye on the progress of both projects and will consider integration as soon they are more polished.

1 Like

I see what you mean: Designer hasn’t been touched in quite some time.

Hi Konstantin,

Thank you for clarifying my concerns with Vaadin/IntelliJ.

Are you able to provide any details regarding my (and Ryan’s) concerns with the new BPM?

Thanks!

Hi Keith,

At the moment, I cannot add anything to what I wrote in the comment above. I hope it clarifies our general approach.

Whoops. Sorry, I missed that comment. Thanks!

Hi @knstvk
Camunda BPM looks interesting. It also has extensive email integration.
Anyways, will this be possible in the enhanced version as follows which is used in any enterprise environment:

-put on hold by approver with specified number of days and if not actioned within that duration it reminds by email notification automatically
-automatically escalated to the manager of approver if not actioned within certain numbers of days which will be configurable
-option to build reusable workflow across different entities
-task list by users grouped by task type. This task list would be a gateway to display and action (approve, reject, forward).
-Count of such pending actions can be displayed on a badge for respective users notice
-option to display workflow node from task list and it’s approval status
-option to trigger reminders to immediate approved on adhoc basis apart from notifications

Hi Mortoza,
Thank you for your feedback. We’ll consider it in the future.

1 Like

Is there any idea to add Apache Jackrabbit or Alfresco Document Management System to the Cuba 7? Because it is very much needed for the enterprise applications…

It’s a good task for an add-on. Hope it will be implemented sometime.

Can we expect any add-on between the Cuba Platform and THESIS (ECM) of Haulmont, anytime soon? And why there is no connection between the THESIS DMS and Cuba Platform, it seems the software is very much isolated from the Cuba Platform. But the software is actually built on Cuba platform…

Hi Lakshmi,
You are right, Thesis is actually built on CUBA Platform, so I am not sure what kind of integration do you mean? Could you provide a sample case?

Going back to the new datasource API:

Is it going to be compatible with the old one, or will we need change the code to use it? If it will mean a lot of code changes, will the old API still be supported in new release?

The new API will be very different, but all existing code will continue to work as is on the old API. So there will be two parallel APIs, and for the new code you will be able to choose how to write your screen: using the old or the new API.

1 Like

Hi there. I have a question concerning the planned multi-tenancy module. I don’t know how far you are down the line with it, but I’d rather hope that it would allow for multiple databases by attaching a connection (or rather, pool of connections) to each tenant, then use a lookup to decide which pool should be used. I think this would be a lot better than having every tenant’s data stored in the same database.

1 Like

The same question regarding multi-tenancy with multiple database connections, avoiding the current solution with additional datastores which has some limitations.

Hi @ray1,

The addon we are developing implements an approach of single DB for multiple tenants, using discriminator tenantId column to split data between tenants. This column will be automatically hidden for tenant users, so that they will see a standard CUBA screens with only their data. Data filtering is also happening automatically, modifying JPQL queries on the fly.

To sum up, the main idea of the component is to dramatically simplify development of multi-tenant applications over single database. Developers just should implement the HasTenant interface for their entities, which should be divided by different tenants and the rest will be done by the component itself.

Regards,
Aleksey

1 Like

Hi @stukalov, this was the same approach that I gave my application a single storage for multiple clients, the problem that I have found is when using FTS since I still can’t solve that does not show me the information of other customers. This would be solved with this new addons?

Regards,

Nelson F.

Hi @nelsonflorez,

Could you please attach a sample project, as when I try this case it works perfectly for me. And it should work for your case as well as we always reload found entities via DataManager which applies access groups permissions on top.

Regards,
Aleksey

A bit late to the party but thrilled to see the fatures list.

Already used the DnD add-on in a custom GUI component and it is pretty good. Also waiting eagerly “components based on other components”, because when you go the programmatic way for the UI (when declarative is not an option), it is significantly more difficult than the standard way.

For multi-tenant, it’s yet a good thing to make the single database case easy to code. The fact is, as a developer choosing single or multi database that is generally imposed to us, especially for SaaS. And regulatory environment should be taken into account.

In Europe with GDPR for instance I have to guarantee my clients the highest safety and security possible for their data (article 4), which means among other things segregation of data between clients. More generally, there is a worldwide trend of protecting client data like gold (ask Mr Zuckerberg).

Months ago I started a prototype and even if I could not push the research too long I would not say it is an unreachable objective. Combine 2 things: the tenantId session parameter, and changing CUBA main Datasource to be like the TenantsRoutingDatasource of the current proposed approach. And ballpark you have the solution.

Of course then there is (probably quite of) work to manage the fact that CUBA main connection is now dynamic (cached data, build process, etc.).

Michael

1 Like

It could also mean that you have to go a step further and segregate also your application infrastructure wise. Because if it is possible to somehow compromise the app server, it will be very easy to get on all customers / tenants data. Therefore it might also be necessary to run different app instances and segregate on a infrastructure level (multi-db-multi-app).

I don’t see a clear difference in the two single-db-single-app-tenant and multi-db-single-app from this regard, because the attacker in both cases just has to have access to the single application…

Probably don’t concentrate too much on this made-up and very hard to achieve multi-db-single-app solution and invest more time in other security related parts through threat modeling is more beneficial for the business and also for the user.

Bye
Mario