WebDAV addon features

Hi all,

Can I use CUBA WebDAV Addon to manage documents hosted by remote WebDAV servers (Microsoft, Alfresco, other commercial WebDAV servers) from a CUBA application ?
Can I use CUBA WebDAV Addon inside a CUBA Version 7 application ?

Thank you in advance for your support,
Ivano C.

Hello, @icarrara!

WebDAV add-on uses default CUBA.platform implementation to store and read files.
Now, CUBA.platform doesn’t support external WebDav storages to operate with files.
Of course, you can implement that type of file storage by yourself. For this you should replace CUBA.platform implementation (interface: FileStorageAPI).
Can you give us details for your case? Which actions do you want to do with external WebDav storage?

The addon is not migrated to CUBA 7 now.

Dear Evgeniy, thank you for your replies. Below my comments:

Can you give us details for your case? Which actions do you want to do with external WebDav storage?
I wish to start a project with CUBA. In brief there are some data than I’m going to store in the relational database as usual. Togheter with data, the user needs to upload and download some PDF, Excel, etc documents stored in a already in place very big WebDAV repository.

The most common WebDAV repository is the one provided by Alfresco, the same provider of Activiti framework.

So I was hoping that the WebDAV client included in the Cuba add-on can be able to manage documents in external WebDAV repository.

The addon is not migrated to CUBA 7 now.
Do you have plans to migrate WebDAV add-on to CUBA 7 ?

Best regards,
Ivano C.

Hello!

Yes, we are going to update WebDAV to 7 version.

You can create your own FileStorageAPI implementation for each server. But you can use only one at a time (support for multiple file storage is not provided).

Hi
support for multiple storage backends is something that I may need in the future, but I think that a workaround could be a special implementation acting as an intelligent proxy to multiple storage ends.

The implementation should be able to select the concrete backend via several means, like the path spec or other advanced config params (for example a path like s3://serverNameInConfig/containerName/realName.ext could lead to the selection of an S3 backend driver configured for serverNameInConfig).

I’ll think of something like this if I’ll find some time to publish my storage utilities component (I must finish and polish the code, but I’m always short of spare time).

Paolo