CentraSite Documentation : CentraSite Developer's Guide : Pluggable Architecture : Special and Advanced Topics : Nested Layouts
Nested Layouts
All adapter classes of a plug-in should not be just subclasses of com.softwareag.cis.server.Adapter. Instead, they should be derived from one of the following classes:
*com.softwareag.cis.plugin.adapter.util.CommonAdapter - for a plug-in that does not depend on CentraSite Control
*com.centrasite.control.adapters.BaseAdapter - for a plug-in that depends on CentraSite Control
BaseAdapter is a subclass of CommonAdapter and thus inherits certain properties. Among those is the implicit registration of all adapters as known adapters in the current session context. However, under certain circumstances it may happen that adapters for nested pages displayed using a SUBCISPAGE or ROWTABSUBPAGES control are not automatically deregistered when closing, for example, an activity displayed in the CONTENT frame on the right hand side of the workplace. This may lead to subsequent NullPointerExceptions.
Normally, deregistration is accomplished within the destroy() method in CommonAdapter. Hence, be careful when overriding this method in a subclass to call super.destroy(). In addition, you should override the endProcess() method in the adapter for the container layout, which should perform at least the following actions:
*call super.endProcess()
*call CommonAdapter.removeKnownAdapter (subPageAdapter) for each subPageAdapter
Copyright © 2005-2016 Software AG, Darmstadt, Germany.

Product LogoContact Support   |   Community   |   Feedback