IBM Content Navigator, Version 2.0.3         

What's new in version 2.0.2?

IBM® Content Navigator, Version 2.0.2 includes new customization options for application and plug-in development.

What's new for developers

Loading plug-ins by specifying a path on a class name
Previously, the only option to load a plug-in for IBM Content Navigator was to load the JAR file, which meant that you needed to build the JAR each time that you made a change that you wanted to test in the IBM Content Navigator server environment. Now you have the option to load a plug-in by specifying a path on a class name so that you can see your changes in real time without having to build and load a JAR file each time.
Additions to the sample plug-in
The sample plug-in includes several new sample classes.
Loading debug versions of the code by using the debug parameter
You can use ?debug=true to load uncompressed JavaScript to make tracebacks and other diagnostics more understandable, or to more easily step between IBM Content Navigator JavaScript logic and plug-in logic in a debugger.
You can provide the debug versions of CSS and JavaScript in a plug-in and use the ?debug=true parameter in your URL to load the uncompressed code.
Example: http://myserver.mycompany.com:9080/navigator/launch.jsp?debug=true

New customization options

New features in the content list
The content list contains the following new features:
  • Filter capabilities in teamspaces list and teamspace templates list
  • Filmstrip view
  • Ability to add custom widgets for each field in the magazine view
Form-based authentication
You can use form-based login to log in directly to the container.
Custom open actions
You can provide custom open actions in a plug-in. See Plugin.getOpenAction and PluginOpenAction.
EDS support for IBM Content Manager OnDemand search
You can use EDS to control fields in Content Manager OnDemand search forms. For example, you can set a field to be read-only, set initial values, and implement a choice list for a String field.
Authentication service for Content Manager OnDemand single sign-on (SSO)
You can provide an authentication service for IBM Content Manager OnDemand SSO. See Plugin.getODAuthenticationService.
Copyright information for a plug-in
You can provide copyright information for a plug-in that will be displayed on an IBM Content Navigator About dialog. See Plugin.getCopyright.
Plug-in logging integration
You can add logging to plug-ins that integrates with IBM Content Navigator logging. See PluginLogger and PluginServiceCallbacks.getLogger.
VWSession object access from a plug-in
You can access the underlying VWSession object that is used by IBM Content Navigator within a plug-in service. See PluginServiceCallbacks.getVWSession.
Per-user information
You can store per-user preference information from a plug-in. See PluginServiceCallbacks.saveUserConfiguration and PluginServiceCallbacks.loadUserConfiguration.
Access to mappings for labels of system properties
You can access IBM Content Navigator's mappings for labels of system properties from within a plug-in. See PluginServiceCallbacks.getSystemPropertyLabels.
Important: Synchronous module loading will be deprecated in Dojo 2.0. To accommodate asynchronous module definition (AMD) loading, ecm.model.Desktop methods, getActionHandler and getLayout, have been enhanced in version 2.0.2 to accept callback functions. Callers using these ecm.model.Desktop methods to retrieve widgets that might be dynamically loaded, should be changed to provide the new callback function.

Deprecated API classes and methods

