Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Dependencies may be service dependencies, dependencies with other WCBs plugins but also dependencies on other resources that require user interaction to make those available like database tables or changes in the web.xml. The changes necessary should be performed by the plugin itself automatically upon installation of the plugin as much as possible and those resources should be removed when the plugin is purged [G126]. For example; a configuration set should automatically be created by the plugin upon installation and removed automatically when the plugin is purged. Another example is the need for a manual execution of an SQL script to install required database tables. A bad example is the need for modification of the web.xml which would require a server restart. All dependencies other then service dependencies or WCB plugin dependencies should be documented.

...

  • Javadoc describing all services and objects that the plugin exposes [G074].
  • Online help covering the visible components contained by the plugin [G108].

Note that the WCB The plugin should never contain the empty online help generated by the archetype [G147].

...

readme.txt - A text file without markup that contains list of new features in the latest version of the WCA, list of hardware & software requirements, license statement and known issues (stored in the root of the WCA [G035]) It should be properly filled in.

The WCB plugin JAR file containing the actual software component contains the following directory structure [G039]:

...

For each XperienCentral release, the Hard and Software Requirements is updated which describes the hardware and software on which XperienCentral is supported. The WCB plugin should be compliant with these requirements [G154].

...

The XperienCentral Editor supports basic authorization in the sense that XperienCentral functionality can only be accessed by users that are logged in and elements can only be updated if the editor has permission to update the page. This is basically what the XperienCentral platform supports concerning authorization. Any additional authorization has to be programmed within the WCB plugin itself.

For this purpose the XperienCentral platform supports role-based RBAC security. Each component in the WCB plugin that has a GUI must define at least one RBAC category and RBAC permissions within that category [G050]. A category may contain permissions used by all components of the WCBplugin, but it may also define a separate category for each component. Note that a component can only be disabled individually if it is contained by its own permission category.

...

Code Block
themeEclipse
<domain>.<WCB<plugin ID>.api

 

Back to top

 

...

Presentation Plugins

...

The value of the name attribute in the descriptor of a JSP should be prefixed by the plugin ID [G139]. Static files used by a presentation plugin should be located in a subdirectory that equals the plugin ID (/src/main/resources/presentationtype/static/<WCB <plugin ID>) [G140]. A common problem in the presentation JSP of media item content is recursion. A media collection may display the contents of a media item while the media item itself contains the same media collection element. In that case, the media item will be rendered recursively causing an endless loop and bring the server down. For that reason, a JSP that displays the content of a media item should check whether it has not already been rendered within the same request [G142].

...

Code Block
themeEclipse
<domain>.<WCB<plugin ID>

 

The ID of each component definition contained by the plugin must be prefixed with the component bundle definition ID followed by an ID that is unique within the plugin and must match the component name and consist of lowercase alphanumeric characters in the range [a-z] [G098]. We refer to this unique ID within the plugin as the component ID and the component definition ID conforms to the syntax:

...

Code Block
themeEclipse
<domain>.<WCB<plugin ID>.<Component ID>

 

For media Item components, the content type (defined by the @ContentType annotation in the media Item version implementation class) must equal the plugin ID or be prefixed by the plugin ID and may only contain alphanumeric characters in the range [a-z] [G124].

...

Code Block
themeEclipse
<domain>.<WCB<plugin ID>

Artifact and Group IDs

...

PropertyExample

Domain name

<domain name>

Plugin ID

<plugin ID>

Namespace prefix

<plugin ID>

Component bundle definition ID

<domain name>.<plugin ID>

Component definition ID

<domain name>.<plugin ID>.<Component ID>

Package of WCBthe plugin

<domain name>.<plugin ID>

Package of component

<domain name>.<plugin ID>.<Component ID>

Artifact ID

<plugin ID>

Group ID

<domain name>

bundleSymbolicName

<domain name>.<plugin ID>

Content Type

<plugin ID>

...