Unfortunately quite a large update: Reorganized web.xml fragments into a separate directory, Modified build script to use the same web.xml merger as ccm installation script. NOTE: Logic bug fixed: If bundle specifies a web.xml, it is used as is without any postprocessing. If no web.xml is specified or the file does not exist, core's web.xml is used and the web.xml fragment of any module merged in.

git-svn-id: https://svn.libreccm.org/ccm/trunk@2657 8810af33-2d31-482b-a856-94f89814c4df
master
pb 2014-05-30 05:40:29 +00:00
parent 860147b7a7
commit 1fcdb94194
44 changed files with 321 additions and 553 deletions

View File

@ -0,0 +1,190 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<!--- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
basic web.xml for ccm-core and basic functions. If
additional modules provide specific web.xml snippets they must be
integrated before CCM is ready to work. Alternatively a
complete web.xml file from an installation bundle may be used.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<display-name>CCM</display-name>
<description>Content and Collaboration Management</description>
<!--
path and filename of the log4j user accessible config file
WEB-INF/conf/log4j.properties is the built-in default value
-->
<context-param>
<param-name>log4j-conf-file</param-name>
<param-value>WEB-INF/conf/log4j.properties</param-value>
</context-param>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Context Listener required and used to initialize the runtime environment
before any other task is performed or any servlet initialized.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<listener>
<listener-class>com.arsdigita.web.CCMApplicationContextListener</listener-class>
</listener>
<!--- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BASE SERVLET DECLARATIONS SECTION
basically requirred by ANY ccm-core application to work correctly!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!--
<servlet>
<servlet-name>reg</servlet-name>
<servlet-class>com.arsdigita.web.ContextRegistrationServlet</servlet-class>
<init-param>
<param-name>uri</param-name>
<param-value>/</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
-->
<servlet>
<servlet-name>ccm-dispatcher</servlet-name>
<servlet-class>com.arsdigita.web.CCMDispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>cache-manager</servlet-name>
<servlet-class>com.arsdigita.caching.CacheServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>db-test</servlet-name>
<servlet-class>com.arsdigita.web.monitoring.DBTestServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>versioning-log</servlet-name>
<servlet-class>com.arsdigita.versioning.VersioningServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>webdevsupport</servlet-name>
<servlet-class>com.arsdigita.webdevsupport.WebDevSupportServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>oid-redirect</servlet-name>
<servlet-class>com.arsdigita.web.OIDRedirectServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>resource-resolver</servlet-name>
<servlet-class>com.arsdigita.web.ResourceServlet</servlet-class>
</servlet>
<!--
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BASE SERVLET MAPPINGS SECTION basically
requirred by ccm-core
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-->
<servlet-mapping>
<servlet-name>ccm-dispatcher</servlet-name>
<url-pattern>/ccm/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cache-manager</servlet-name>
<url-pattern>/expireCache/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>db-test</servlet-name>
<url-pattern>/dbtest</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>versioning-log</servlet-name>
<url-pattern>/versioning/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>webdevsupport</servlet-name>
<url-pattern>/webdevsupport/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>oid-redirect</servlet-name>
<url-pattern>/redirect/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resource-resolver</servlet-name>
<url-pattern>/resource/*</url-pattern>
</servlet-mapping>
<!--
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ERROR PAGES
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-->
<error-page>
<exception-type>com.arsdigita.dispatcher.AccessDeniedException</exception-type>
<location>/error/access-denied.jsp</location>
</error-page>
<error-page>
<exception-type>com.arsdigita.dispatcher.ObjectNotFoundException</exception-type>
<location>/error/object-not-found.jsp</location>
</error-page>
<error-page>
<exception-type>com.arsdigita.kernel.permissions.PermissionException</exception-type>
<location>/error/permission-denied.jsp</location>
</error-page>
<error-page>
<exception-type>com.arsdigita.persistence.DbNotAvailableException</exception-type>
<location>/error/db-not-available.jsp</location>
</error-page>
<error-page>
<exception-type>com.arsdigita.db.DbNotAvailableException</exception-type>
<location>/error/db-not-available.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error/general.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.Error</exception-type>
<location>/error/general.jsp</location>
</error-page>
<!--
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TAG LIBS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-->
<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/bebop-show.tld</taglib-uri>
<taglib-location>/WEB-INF/bebop-show.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/bebop-define.tld</taglib-uri>
<taglib-location>/WEB-INF/bebop-define.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>

View File

@ -10,7 +10,7 @@
prettyName="Scientific CMS"
version="2.3.0"
release="devel-SNAPSHOT-r2620"
webxml="sci-web.xml"
webxml="scweb.xml"
portletxml="sci-portlet.xml"
webapp="libreccm"
xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd">

View File

@ -1,309 +0,0 @@
## For local modifications of the ccm build details overwrite
## the appropriate properties
## The defaults are shown commented out
## -------------------------------------------------
## Usually you will define your own specific bundle!
## -------------------------------------------------
#ccm.bundle.folder=${ccm.project.dir}/ccm-bundle/bundles/devel
#ccm.bundle.folder=${ccm.project.dir}/ccm-bundle/bundles/standard
#ccm.bundle.folder=${ccm.project.dir}/ccm-bundle/bundles/local/ccm
#ccm.bundle.folder=${ccm.project.dir}/ccm-bundle/bundles/local/igb
#ccm.bundle.folder=${ccm.project.dir}/ccm-bundle/bundles/local/nsh
#
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/devel
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/custom
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/demo
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/extended
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/standard
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/aap
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/iaw
#
#ccm.bundle.folder=${ccm.project.dir}/ccm-ldn-aplaws/bundles/custom
#ccm.bundle.folder=${ccm.project.dir}/ccm-ldn-aplaws/bundles/demo
#ccm.bundle.folder=${ccm.project.dir}/ccm-ldn-aplaws/bundles/devel
#ccm.bundle.folder=${ccm.project.dir}/ccm-ldn-aplaws/bundles/extended
#ccm.bundle.folder=${ccm.project.dir}/ccm-ldn-aplaws/bundles/standard
#
ccm.bundle.folder=${ccm.project.dir}/ccm-lbc-aplaws/bundles/intranet
## ====================================================================
## Update scripts
## ====================================================================
# Alle Versionen / Bundles:
# (hb r1554 ccm-simplesurvey loaded as legacy free application.
#ccm.upgrade.package=ccm-simplesurvey
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r1553 Packages CMS Workspace&Service loaded as legacy free application.
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.6
#ccm.upgrade.to.version=6.6.7
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-ldn-atoz
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r1531 Package ldn-search now loaded as legacy free application.
#ccm.upgrade.package=ccm-ldn-search
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# ---------------------------------------------------------------------
# Update von rel. 1.1.6 auf 1.2.0
# Müssen NACH dem (regulären) Update 1.1.4 -> 1.1.6 durchgeführt werden
# Reihenfolge: hier von UNTEN nach OBEN!
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# ACHTUNG: evt. ist iaw auf 1.2.0 OHNE letzte Ergänzungen (Login, Admin)
#ccm.upgrade.package=ccm-core
#ccm.upgrade.from.version=6.6.3
#ccm.upgrade.to.version=6.6.4
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-ldn-terms
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# Alle Versionen / Bundles:
# (hb r149? Package ccm-forum loaded as legacy free application.
#ccm.upgrade.package=ccm-forum
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# Alle Versionen / Bundles:
# (hb r1496 Package ccm-cms ContentSection loaded as legacy free application.
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.5
#ccm.upgrade.to.version=6.6.6
# Alle Versionen / Bundles:
# (hb r1492 Umbennen ccm-cms Associations between generic content type updated.
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.4
#ccm.upgrade.to.version=6.6.5
# Alle Versionen / Bundles:
# (hb r13?? Umbennen ccm-ldn-rss nach ccm-rssfeed und legacy free app
#ccm.upgrade.package=ccm-rssfeed
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r1398 Umbennen ccm-ldn-shortcuts nach ccm-shortcuts und legacy free app)
#ccm.upgrade.package=ccm-shortcuts
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# ---------------------------------------------------------------------
# Update von rel. 1.1.4 auf 1.1.6
# Müssen NACH dem (regulären) Update 1.1.3 -> 1.1.4 durchgeführt werden
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# (hb r1358: table cms_organizationalunits_hierarchy_map und cms_publish_lock)
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.3
#ccm.upgrade.to.version=6.6.4
# Alle Versionen / Bundles:
# (hb r1331/: ccm-ldn-subsite umbenannt nach ccm-subsite.)
#ccm.upgrade.package=ccm-subsite
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r1257/: ccm-ldn-navigation umbenannt nach ccm-navigation.)
#ccm.upgrade.package=ccm-navigation
#ccm.upgrade.from.version=6.6.2
#ccm.upgrade.to.version=6.6.3
# Alle Versionen / Bundles:
# (hb r1248/: ccm-[iaw|zes|...]-aplaws umgestellt auf ccm-sci-bundle.)
#ccm.upgrade.package=ccm-sci-bundle
#ccm.upgrade.from.version=0.0.0
#ccm.upgrade.to.version=6.6.0
# ---------------------------------------------------------------------
# Update von rel. 1.1.3 auf 1.1.4
# Müssen NACH dem (regulären) Update 1.1.2 -> 1.1.3 durchgeführt werden
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# (hb r1102/r1081: generic persons Tabelle erweitert.)
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.2
#ccm.upgrade.to.version=6.6.3
# ---------------------------------------------------------------------
# Update von rel. 1.1.2 auf 1.1.3
# Müssen NACH den Updates 1.1.1 -> 1.1.2 durchgeführt werden
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# (hb r903: Navigation legacy free)
#ccm.upgrade.package=ccm-ldn-navigation
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# Alle Versionen / Bundles:
# (hb r908 cms new style legacy compatible instead of old style / kernel.package)
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# ---------------------------------------------------------------------
# Update von rel. 1.1.1 auf 1.1.2
# Müssen NACH den Updates 1.1.0 -> 1.1.1 durchgeführt werden
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# (hb r894/r914: core portal legacy free)
#ccm.upgrade.package=ccm-core
#ccm.upgrade.from.version=6.6.2
#ccm.upgrade.to.version=6.6.3
# Alle Versionen / Bundles:
# (hb 799: former type address renamed to simpleaddress)
#ccm.upgrade.package=ccm-cms-types-simpleaddress
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r800: rename ccm-ldn-theme to ccm-themedirector)
#ccm.upgrade.package=ccm-themedirector
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r818: rename ccm-ldn-portal to ccm-portalworkspace)
#ccm.upgrade.package=ccm-portalworkspace
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r829: portalworkspace [and themedirector] legacy free)
#ccm.upgrade.package=ccm-portalworkspace
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# Alle Versionen / Bundles:
# (hb r829: themedirector [and portalworkspace] legacy free)
#ccm.upgrade.package=ccm-themedirector
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# Alle Versionen / Bundles:
# (hb r803/806: persistent property private mode added)
#ccm.upgrade.package=ccm-forum
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r833: named related links)
#ccm.upgrade.package=ccm-cms-assets-relatedlink
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
# (hb r836: unused table web_apps removed)
#ccm.upgrade.package=ccm-core
#ccm.upgrade.from.version=6.6.1
#ccm.upgrade.to.version=6.6.2
# -----------------------------------------------------
# Update von rel. 1.1.0 auf 1.1.1 mit Erweiterungen sci
# -----------------------------------------------------
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms-assets-imagestep
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms-assets-notes
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-ldn-navigation
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-ldn-terms
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms-types-article
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms-types-newsitem
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-cms-types-event
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# Alle Versionen / Bundles:
#ccm.upgrade.package=ccm-core
#ccm.upgrade.from.version=6.6.0
#ccm.upgrade.to.version=6.6.1
# -----------------------------------------------------
# Update von (intern) rel. 1.0.5 auf 1.1.0
# ----------------------------------------------------
# Nur ZeS (vermutlich noch auf 1.0.4):
# ccm.upgrade.package=ccm-core
# ccm.upgrade.from.version=6.5.2
# ccm.upgrade.to.version=6.5.3
# Nur ZeS:
# ccm.upgrade.package=ccm-core
# ccm.upgrade.from.version=6.5.5
# ccm.upgrade.to.version=6.5.6
# ccm.barkhof und zes
# ccm.upgrade.package=ccm-cms
# ccm.upgrade.from.version=6.5.3
# ccm.upgrade.to.version=6.5.4
# ccm.barkhof und zes
# ccm.upgrade.package=ccm-ldn-portal
# ccm.upgrade.from.version=6.5.1
# ccm.upgrade.to.version=6.5.2
# ccm.barkhof und zes
# ccm.upgrade.package=ccm-ldn-portal
# ccm.upgrade.from.version=6.5.2
# ccm.upgrade.to.version=6.5.3
# ccm.barkhof und zes
# ccm.upgrade.package=ccm-ldn-terms
# ccm.upgrade.from.version=6.5.0
# ccm.upgrade.to.version=6.5.1
# ccm.barkhof und zes
# ccm.upgrade.package=ccm-ldn-terms
# ccm.upgrade.from.version=6.5.1
# ccm.upgrade.to.version=6.5.2

View File

@ -1,111 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- project.xml -IfS- containing only those modules used for IAW -->
<ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ccm="http://ccm.redhat.com/ccm-project"
ccmVersion="6.1"
name="aplaws-ifs"
prettyName="APLAWS plus"
version="1-0-9"
release="beta-2"
webxml="web.xml-aplaws"
webapp="ROOT"
xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd">
<ccm:build>
<!-- Main apps -->
<!-- - - - - - -->
<ccm:application name="ccm-core"/>
<ccm:application name="ccm-cms"/>
<!-- Content Assets -->
<!-- - - - - - - - -->
<ccm:application name="ccm-cms-assets-fileattachment"/>
<ccm:application name="ccm-cms-assets-notes"/>
<ccm:application name="ccm-cms-assets-relatedlink"/>
<!-- Content Types -->
<!-- - - - - - - - -->
<!-- <ccm:application name="ccm-cms-types-address"/> -->
<!-- <ccm:application name="ccm-cms-types-agenda"/> -->
<ccm:application name="ccm-cms-types-article"/>
<ccm:application name="ccm-cms-types-baseAddress"/>
<ccm:application name="ccm-cms-types-baseContact"/>
<ccm:application name="ccm-cms-types-bookmark"/>
<!-- <ccm:application name="ccm-cms-types-contact"/> -->
<!-- <ccm:application name="ccm-cms-types-esdservice"/> -->
<ccm:application name="ccm-cms-types-event"/>
<!-- faqitem not needed by IfS -->
<!-- <ccm:application name="ccm-cms-types-faqitem"/> -->
<ccm:application name="ccm-cms-types-filestorageitem"/>
<ccm:application name="ccm-cms-types-formitem"/>
<ccm:application name="ccm-cms-types-formsectionitem"/>
<ccm:application name="ccm-cms-types-genericorganization"/>
<!-- glossaryitem not needed by IfS, too -->
<!-- <ccm:application name="ccm-cms-types-glossaryitem"/> -->
<!-- <ccm:application name="ccm-cms-types-htmlform"/> -->
<!-- <ccm:application name="ccm-cms-types-inlinesite"/> -->
<!-- <ccm:application name="ccm-cms-types-job"/> -->
<!-- <ccm:application name="ccm-cms-types-legalnotice"/> -->
<!-- <ccm:application name="ccm-cms-types-minutes"/> -->
<!-- <ccm:application name="ccm-cms-types-motditem"/> -->
<ccm:application name="ccm-cms-types-mparticle"/>
<ccm:application name="ccm-cms-types-newsitem"/>
<!-- <ccm:application name="ccm-cms-types-organization"/> -->
<!-- <ccm:application name="ccm-cms-types-pressrelease"/> -->
<!-- <ccm:application name="ccm-cms-types-service"/> -->
<ccm:application name="ccm-cms-types-organizationalunit"/>
<ccm:application name="ccm-cms-types-person"/>
<!-- <ccm:application name="ccm-cms-types-siteproxy"/> -->
<ccm:application name="ccm-cms-types-researchnetwork"/>
<!-- xmlfeed is not needed by IfS, too -->
<!-- <ccm:application name="ccm-cms-types-xmlfeed"/> -->
<!-- Applications -->
<!-- - - - - - - -->
<!-- <ccm:application name="ccm-auth-http"/> -->
<!-- <ccm:application name="ccm-bookmarks"/> -->
<!-- temporarily excluded, produces errors in the build process
<ccm:application name="ccm-docmngr"/> -->
<!-- <ccm:application name="ccm-formbuilder-pdf"/> -->
<ccm:application name="ccm-forum"/>
<ccm:application name="ccm-simplesurvey"/>
<ccm:application name="ccm-user-preferences"/>
<!-- <ccm:application name="ccm-weblog"/> -->
<!-- <ccm:application name="ccm-webpage"/> -->
<!-- LDN extension -->
<!-- - - - - - - - -->
<!-- <ccm:application name="ccm-ldn-aplaws"/> -->
<!-- <ccm:application name="ccm-ldn-atoz"/> -->
<!-- <ccm:application name="ccm-ldn-dublin"/> -->
<!-- <ccm:application name="ccm-ldn-exporter"/> -->
<!-- <ccm:application name="ccm-ldn-freeform"/> -->
<ccm:application name="ccm-ldn-image-step"/>
<!-- <ccm:application name="ccm-ldn-importer"/> -->
<ccm:application name="ccm-ldn-navigation"/>
<ccm:application name="ccm-ldn-portal"/>
<ccm:application name="ccm-ldn-rss"/>
<ccm:application name="ccm-ldn-search"/>
<ccm:application name="ccm-ldn-shortcuts"/>
<ccm:application name="ccm-ldn-subsite"/>
<ccm:application name="ccm-ldn-terms"/>
<ccm:application name="ccm-ldn-theme"/>
<ccm:application name="ccm-ldn-util"/>
<!-- IfS extension -->
<!-- - - - - - - - -->
<ccm:application name="ccm-ifs-aplaws"/>
<!-- tools will be downloaded from trunk, but does not
contain java code to be compiled!
<ccm:application name="tools"/> -->
</ccm:build>
</ccm:project>

View File

@ -7,12 +7,14 @@ new CCM / APLAWS, standards compliant deployment and execution context.
common/
Library of files and schemes which may be used by several development
Library of files and schemes which are used by several development
and user tools (ecdc, maven, and others)
devel/
Library of files which are requirred by either the test runtime
or the compiler to do its work (e.g. jdbc drivers).
or the compiler to do its work (e.g. servlet API). Libs included in
application.xml's <dendencies> ... </dependencies> segment have to
be included here.
distribution/
Several Files to create software distribution, esp. RPM distribution
@ -23,6 +25,10 @@ ecdc/
A simplified development environment with minimal installation and
preparation prerequisites.
liferay portal server
ready to be installed into a CCM Tomcat container.
ant task 'install liferay' uses this directory.
maven/
Maven development environment.
Comming soon.
@ -30,8 +36,5 @@ maven/
netbeans/
Netbeans integration. Project file which defines all CCM packages.
webxml/
Utilitiy classes to create a web.xml file from package stub files.
README
This file

Binary file not shown.

View File

@ -1,4 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/1"/>
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
</project-private>

View File

@ -68,6 +68,15 @@
<xsl:template name="SharedProperties">
<!-- Invoked by template Main at the beginning, setup the basic conf -->
<!-- Ensure minmal required ant version -->
<fail message="Unsufficient ANT version. At least version 1.7 required.">
<condition>
<not>
<antversion atleast="1.7.0" />
</not>
</condition>
</fail>
<!-- set basic build variables base on project.xml tags name, prettyName, webapp -->
<xsl:variable select="@name" name="name"/>
<xsl:variable select="@prettyName" name="prettyName" />
@ -198,12 +207,12 @@
<xsl:value-of select="@webxml"/>
</xsl:attribute>
</property>
<echo message="web.xml file requested: ${{webxml.source.file}}" />
</xsl:when>
<xsl:otherwise>
<property name="webxml.source.file" value="web.ccm-core.xml"/>
<echo message="No custom web.xml file requested, using standard web.xml" />
</xsl:otherwise>
</xsl:choose>
<echo message="web.xml file requested: ${{webxml.source.file}}" />
<!-- Determines the portlet.xml file to use. If the project.xml file
contains a ccm:project/portlet.xml property this name is used to
@ -220,10 +229,7 @@
<echo message="portlet.xml file requested: ${{portletxml.source.file}}" />
</xsl:when>
<xsl:otherwise>
<!--
<property name="webxml.source.file" value="web.ccm-core.xml"/>
-->
<echo message="NO portlet.xml file requested." />
<echo message="NO custom portlet.xml file requested." />
</xsl:otherwise>
</xsl:choose>
@ -232,14 +238,9 @@
<include name="conf"/>
</dirset>
<pathelement path="${{java.class.path}}"/>
<!-- does no longer exist in APLAWS 1.0.4 and beyond
<fileset dir="${{ccm.tools.dir}}">
<include name="lib/security/*.jar"/>
</fileset>
-->
</path>
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="${{ccm.tools.lib.dir}}/ant-contrib.jar"/>
</classpath>
@ -249,6 +250,14 @@
<pathelement location="${{ccm.tools.rh-jdo.dir}}"/>
</classpath>
</taskdef>
<taskdef name="webxmlmerge" classname="com.arsdigita.ant.WebXMLMergeTask">
<classpath>
<pathelement location="${{ccm.tools.lib.dir}}/webxml-mergetool.jar"/>
<pathelement location="${{ccm.tools.lib.dir}}/dom4j.jar"/>
<pathelement location="${{ccm.tools.lib.dir}}/xerces.jar"/>
<pathelement location="${{ccm.tools.lib.dir}}/xercesImpl.jar"/>
</classpath>
</taskdef>
</xsl:template> <!-- template SharedProperties-->
@ -1113,7 +1122,7 @@
</target>
</xsl:if>
<!-- Deploy web -->
<!-- Deploy web (copy the module's web tree to deploy target)-->
<target name="deploy-web-{$name}" depends="init">
<copy todir="${{this.deploy.dir}}">
<fileset dir="{$name}">
@ -1249,11 +1258,25 @@
</target>
<!-- Builds web.xml either by copying a predefined file from bundle or
by merging each modules web.xml stubs into a base file, existing
in core.
Uses check-webxml to check if the bundle contains a predefined file.
If if does, copy-webxml copies the file, otherwise merge-webxml
creates one.
-->
<target name="build-webxml"
depends="check-webxml,copy-webxml,merge-webxml">
<echo>Processing web.xml done.</echo>
</target>
<!-- Determines whether web.xml as specified in webxml.source.file exists,
and determines its fully qualified file name. Uses copy-bundle-init to
ensure the proper installation bundle.
Property "resolved.webxml.source.file" is set to the source. -->
<target name="copy-webxml-init" depends="copy-bundle-init,init">
<target name="check-webxml" depends="copy-bundle-init,init"
if="webxml.source.file" >
<available file="${{this.deploy.dir}}/WEB-INF" type="dir"
property="root.webapp.exists"/>
<!--
@ -1271,6 +1294,7 @@
</and>
</condition>
<!-- Otherwise the file should already be in WEB-INF -->
<!--
<condition property="resolved.webxml.source.file"
value="${{this.deploy.dir}}/WEB-INF/${{webxml.source.file}}">
<and>
@ -1281,58 +1305,46 @@
</not>
</and>
</condition>
-->
<echo message="web.xml to use: ${{resolved.webxml.source.file}}" />
<echo message="web.xml spezfied: ${{resolved.webxml.source.file}}" />
</target>
<!-- Uses target copy-webxml-init to determines which web.xml should
be used (as specified in project.xml), copies this file into
WEB-INF.xml and invokes merge-xml to merge the web.*.xml stub of
each module (it exist) into that file as necessary -->
<!-- Copies the web.xml file as specified in bundle's project.xml,
provided check-webxml found ssuch a specification.
It does just the copy operation, no further processing. -->
<target name="copy-webxml"
depends="init,copy-webxml-init" if="root.webapp.exists">
depends="init,check-webxml" if="resolved.webxml.source.file">
<copy file="${{resolved.webxml.source.file}}"
tofile="${{this.deploy.dir}}/WEB-INF/web.xml" overwrite="yes"/>
<foreach param="file" target="merge-webxml">
<path>
<fileset dir="${{this.deploy.dir}}/WEB-INF" includes="web.ccm-*.xml"/>
</path>
</foreach>
</target>
<target name="merge-webxml" depends="init">
<echo>Merging in ${file}</echo>
<property name="customWebXML" value="${{file}}"/>
<property name="originalWebXML" value="${{this.deploy.dir}}/WEB-INF/web.xml"/>
<property name="mergedWebXML" value="${{customWebXML}}.merged"/>
<!-- manager property javax avoids dependency on bsf which introduced
a lot of cross-OS problems -->
<script language="javascript" manager="javax">
<classpath>
<fileset dir="tools-ng/webxml/lib" includes="*.jar"/>
</classpath>
importClass(java.lang.System);
<!-- Fixed Bug in combination with version ant-apache-bsf tasks
1.7.1/bsf-2.4.0. by prefixing non Java API packages with "Packages" cf:
http://wiki.apache.org/ant/AntOddities#Using_your_own_classes_inside_.3Cscript.3E.
<target name="merge-webxml" depends="init"
unless="resolved.webxml.source.file">
<echo>Start to merge web.xml file.</echo>
<property name="originalWebXML"
value="${{this.deploy.dir}}/WEB-INF/web.xml"/>
<property name="mergedWebXML" value="${{originalWebXML}}.merged"/>
<for param="file">
<path>
<fileset dir="${{this.deploy.dir}}/WEB-INF/web.d/"
includes="web.ccm-*.xml"/>
</path>
<sequential>
<echo message="Merging in: @{{file}}"/>
<webxmlmerge originalfile="${{originalWebXML}}"
mergefile="@{{file}}"
destfile="${{mergedWebXML}}" />
<!-- the merged file becomes the new original web.xml -->
<copy file="${{mergedWebXML}}"
tofile="${{originalWebXML}}"
overwrite="yes"/>
<delete file="${{mergedWebXML}}"/>
</sequential>
</for>
Need for bsf removed now by introducing manager="javax" above so this
fix (introduced in r2016) may be removed (Dec. 2009 r2045)
-->
importClass(Packages.com.liferay.portal.tools.WebXMLBuilder);
importClass(Packages.com.liferay.portal.kernel.util.FileUtil);
importClass(Packages.com.liferay.portal.util.FileImpl);
importClass(Packages.com.liferay.portal.xml.SAXReaderImpl);
importClass(Packages.com.liferay.portal.kernel.xml.SAXReaderUtil);
new FileUtil().setFile(FileImpl.getInstance());
new SAXReaderUtil().setSAXReader(new SAXReaderImpl());
<!-- takes the original web.xml file, merges the web.*.xml stub file
from a package to include and merges both into mergedWebXML -->
var builder = new WebXMLBuilder(originalWebXML, customWebXML, mergedWebXML);
</script>
<!-- the merged file becomes the new original web.xml -->
<copy tofile="${{originalWebXML}}" file="${{mergedWebXML}}" overwrite="yes"/>
<delete file="${{mergedWebXML}}"/>
</target>
@ -1488,7 +1500,7 @@
<!-- Master deploy -->
<target name="deploy"
depends="init,deploy-global,deploy-local,copy-webxml,build-portletxml,copy-bundle">
depends="init,deploy-global,deploy-local,build-webxml,build-portletxml,copy-bundle">
<xsl:attribute name="description">
Builds and deploys all applications, also deploys prebuilt applications and config files
</xsl:attribute>

View File

@ -21,26 +21,26 @@
<project name="load">
<target name="load-bundle" depends="prepare-load">
<echo>Loading bundle from ${this.bundle.folder} into ${ccmhome}</echo>
<echo>Loading bundle from ${this.bundle.folder} into ${ccmhome}</echo>
<java classname="com.arsdigita.packaging.MasterTool" fork="true">
<java classname="com.arsdigita.packaging.MasterTool" fork="true">
<classpath refid="ccm.classpath" />
<sysproperty key="ccm.home" value="${ccmhome}" />
<arg line="load --packagekeys-file ${this.bundle.folder}/cfg/package-key.list --parameter-file ${this.bundle.folder}/cfg/integration.properties" />
<jvmarg value="${app.server.debugger}" />
</java>
</target>
<arg line="load --packagekeys-file ${this.bundle.folder}/cfg/package-key.list --parameter-file ${this.bundle.folder}/cfg/integration.properties" />
<jvmarg value="${app.server.debugger}" />
</java>
</target>
<target name="load-bundle-interactive" depends="prepare-load">
<echo>Loading bundle ${this.bundle.folder} interactively into ${ccmhome}</echo>
<target name="load-bundle-interactive" depends="prepare-load">
<echo>Loading bundle ${this.bundle.folder} interactively into ${ccmhome}</echo>
<java classname="com.arsdigita.packaging.MasterTool" fork="true">
<java classname="com.arsdigita.packaging.MasterTool" fork="true">
<classpath refid="ccm.classpath" />
<sysproperty key="ccm.home" value="${ccmhome}" />
<arg line="load --packagekeys-file ${this.bundle.folder}/cfg/package-key.list --interactive --parameter-file ${this.bundle.folder}/cfg/integration.properties" />
<jvmarg value="${app.server.debugger}" />
</java>
</target>
<sysproperty key="ccm.home" value="${ccmhome}" />
<arg line="load --packagekeys-file ${this.bundle.folder}/cfg/package-key.list --interactive --parameter-file ${this.bundle.folder}/cfg/integration.properties" />
<jvmarg value="${app.server.debugger}" />
</java>
</target>
<target name="load-bundle-config" depends="prepare-load">
<echo>Registers configuration from ${this.bundle.folder} for ${applications} into registry</echo>
@ -62,19 +62,19 @@
</java>
</target>
<target name="load" depends="prepare-load">
<echo>load ${applications} without further configuration specifications but using build in defaults.</echo>
<java classname="com.arsdigita.packaging.MasterTool"
<target name="load" depends="prepare-load">
<echo>load ${applications} without further configuration specifications but using build in defaults.</echo>
<java classname="com.arsdigita.packaging.MasterTool"
classpathref="ccm.classpath" fork="true">
<sysproperty key="ccm.home" value="${ccmhome}" />
<sysproperty key="ccm.home" value="${ccmhome}" />
<!--
<sysproperty key="log4j.configuration"
value="file:runtime/${app.server.bundles.name}/conf/log4j.xml" />
<sysproperty key="java.protocol.handler.pkgs"
value="${java.protocol.handler.pkgs}" />
-->
<arg line="load ${applications} " />
<jvmarg value="${app.server.debugger}" />
<arg line="load ${applications} " />
<jvmarg value="${app.server.debugger}" />
</java>
</target>

View File

@ -41,7 +41,7 @@
<fileset dir="${ccm.tools.lib.dir}" includes="*.jar" />
</path>
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="${ccm.tools.lib.dir}/ant-contrib.jar"/>
</classpath>

View File

@ -80,7 +80,7 @@
<delete dir="${app.server.webapp.dir}/portal"/>
</target>
<target name="start" description="Start the Tomcat server">
<target name="start" description="Start the Tomcat server">
<if>
<equals arg1="${app.server.debug.on}" arg2="true" />
<then>
@ -94,34 +94,37 @@
</else>
</if>
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes">
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes">
<!-- nolonger needed ? (if anything works as expected)
seems to be needed if sysproperty javax....xerces...SAYParser .... below is set.-->
<sysproperty key="java.endorsed.dirs" value="${app.server.shared.dir}/endorsed" />
<!-- -->
<!-- nolonger needed ? (if anything works as expected)
seems to be needed if sysproperty javax....xerces...SAYParser ....
below is set.-->
<!--
<sysproperty key="java.endorsed.dirs"
value="${app.server.shared.dir}/endorsed" />
-->
<!-- Previously required to prevent Tomcat from using AElfred to check web.xml / taglibs -->
<!-- seems to work now without, please comment in if something goes wrong with XML processing
<sysproperty key="javax.xml.transform.TransformerFactory" value="com.icl.saxon.TransformerFactoryImpl" />
<sysproperty key="javax.xml.parsers.DocumentBuilderFactory" value="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl" />
<sysproperty key="javax.xml.parsers.SAXParserFactory" value="org.apache.xerces.jaxp.SAXParserFactoryImpl" />
-->
<!-- Previously required to prevent Tomcat from using AElfred to check web.xml / taglibs -->
<!-- seems to work now without, please comment in if something goes wrong with XML processing
<sysproperty key="javax.xml.transform.TransformerFactory" value="com.icl.saxon.TransformerFactoryImpl" />
<sysproperty key="javax.xml.parsers.DocumentBuilderFactory" value="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl" />
<sysproperty key="javax.xml.parsers.SAXParserFactory" value="org.apache.xerces.jaxp.SAXParserFactoryImpl" />
-->
<!-- standard parameter to Tomcat operation -->
<sysproperty key="catalina.home" value="${app.server.home.dir}" />
<sysproperty key="catalina.base" value="${app.server.home.dir}" />
<sysproperty key="catalina.config" value="file:///${app.server.conf.dir}/catalina.properties" />
<jvmarg value="-Xms256m" />
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:PermSize=128m" />
<jvmarg value="-XX:MaxPermSize=128m" />
<jvmarg value="${app.server.debugger}" />
<classpath>
<pathelement path="${app.server.home.dir}/bin/bootstrap.jar:${app.server.home.dir}/bin/tomcat-juli.jar" />
</classpath>
</java>
</target>
<!-- standard parameter to Tomcat operation -->
<sysproperty key="catalina.home" value="${app.server.home.dir}" />
<sysproperty key="catalina.base" value="${app.server.home.dir}" />
<sysproperty key="catalina.config" value="file:///${app.server.conf.dir}/catalina.properties" />
<jvmarg value="-Xms256m" />
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:PermSize=128m" />
<jvmarg value="-XX:MaxPermSize=128m" />
<jvmarg value="${app.server.debugger}" />
<classpath>
<pathelement path="${app.server.home.dir}/bin/bootstrap.jar:${app.server.home.dir}/bin/tomcat-juli.jar" />
</classpath>
</java>
</target>
<target name="stop" description="Stop the Tomcat server">
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes">

View File

@ -1,21 +0,0 @@
/**
* Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/