API changes in IBM Content Navigator, Version 2.0.2, are backwards-compatible with the IBM Content Navigator APIs that were available starting in Version 2.0.1.
The following methods and classes in the Java APIs are deprecated starting in Version 2.0.2 or Version 2.0.1:
Table 1. Deprecated IBM Content Navigator Java classes and methods
Deprecated classes and methods Comments
com.ibm.ecm.extension.PluginServiceUtil class This class is for internal use only and should not be used by plug-in writers.
com.ibm.ecm.extension.PluginServiceCallbacks.getCMAnnotations (CMItem, String) method This method is being removed because it has a dependency on the internal IBM Content Navigator CMObject class. Use the getCMAnnotations method, which returns an instance of dkXDO instead.
com.ibm.ecm.extension.PluginServiceCallbacks. getCMAnnotations(CMItem, String, int) method Deprecated as of version 2.0.2. This method is being removed because it has a dependency on the internal IBM Content Navigator CMObject class. Use getCMAnnotations, which returns an instance of dkXDO instead.
com.ibm.ecm.extension.PluginServiceCallbacks. getCMBookmarks(CMItem, String) method Deprecated as of version 2.0.2. This method is being removed because it has a dependency on the internal IBM Content Navigator CMObject class. Use getCMBookmarks, which returns an instance of dkXDO instead.
com.ibm.ecm.extension.PluginServiceCallbacks. getCMDocument(String, String, DKRetrieveOptionsICM) method Deprecated as of version 2.0.2. This method is being removed because it has a dependency on the internal IBM Content Navigator CMItem class. Use getCMDocument, which returns an instance of DKDDO instead.
com.ibm.ecm.configuration.MenuConfig.getListTypes method This method is no longer used.
com.ibm.ecm.extension.PluginServiceCallbacks. getP8Connection Object method This method is deprecated because it uses internal class P8Connection. Use the getP8Connection method instead.
com.ibm.ecm.extension.PluginServiceCallbacks. getP8Domain method Retrieves the IBM FileNet® P8 domain for the given repository. This method retrieves all properties of the domain which could have an performance impact. Use getP8Domain(String repositoryId, PropertyFilter propertyFilter) for better performance.
com.ibm.ecm.extension.PluginServiceCallbacks. retrieveAnnotations method Deprecated as of version 2.0.2. This method is being deprecated because it has a dependency on the IBM Content Navigator internal class BaseMediator. Use the retrieveJSONAnnotations method instead.
com.ibm.ecm.extension.PluginServiceCallbacks. retrieveContent method Deprecated as of version 2.0.2. The returned DocumentContent class has been refactored into the extension package. Use the retrieveDocumentContent method.
com.ibm.ecm.configuration.MenuConfig.setListTypes method This method is no longer used.
The following methods and classes in the JavaScript APIs are deprecated starting in version 2.0.2 or version 2.0.1:
Table 2. IBM Content Navigator Java classes and methods that are deprecated starting in Version 2.0.2
Deprecated methods and fields Comments
ecm.model.Container.desktop
  • desktop
  • userid
  • onAddTeamspace(repository)
  • onAddTeamspaceTemplate(repository)
  • onTeamspaceListChange(repository)
  • onTeamspaceTemplateListChange(repository)
  • onWorklistContainersRetrieved(repository)
desktop
Use global ecm.model.desktop reference instead.
userid
Was never used or set internally. Use userId instead.
onAddTeamspace(repository)
Use Repository onAddTeamspace event.
onAddTeamspaceTemplate(repository)
Use Repository onAddTeamspaceTemplate event.
onTeamspaceListChange(repository)
Use Repository onTeamspaceListChange event.
onTeamspaceTemplateListChange(repository)
Use Repository onTeamspaceTemplateListChange event.
onWorklistContainersRetrieved(repository)
Use Repository onWorklistContainersRetrieved event.
ecm.model.Repository
  • rootItem
rootItem
Use the retrieveItem method with a path of / to retrieve the root item. This value is null until a retrieveItem with a path of / is performed.
ecm.model.SearchCriterion
  • value
value
Deprecated as of version 2.0.2. Use the first element of the values array, for example, value = criterion.values && criterion.values.length ? criterion.values[0] : null.
ecm.model.SearchTemplate
  • toRecentSearchJson(contextId, userId)
toRecentSearchJson(contextId, userId)
Deprecated as of version 2.0.2.
ecm.widget.Banner
  • setUser(repository)
setUser(repository)
Deprecated as of version 2.0.2. The user display name should be set in the desktop, not in the container or repository.
ecm.widget.dialog.ErrorDialog
  • messageQueryUrl
messageQueryUrl
This field is not used.
ecm.widget.layout.CommonActionsHandler
  • actionRefreshAttachments(repository, items)
actionRefreshAttachments(repository, items)
This function is no longer used.
ecm.widget.listView.MagazineViewDecorator
  • contentCellDecoratorCM8(data, rowId, rowIndex)
  • contentCellDecoratorCMIS(data, rowId, rowIndex)
  • contentCellDecoratorP8(data, rowId, rowIndex)
contentCellDecoratorCM8(data, rowId, rowIndex)
Deprecated as of version 2.0.2. Use contentCellDecorator.
contentCellDecoratorCMIS(data, rowId, rowIndex)
Deprecated as of 2.0.2. Use contentCellDecorator.
contentCellDecoratorP8(data, rowId, rowIndex)
Deprecated as of 2.0.2. Use contentCellDecorator.
ecm.widget.search.SearchBuilder
  • showDocumentInfoPane
showDocumentInfoPane
Deprecated as of version 2.0.2.
ecm.widget.search.SearchDialog
  • builder
builder
Deprecated as of version 2.0.1.
ecm.widget.search.SearchSelector
  • showRecents
  • getRepository
showRecents
Deprecated as of version 2.0.1.
getRepository
Deprecated as of version 2.0.2. Use repository directly, e.g., searchSelector.repository.
ecm.widget.search.SearchSelectorDialog
  • selectionMode
selectionMode
Deprecated as of version 2.0.1.
ecm.widget.search.SearchTab
  • showClear
  • showEdit
  • showingContentList
  • showingSearchToggleArea
  • resetPanes()
