Plugin:org.tolven.assembler.war
From DOC
Contents |
Overview
Version 2.1 Notes
Version 2.1.4
- Removed the check for whether a class provided for inclusion in WEB-INF/classes exists or not, because although a class (for example, a Servlet) may be referred to in a manifest, it might be contributed in a jar in the WEB-INF/lib, and this would lead to an exception.
- Moved functionality from org.tolven.assembler.facesconfig and org.tolven.assembler.webxml to org.tolven.assembler.war.
- Removed web-resource-name parameter-def from webDirectory, filter and filter-adaptor extension-points
- Extension-points transaction-filter, security-filter, security-role and security-constraint are deprecated, and no longer required.
- The following extension-points can now be supplied via a web-fragment:
- listener-adaptor
- env-entry-adaptor
- ejb-local-ref
- session-config
- welcome-file-list
- login-config
- env-entry
- Added a web.xml directly to war module plug-ins, which then forms the basis for default entries to which web-fragments contribute.
Version 2.1.3
- Support for multiple war modules in one plug-in.
Version 2.1.2
- Removed the following unused manifest extension-points that were used to add zip files to tolvenWEB/download which were needed by TPF for RMI library downloads to its remoteLib directory. TPF now uses the RESTful API.
- downLoadWeb
- remoteFile
- remoteProductDir
Version 2.1.0
- Now recognizes war module plug-ins via the extension-point: warModule-declaration, which containts a context-id identifying the functionality of the war module.
- Now recognizes the following adaptor extension-points so that plug-ins can make contributions using a plug-in ID and extenion-point from a third-party plug-in:
webDirectory-adaptor WEB-INF-CLASSES-adaptor WEB-INF-LIB-adaptor WEB-ROOT-FILES-adaptor
- Be sure and read the release notes below for Version 2.0.20 regarding the new scriptsOrder Property in plugins.xml.
Version 2 Notes
Version 2.0.20
New scriptsOrder Property in plugins.xml
By default, the javascript files are included in the Web page in random order. For example, in tolvenweb, the javascript files added to the manifest file are added to portalTemplate.xhtml during assembly time. Consider the following example:
<extension id="calendar" plugin-id="org.tolven.component.tolvenweb" point-id="portalScriptInclude">
<parameter id="includeFile" value="scriptInclude/calendar.txt" />
</extension>
<extension id="datastructures" plugin-id="org.tolven.component.tolvenweb" point-id="portalScriptInclude">
<parameter id="includeFile" value="scriptInclude/datastructures.txt" />
</extension>
<extension id="layercalendar" plugin-id="org.tolven.component.tolvenweb" point-id="portalScriptInclude">
<parameter id="includeFile" value="scriptInclude/layercalendar.txt" />
</extension>
You can add the above-mentioned javascript files to portalTemplate.xhtml in any order. When you have javascript files that use javascript libraries or an API defined in other javascript files, this behavior might result in javascript errors when the dependent files are added to Web page before the used libraries/API javascript files are added. See the example code snippet below. For example tolven6.js uses an API from the prototype library. In this case, if tolven6.js is added to the Web page before prototype.js, the browser will fail to load tolven6.js.
<head> <script src="/Tolven/scripts/tolven6.js" type="text/javascript" language="JavaScript"> </script> <script src="/Tolven/scripts/prototype.js" type="text/javascript" language="JavaScript"> </script> .......... .......... </head>
To resolve issues that may arise, you can specify a new property called scriptsOrder in the respective Web application plug-in's configuration section in the plugins.xml file. For example, to make sure prototype is added before tolven6.js, configure the scriptsOrder property as shown below:
<plugin id="org.tolven.component.tolvenweb">
<root />
<property name="scriptsOrder"
value="org.tolven.component.tolvenweb@prototype,org.tolven.component.tolvenweb@datastructures,
org.tolven.component.tolvenweb@tolven6,org.tolven.component.tolvenweb@tolvenwiz,org.tolven.component.tolvenweb@rico"/>
</plugin>
As seen in the example above, you can specify the order of the javascript files with a comma-separated string representation of the plug-in name and the extension ID. In the string 'org.tolven.component.tolvenweb@prototype', org.tolven.component.tolvenweb is the name of the plug-in and 'prototype' is the ID of the extension defined in it's manifest file. The javascript files that are added to the plug-in but do not have the order defined in plugins.xml will be added in random order after ordered script files have been added.
Version 2.0.19
- Clean up the build directory if any assembly is to be done
Version 2.0.17
- Prevent a NullPointerException
Version Notes
Version 0.0.15
- Place web class files under WEB-INF/classes
Version 0.0.14
- Added a propertySequence extension, which allows properties to be sequenced
Version 0.0.13
- Moved jsf-facelets.jar from root in tolven.ear into tolvenWEB.war/WEB-INF/lib
Version 0.0.12
- assembler plugins will now only build during configPhase, if the <tolven-config>/build/repositoryTmp does not exist or is empty, implying a build has not yet occurred. The build directory is deleted whenever plugins are downloaded resulting in a change in material, with which to build.
Version 0.0.11
- tolvenRemoteClient is now assembled during configPhase1, and placed in the public/download directory of the /Tolven context, where it can be automatically downloaded from the server via http to the installDir/remoteLib directory for use during the execution of configPhase3
Version 0.0.10
- web.xml is now fully auto-generated (e.g. using extensions in tolvenweb manifest)
Version 0.0.9
- Minor comment change to clearly display the location of property class files which are not contributed to the tolvenEAR file correctly
Version 0.0.8
- Swapped plugins from using doStart() to an explicit execute().
- Switched many logger statements
Version 0.0.7
- webDirectory extension-point parent is now org.tolven.component.war
- Entries for filters and servlets now moved from web.xml to the tolvenweb manifest
Version 0.0.5
- Prevent null pointer exceptions when the plugin manifest does not contain all three of tagSourceDirectory, validator and converter extension points.
Version 0.0.4
- Added the extension-point called "fileInclude", which allows child extension-points to accept extensions which can include the contents of one file into a target file.
Version 0.0.3
- Added the extension-point called "property", which allows war instance plugins to extend the ablity to add property files for use by war classes.
Version 0.0.2
- An abstract extension point with id=classes has been added.
- Instances of war plugins (e.g. org.tolven.component.tolvenweb) can now reference this plugin as a parent in order to have their class contributions processed.

