Categories
Endeca

Explore the Endeca Configuration Repository with WebDav

With Oracle Endeca Commerce, the Workbench application is storing all its configuration files inside a configuration repository. That includes typical workbench configurations used by the MDEX, Experience Manager configurations such as cartridges XMLs, landing pages and also media assets accessible by the Media Banner cartridge.

While Endeca provides scripts in the control project folder to upload content to that configuration repository, such as set_media, set_editors_config, set_templates and import_site, one  less known fact is that you can  connect to the repository  through a WebDav client and have a direct access to all the files and folders.

The reason it’s possible is because the technology underneath the Endeca Configuration Repository is  Apache Sling, a REST web framework built on top of the Java Content Repository Apache JackRabbit. If you use Windows, you can download a client such as CloudSafe to connect to it. On Mac, Cyberduck supports it (in theory MacOS X is supposed to support the WebDav protocol natively but for some reason when trying to connect to this WebDav repository, I can’t establish the connection).

Once you are ready to connect to the WebDav server, the URL to use is the link stored  in the config file WorkbenchConfig.xml for the IFCR component.

If the URL is: http://localhost:8006/ifcr, you should add /sites/name_of_your_project at the end.
So for the reference application, it would be http://localhost:8006/ifcr/sites/Discover . The user/password is be the same as the one stored in that same config section (admin/admin by default).

WebDav configuration to access Endeca Configuration Repository with CloudSafe
WebDav configuration to access Endeca Configuration Repository with CloudSafe

Once you are logged in with WebDav, you can start transferring files back and forth between the config repository and your own hard drive. I wouldn’t advise to change the XML config files stored in that config repository without knowing exactly what you are doing but there is a clear use case for managing your media assets (such as pictures and videos) that are accessible through the Media banner cartridge in Page Manager. While Endeca provides the set_media control script to upload files, being able to drag and drop files and delete them as you want directly into the config repository is much more easier and natural to do with a user interface than having to re-run that control script every time you want to make changes to your media files. You might as well consider giving access to that repository to your business users so that they can easily start managing the media files that they will need to use when creating the landing pages.

Here is the list of folders visible from a WebDav client when logging in on the Configuration Repository

Endeca Configuration Repository on a Webdav client

Let me know in the comments if you can think of other interesting use case to use the Endeca Configuration Repository through a WebDav client!

Advertisement

7 replies on “Explore the Endeca Configuration Repository with WebDav”

Brilliant! I tried the ‘ifcr’ directory (which used to work in the past), but the addition of ‘/sites/Discover’ did the trick!
Thanks a lot!

Excellent, I am able to view the content xml files created by content collections, but cannot view content in triggers folder which would be json files. Also few folders are inaccessible like tools/Thesaurus. Can you please let me know how can I view json files too. This approach can be useful to propagate specific content across apps in Endeca

I think the Cloudsafe client is no more available to download. I tried to connect to Endeca 3.1.2 Configuration Repository using the Cuberdeck [ https://cyberduck.io/?l=en ] client. But I cannot connect. Is this because it is not supported in Endeca 3.1.2 ?

I am able to connect using the cyberduck by selecting the option ” WebDAV ( Web based Distributed Authoring and Versioning )” in new Connection

There is a problem with endeca v11.2, exception issue in ifcr.log:

*ERROR* [172.16.71.21 [1480952373225] PROPFIND….HTTP/1.1] org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught Throwable java.lang.UnsupportedOperationException: Not yet implemented
at com.endeca.ifcr.workspace.impl.node.WorkspaceAwareNodeImpl.getDepth(WorkspaceAwareNodeImpl.java:1082)
at org.apache.jackrabbit.webdav.simple.DavResourceImpl.getParentElements(DavResourceImpl.java:862)

Please, do you have any ideas about these exceptions?
Thx

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s