showClear
Deprecated as of version 2.0.1.
showEdit
Deprecated as of version 2.0.1.
showingContentList
Deprecated as of version 2.0.1.
showingSearchToggleArea
Deprecated as of version 2.0.1.
resetPanes()
Deprecated as of version 2.0.1.
ecm.widget.viewer.AjaxViewer
  • buildPageFrame()
  • buildToolbar()
  • displayDocument(docUrl, docName, contentType, serverType)
  • displayPage()
  • getPageInfo(pageNo)
  • onresize()
  • retrievePageCount()
  • retrieveViewServicesInfo()
  • save()
  • updatePageSelect()
  • updateScaleFromSelection()
  • updateToolStates()
buildPageFrame()
Deprecated as of version 2.0.2. This method will be made private.
buildToolbar()
Deprecated as of version 2.0.2. This method will be made private.
displayDocument(docUrl, docName, contentType, serverType)
Deprecated as of version 2.0.2. Use setItem and showItem.
displayPage()
Deprecated as of version 2.0.2. This method will be made private.
getPageInfo(pageNo)
Deprecated as of version 2.0.2. This method will be made private.
onresize()
Deprecated as of version 2.0.2. This method will be made private.
retrievePageCount()
Deprecated as of version 2.0.2. This method will be made private.
retrieveViewServicesInfo()
Deprecated as of version 2.0.2. This method will be made private.
save()
Deprecated as of version 2.0.2. Use saveAnnotations.
updatePageSelect()
Deprecated as of version 2.0.2. This method will be made private.
updateScaleFromSelection()
Deprecated as of version 2.0.2. This method will be made private.
updateToolStates()
Deprecated as of version 2.0.2. This method will be made private.
ecm.widget.viewer.ContentViewer
  • close(item)
close(item)
As of release 2.0.2. This method is not implemented.
ecm.widget.viewer.ContentViewerPane
  • closeItem()
  • getItemIndex()
  • getNextItem()
  • getPrevItem()
  • getSaveOrWaitStatus(listHeading, nameList, asHtml)
  • getSaveOrWaitStatusMessage(nameList, asHtml)
  • hasNextItem()
  • hasPrevItem()
  • isDirty()
  • isLocked()
  • isPrinting()
  • isViewerLoaded()
  • nextPageRequired()
  • onClose(closeCallback, cancelCallback)
  • retrieveNextPage(callback)
  • unloadIframe()
closeItem()
Deprecated as of version 2.0.1. Use the DocViewer framework for document viewer specific operations instead.
getItemIndex()
Deprecated as of version 2.0.1. This method is intended for internal use, and is being replaced.
getNextItem()
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
getPrevItem()
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
getSaveOrWaitStatus(listHeading, nameList, asHtml)
Deprecated as of version 2.0.1. There is no replacement. Intended for internal use only.
getSaveOrWaitStatusMessage(nameList, asHtml)
Deprecated as of version 2.0.1. There is no replacement. Intended for internal use only.
hasNextItem()
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
hasPrevItem()
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
isDirty()
Deprecated as of version 2.0.1. Use the DocViewer framework for document viewer specific operations instead.
isLocked()
Deprecated as of version 2.0.1. Use the DocViewer framework for document viewer specific operations instead.
isPrinting()
Deprecated as of version 2.0.1. Use the DocViewer framework for document viewer specific operations instead.
isViewerLoaded()
Deprecated as of version 2.0.1. Use docViewer.isLoaded() instead.
nextPageRequired()
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
onClose(closeCallback, cancelCallback)
Deprecated as of version 2.0.1. Replaced by the closeViewer event.
retrieveNextPage(callback)
Deprecated as of version 2.0.1. Use the ViewerItem framework for item specific operations instead.
unloadIframe()
Deprecated as of version 2.0.1. Use the DocViewer framework for document viewer specific operations instead.
ecm.widget.viewer.ContentViewerRelogin widget This widget is deprecated starting in version 2.0.1. This widget is not intended for reuse, and there is no replacement.
ecm.widget.viewer.model.ViewerItem
  • getId()
  • getItem()
  • getRepository()
  • getResultSet()
getId()
Deprecated as of version 2.0.2. Accessors are being replaced with accessing public properties directly. Use viewerItem.item.id.
getItem()
Deprecated as of version 2.0.2. Accessors are being replaced with accessing public properties directly. Use viewerItem.item.
getRepository()
Deprecated as of version 2.0.2. Accessors are being replaced with accessing public properties directly. Use viewerItem.item.repository.
getResultSet()
Deprecated as of version 2.0.2. Accessors are being replaced with accessing public properties directly. Use viewerItem.item.resultSet.
ecm.widget.viewer.OutsideInViewerMixin widget This widget is deprecated starting in version 2.0.2. This class contains only private methods, and will be made private.