DeskClient 4

Sophora DeskClient: Update Notes

Instructions for updating from previous Sophora versions.

Presentation of Documents

Tags from the "sophora:tags" property are no longer displayed by default in the document entries (in search, opened documents view, etc.). If you want them to remain visible, the property must be included in the document information of the nodetype configuration.

Nodetype Registration of Built-In Node Types Removed from Administration View

In older versions some node types had to be registered manually via the administration area when setting up a new repository:

  • Images: sophora-extension-nt:image, sophora-extension-nt:imagedata
  • Copytext: sophora-extension-nt:copytext, sophora-extension-nt:paragraph, sophora-extension-nt:paragraphimage, sophora-extension-nt:paragraphlink
  • File: sophora-extension-nt:binarydata
  • Components: sophora-extension-nt:group
This manual registration is no longer necessary because the server delivers the node types by default.

Important Notes for DeskClient 4.4.0 and newer

  • For updates via update site, an installed DeskClient version 3.7.0 (or newer) or 4.3.0 (or newer) is required so that the automatic restart after the update works without errors.

DeskClient Plug-ins

Removed dependencies

Some dependencies that were provided by com.subshell.sophora.eclipse.libs and org.eclipse.core.runtime are no longer provided for all bundles. If you use one of the following dependencies inside your own plugin, you need to declare the dependency directly in your MANIFEST.MF file now.

  • commons-io
  • javax.inject
  • jaxen
  • joda-time

We recommend to use the Import-Package directive to import only used packages.

Removed API

The method IFormElement.getReferencedDocuments() was removed. The references in string properties are now collected and set to the documents' sophora:referencedDocuments property by the server during the save operation. The benefit is that a document will always have the references updated when saved. Before only the DeskClient filled in all references. The importer or scripts had to update the property sophora:referencedDocuments on their own. In Sophora 4 the method still exists in the abstract classes of the form field elements. So if you have overwritten this method you don't need to update your code immediately. This stub will be removed with the next major release Sophora 5.

The editor with the ID com.subshell.sophora.eclipse.editor.BrowserEditor was removed. Instead the e4 part com.subshell.sophora.eclipse.editor.BrowserPart can be used.

Removed deprecated API

The deprecated attributes "childNodeType" and "alwaysShowOnNodetype" of extension point "com.subshell.sophora.eclipse.editorComponents" have been removed.

Changes for Editor Tabs

If your input field provides an editor tab (implementing IEditorComponent.getEditorTabs()) you have to adapt your code for the following API changes:

  • The interface provided by IEditorComponentTabProvider.createEditorPart() was renamed from IExtendedEditorPart to ISophoraEditorPart.
  • You can no longer extend the Eclipse class EditorPart, extend AbstractSophoraEditorPart instead. We suggest to extend AbstractLoadingPart for additionally creating the controls lazy.
  • The first parameter for the init() method has changed from IEditorSite to ISophoraEditorSite.
  • The method getPartControl() was removed and instead the method createPartControl() must return the created control.
  • For property changes to PROP_DIRTY it must be referenced qualified as IEditorPart.PROP_DIRTY.
  • The methods isSaveAsAllowed() and doSaveAs() were removed.
  • ISophoraEditorPart.getReferencedDocuments() has been removed. AbstractSophoraEditorPart.getReferencedDocuments() is deprectated and will be removed in Sophora 5.

Changes for Input Fields

  • The method AbstractFormField.labelLinkActivated() is now deprecated. Use the new method getLabelLinkAction() of the IFormField2 interface instead. The associated attribute labelAsLink of the extension point com.subshell.sophora.eclipse.formInputFields (defined in the custom plugin.xml file) is also deprecated and can be removed. Both the method and the attribute will be removed in Sophora 5.
  • The method IFormElement.getReferencedDocuments() was removed. AbstractFormField.getReferencedDocuments() is deprectated and will be removed in Sophora 5.

Last modified on 4/21/22

The content of this page is licensed under the CC BY 4.0 License. Code samples are licensed under the MIT License.

Icon