You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lenya.apache.org by Thorsten Scherler <th...@apache.org> on 2006/08/04 00:20:00 UTC
Re: svn commit: r428447 - in /lenya/trunk/src:
modules-core/properties/ modules-core/properties/config/
modules-core/properties/config/cocoon-xconf/ modules-core/properties/java/
modules-core/properties/java/src/ modules-core/properties/java/src/org/
modul...
El jue, 03-08-2006 a las 16:15 -0400, Doug Chestnut escribió:
> Hi Thorsten,
> This looks very cool indeed, can't wait to try it out.
Yeah it is pretty handy for modules. I needed it for a blog module
(actually two: blogfeed and blogentry) we are developing in wyona. You
can find them in the public rep of wyona.
>
> I am getting this error when trying to build:
>
> Compiling 1 source file to
> C:\src\lenya-1.4.x\build\lenya\modules\org.apache.lenya.modules.properties\java\classes
> C:\src\lenya-1.4.x\src\modules-core\properties\java\src\org\apache\lenya\cms\cocoon\components\modules\input\PropertiesModule.java:44:
> package org.apache.forrest.conf does not exist
> import org.apache.forrest.conf.AntProperties;
>
> Do we need to add a forrest library to the module?
Hmm, actually we always had a forrest library in our libs dir. I added
the current head revision again.
I removed the xml-forrest-components.jar because I think it is an old
version of forrest.
Thanks for pointing this out.
salu2
>
> Thanks,
> --Doug
>
> thorsten@apache.org wrote:
> > Author: thorsten
> > Date: Thu Aug 3 09:44:38 2006
> > New Revision: 428447
> >
> > URL: http://svn.apache.org/viewvc?rev=428447&view=rev
> > Log:
> > Adding a new configuration system module.
> > This new property system is based on the new forrest property system. It let you define properties e.g. in modules or pubs that can be locally
> > overriden without patching the module/pub.
> >
> > You can add lenya.properties.xml to your module to define the default properties for the module. This overrides the default lenya properties in
> > src/webapp/lenya.properties.xml. However the module config can be overriden by defining
> > local.lenya.properties.xml in src/webapp/.
> >
> > Try the following:
> > See the default property "the lenya community" in the heading of http://localhost:8888/default/authoring/index.html.
> > cd src/webapp/src/webapp/lenya.properties.xml src/webapp/src/webapp/local.lenya.properties.xml
> > change pubs.default.author in the new file, restart/rebuild lenya and request http://localhost:8888/default/authoring/index.html
> > See your new prop and smile.
> >
> > Added:
> > lenya/trunk/src/modules-core/properties/
> > lenya/trunk/src/modules-core/properties/config/
> > lenya/trunk/src/modules-core/properties/config/cocoon-xconf/
> > lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf (with props)
> > lenya/trunk/src/modules-core/properties/java/
> > lenya/trunk/src/modules-core/properties/java/src/
> > lenya/trunk/src/modules-core/properties/java/src/org/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/
> > lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/PropertiesModule.java
> > - copied, changed from r428442, forrest/trunk/main/java/org/apache/forrest/conf/ForrestConfModule.java
> > lenya/trunk/src/modules-core/properties/module.xml (with props)
> > lenya/trunk/src/webapp/lenya.properties.xml (with props)
> > Modified:
> > lenya/trunk/src/pubs/default/sitemap.xmap
> > lenya/trunk/src/pubs/default/xslt/page2xhtml.xsl
> > lenya/trunk/src/webapp/ (props changed)
> >
> > Added: lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf?rev=428447&view=auto
> > ==============================================================================
> > --- lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf (added)
> > +++ lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf Thu Aug 3 09:44:38 2006
> > @@ -0,0 +1,26 @@
> > +<?xml version="1.0"?>
> > +<!--
> > + Copyright 1999-2005 The Apache Software Foundation
> > +
> > + Licensed under the Apache License, Version 2.0 (the "License");
> > + you may not use this file except in compliance with the License.
> > + You may obtain a copy of the License at
> > +
> > + http://www.apache.org/licenses/LICENSE-2.0
> > +
> > + Unless required by applicable law or agreed to in writing, software
> > + distributed under the License is distributed on an "AS IS" BASIS,
> > + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + See the License for the specific language governing permissions and
> > + limitations under the License.
> > +-->
> > +
> > +<!-- $Id: usecases-workflow-deactivate.xconf 348547 2005-11-23 20:13:01Z chestnut $ -->
> > +<!--
> > + This file defines the publication specific use-cases
> > +-->
> > +
> > + <xconf xpath="/cocoon/input-modules" unless="/cocoon/input-modules/component-instance[@name = 'properties']">
> > + <component-instance logger="core.modules.input.properties" name="properties"
> > + class="org.apache.lenya.cms.cocoon.components.modules.input.PropertiesModule"/>
> > + </xconf>
> >
> > Propchange: lenya/trunk/src/modules-core/properties/config/cocoon-xconf/properties-input-module.xconf
> > ------------------------------------------------------------------------------
> > svn:eol-style = native
> >
> > Copied: lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/PropertiesModule.java (from r428442, forrest/trunk/main/java/org/apache/forrest/conf/ForrestConfModule.java)
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/PropertiesModule.java?p2=lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/PropertiesModule.java&p1=forrest/trunk/main/java/org/apache/forrest/conf/ForrestConfModule.java&r1=428442&r2=428447&rev=428447&view=diff
> > ==============================================================================
> > --- forrest/trunk/main/java/org/apache/forrest/conf/ForrestConfModule.java (original)
> > +++ lenya/trunk/src/modules-core/properties/java/src/org/apache/lenya/cms/cocoon/components/modules/input/PropertiesModule.java Thu Aug 3 09:44:38 2006
> > @@ -14,15 +14,15 @@
> > * See the License for the specific language governing permissions and
> > * limitations under the License.
> > */
> > -package org.apache.forrest.conf;
> > +package org.apache.lenya.cms.cocoon.components.modules.input;
> >
> > import java.io.FileNotFoundException;
> > import java.io.IOException;
> > import java.io.InputStream;
> > import java.net.MalformedURLException;
> > import java.util.Enumeration;
> > +import java.util.Iterator;
> > import java.util.Map;
> > -import java.util.StringTokenizer;
> >
> > import javax.xml.parsers.DocumentBuilder;
> > import javax.xml.parsers.DocumentBuilderFactory;
> > @@ -41,185 +41,134 @@
> > import org.apache.excalibur.source.Source;
> > import org.apache.excalibur.source.SourceNotFoundException;
> > import org.apache.excalibur.source.SourceResolver;
> > +import org.apache.forrest.conf.AntProperties;
> > +import org.apache.lenya.cms.module.ModuleManager;
> > import org.w3c.dom.Document;
> > import org.w3c.dom.Element;
> > import org.w3c.dom.NodeList;
> > import org.xml.sax.SAXException;
> >
> > /**
> > - * Input module for accessing the base properties used in Forrest. The main
> > - * values are the locations of the <b>source </b> directories and of the
> > - * <b>forrest </b> directories. The values are gotten using the ForrestConfUtils
> > - * class.
> > + * Input module for accessing the base properties used in Lenya. The main values
> > + * are the locations of the <b>source </b> directories and of the <b>Lenya </b>
> > + * directories.
> > */
> > -public class ForrestConfModule extends DefaultsModule implements InputModule, Initializable,
> > - ThreadSafe, Serviceable {
> > +public class PropertiesModule extends DefaultsModule implements InputModule,
> > + Initializable, ThreadSafe, Serviceable {
> > private AntProperties filteringProperties;
> >
> > - private String forrestHome, projectHome, contextHome;
> > -
> > private SourceResolver m_resolver;
> >
> > - private final static String defaultHome = "context:/";
> > + private ModuleManager moduleManager;
> > +
> > + private final static String lenyaHome = "context:/";
> > +
> > + private final static String DEFAULT_HOME_PROP = "lenya.home";
> > +
> > + private final static String PROPERTY_NAME = "lenya.properties.xml";
> >
> > - public Object getAttribute(String name, Configuration modeConf, Map objectModel)
> > - throws ConfigurationException {
> > - String original;
> > + private final static String PROPERTY_NAME_LOCAL = "local." + PROPERTY_NAME;
> > +
> > + public Object getAttribute(String name, Configuration modeConf,
> > + Map objectModel) throws ConfigurationException {
> > String attributeValue;
> >
> > - try {
> > - original = super.getAttributeValues(name, modeConf, objectModel)[0].toString();
> > - attributeValue = this.getAttributeValues(name, modeConf, objectModel)[0].toString();
> > - } catch (NullPointerException npe) {
> > - original = "(not defined in forrest.xconf)";
> > - attributeValue = filteringProperties.getProperty(name);
> > - if (attributeValue == null) {
> > - String error = "Unable to get attribute value for "
> > + attributeValue = filteringProperties.getProperty(name);
> > + if (attributeValue == null) {
> > + String error = "Unable to get attribute value for "
> > + name
> > + "\n"
> > + "Please make sure you defined "
> > + name
> > - + " in forrest.properties.xml either in $PROJECT_HOME "
> > - + "or in the default.forrest.properties.xml of the plugin "
> > - + "that is requesting this property."
> > + + " in lenya.properties.xml either in $LENYA_HOME or in the module that is requesting this property"
> > + "\n"
> > - + "If you see this message, most of the time you spotted a plugin bug "
> > + + "If you see this message, most of the time you spotted a module bug "
> > + "(forget to define the default property). Please report it to our mailing list.";
> > throw new ConfigurationException(
> > error);
> > - }
> > }
> >
> > if (debugging()) {
> > debug(" - Requested:" + name);
> > - debug(" - Unfiltered:" + original);
> > debug(" - Given:" + attributeValue);
> > }
> >
> > return attributeValue;
> > }
> >
> > - public Object[] getAttributeValues(String name, Configuration modeConf, Map objectModel)
> > - throws ConfigurationException {
> > - Object[] attributeValues = super.getAttributeValues(name, modeConf, objectModel);
> > + public Object[] getAttributeValues(String name, Configuration modeConf,
> > + Map objectModel) throws ConfigurationException {
> > + Object[] attributeValues = super.getAttributeValues(name, modeConf,
> > + objectModel);
> > for (int i = 0; i < attributeValues.length; i++) {
> > - attributeValues[i] = filteringProperties.filter(attributeValues[i].toString());
> > + attributeValues[i] = filteringProperties.filter(attributeValues[i]
> > + .toString());
> > }
> >
> > return attributeValues;
> > }
> >
> > - private final String getSystemProperty(String propertyName) {
> > -
> > - // if the property is not set, default to the webapp context
> > - String propertyValue = System.getProperty(propertyName, defaultHome);
> > -
> > - if (debugging())
> > - debug("system property " + propertyName + "=" + propertyValue);
> > -
> > - return propertyValue;
> > - }
> > -
> > public void initialize() throws Exception {
> >
> > - // add all homes important to forrest to the properties
> > + // add all homes important to Lenya to the properties
> > setHomes();
> >
> > // NOTE: the first values set get precedence, as in AntProperties
> > + String lenyaPropertiesStringURI = "";
> >
> > - String forrestPropertiesStringURI;
> > -
> > - // get the values from local.forrest.properties.xml
> > + // get the values from local.lenya.properties.xml
> > try {
> > - forrestPropertiesStringURI = projectHome + SystemUtils.FILE_SEPARATOR
> > - + "local.forrest.properties.xml";
> > + lenyaPropertiesStringURI = lenyaHome + SystemUtils.FILE_SEPARATOR
> > + + PROPERTY_NAME_LOCAL;
> >
> > filteringProperties = loadXMLPropertiesFromURI(filteringProperties,
> > - forrestPropertiesStringURI);
> > + lenyaPropertiesStringURI);
> > } catch (FileNotFoundException e) {
> > if (debugging())
> > - debug("Unable to find local.forrest.properties.xml, ignoring.");
> > + debug("Unable to find local.lenya.properties.xml, ignoring.");
> > }
> >
> > - // get the values from forrest.properties.xml
> > - try {
> > - forrestPropertiesStringURI = projectHome + SystemUtils.FILE_SEPARATOR
> > - + "forrest.properties.xml";
> > + Map module2src = moduleManager.getModuleList();
> > + Iterator iterator = module2src.keySet().iterator();
> > + while (iterator.hasNext()) {
> > + Object key = iterator.next();
> > + Object value = module2src.get(key);
> >
> > - filteringProperties = loadXMLPropertiesFromURI(filteringProperties,
> > - forrestPropertiesStringURI);
> > - } catch (FileNotFoundException e) {
> > - if (debugging())
> > - debug("Unable to find forrest.properties.xml, ignoring.");
> > + if (value != null) {
> > + lenyaPropertiesStringURI = value
> > + + SystemUtils.FILE_SEPARATOR + PROPERTY_NAME;
> > + filteringProperties = loadXMLPropertiesFromURI(
> > + filteringProperties, lenyaPropertiesStringURI);
> > + }
> > }
> > -
> > - // get the values from default.forrest.properties.xml
> > + // get the values from lenya.properties.xml this are the default lenya
> > + // values
> > try {
> > - forrestPropertiesStringURI = contextHome + SystemUtils.FILE_SEPARATOR
> > - + "default.forrest.properties.xml";
> > + lenyaPropertiesStringURI = lenyaHome + SystemUtils.FILE_SEPARATOR
> > + + PROPERTY_NAME;
> >
> > filteringProperties = loadXMLPropertiesFromURI(filteringProperties,
> > - forrestPropertiesStringURI);
> > + lenyaPropertiesStringURI);
> > } catch (FileNotFoundException e) {
> > if (debugging())
> > - debug("Unable to find default.forrest.properties.xml, ignoring.");
> > - }
> > -
> > - // get forrest.properties and load the values
> > - forrestPropertiesStringURI = projectHome + SystemUtils.FILE_SEPARATOR
> > - + "forrest.properties";
> > -
> > - filteringProperties = loadAntPropertiesFromURI(filteringProperties,
> > - forrestPropertiesStringURI);
> > -
> > - // get default-forrest.properties and load the values
> > - String defaultForrestPropertiesStringURI = contextHome + SystemUtils.FILE_SEPARATOR
> > - + "default-forrest.properties";
> > -
> > - filteringProperties = loadAntPropertiesFromURI(filteringProperties,
> > - defaultForrestPropertiesStringURI);
> > -
> > - // Load plugin default properties
> > - String strPluginList = filteringProperties.getProperty("project.required.plugins");
> > - if (strPluginList != null) {
> > - StringTokenizer st = new StringTokenizer(strPluginList, ",");
> > - while (st.hasMoreTokens()) {
> > - forrestPropertiesStringURI = ForrestConfUtils.getPluginDir(st.nextToken().trim());
> > - try {
> > - forrestPropertiesStringURI = forrestPropertiesStringURI
> > - + SystemUtils.FILE_SEPARATOR + "default.plugin.properties.xml";
> > - filteringProperties = loadXMLPropertiesFromURI(filteringProperties,
> > - forrestPropertiesStringURI);
> > - } catch (FileNotFoundException e) {
> > - if (debugging())
> > - debug("Unable to load " + forrestPropertiesStringURI + ", ignoring. "
> > - + e.getMessage());
> > - }
> > - }
> > + debug("Unable to find lenya.properties.xml, ignoring.");
> > }
> >
> > loadSystemProperties(filteringProperties);
> > - ForrestConfUtils.aliasSkinProperties(filteringProperties);
> > if (debugging())
> > - debug("Loaded project forrest.properties:" + filteringProperties);
> > + debug("Loaded project lenya.properties.xml:" + filteringProperties);
> > }
> >
> > /**
> > - * Sets all forrest related home locations such as - forrestHome -
> > - * projectHome - contextHome
> > + * Sets all Lenya related home locations such as - LenyaHome - projectHome -
> > + * contextHome
> > *
> > * @throws Exception
> > */
> > private void setHomes() throws Exception {
> > - forrestHome = ForrestConfUtils.getForrestHome();
> > - projectHome = ForrestConfUtils.getProjectHome();
> > - contextHome = ForrestConfUtils.getContextHome();
> >
> > filteringProperties = new AntProperties();
> > -
> > - filteringProperties.setProperty("forrest.home", forrestHome);
> > - filteringProperties.setProperty("project.home", projectHome);
> > - filteringProperties.setProperty("context.home", contextHome);
> > + filteringProperties.setProperty(DEFAULT_HOME_PROP, lenyaHome);
> > }
> >
> > /**
> > @@ -248,73 +197,39 @@
> > * @throws SAXException
> > * @throws SourceNotFoundException
> > */
> > - private AntProperties loadXMLPropertiesFromURI(AntProperties precedingProperties,
> > - String propertiesStringURI) throws MalformedURLException, IOException,
> > + private AntProperties loadXMLPropertiesFromURI(
> > + AntProperties precedingProperties, String propertiesStringURI)
> > + throws MalformedURLException, IOException,
> > ParserConfigurationException, SAXException {
> >
> > Source source = null;
> > InputStream in = null;
> > try {
> > - if (debugging())
> > - debug("Searching for forrest.properties.xml in" + source.getURI());
> >
> > source = m_resolver.resolveURI(propertiesStringURI);
> >
> > - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
> > - DocumentBuilder builder = factory.newDocumentBuilder();
> > - Document document = builder.parse(source.getURI());
> > -
> > - NodeList nl = document.getElementsByTagName("property");
> > - if (nl != null && nl.getLength() > 0) {
> > - for (int i = 0; i < nl.getLength(); i++) {
> > - Element el = (Element) nl.item(i);
> > - filteringProperties.setProperty(el.getAttribute("name"), el
> > - .getAttribute("value"));
> > - }
> > - }
> > -
> > - if (debugging())
> > - debug("Loaded:" + propertiesStringURI + filteringProperties.toString());
> > + if (source.exists()) {
> >
> > - } finally {
> > - if (source != null) {
> > - m_resolver.release(source);
> > - }
> > - if (in != null) {
> > - try {
> > - in.close();
> > - } catch (IOException e) {
> > + DocumentBuilderFactory factory = DocumentBuilderFactory
> > + .newInstance();
> > + DocumentBuilder builder = factory.newDocumentBuilder();
> > + Document document = builder.parse(source.getURI());
> > +
> > + NodeList nl = document.getElementsByTagName("property");
> > + if (nl != null && nl.getLength() > 0) {
> > + for (int i = 0; i < nl.getLength(); i++) {
> > + Element el = (Element) nl.item(i);
> > + filteringProperties.setProperty(
> > + el.getAttribute("name"), el
> > + .getAttribute("value"));
> > + }
> > }
> > - }
> > - }
> >
> > - return filteringProperties;
> > - }
> > + if (debugging())
> > + debug("Loaded:" + propertiesStringURI
> > + + filteringProperties.toString());
> >
> > - /**
> > - * @param antPropertiesStringURI
> > - * @throws MalformedURLException
> > - * @throws IOException
> > - * @throws SourceNotFoundException
> > - */
> > - private AntProperties loadAntPropertiesFromURI(AntProperties precedingProperties,
> > - String antPropertiesStringURI) throws MalformedURLException, IOException,
> > - SourceNotFoundException {
> > -
> > - Source source = null;
> > - InputStream in = null;
> > - try {
> > -
> > - source = m_resolver.resolveURI(antPropertiesStringURI);
> > -
> > - if (debugging())
> > - debug("Searching for forrest.properties in" + source.getURI());
> > - in = source.getInputStream();
> > - filteringProperties = new AntProperties(precedingProperties);
> > - filteringProperties.load(in);
> > -
> > - if (debugging())
> > - debug("Loaded:" + antPropertiesStringURI + filteringProperties.toString());
> > + }
> >
> > } finally {
> > if (source != null) {
> > @@ -333,6 +248,7 @@
> >
> > public void service(ServiceManager manager) throws ServiceException {
> > m_resolver = (SourceResolver) manager.lookup(SourceResolver.ROLE);
> > + moduleManager = (ModuleManager) manager.lookup(ModuleManager.ROLE);
> > }
> >
> > /**
> >
> > Added: lenya/trunk/src/modules-core/properties/module.xml
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/properties/module.xml?rev=428447&view=auto
> > ==============================================================================
> > --- lenya/trunk/src/modules-core/properties/module.xml (added)
> > +++ lenya/trunk/src/modules-core/properties/module.xml Thu Aug 3 09:44:38 2006
> > @@ -0,0 +1,28 @@
> > +<?xml version="1.0" encoding="UTF-8"?>
> > +<!--
> > + Copyright 1999-2005 The Apache Software Foundation
> > +
> > + Licensed under the Apache License, Version 2.0 (the "License");
> > + you may not use this file except in compliance with the License.
> > + You may obtain a copy of the License at
> > +
> > + http://www.apache.org/licenses/LICENSE-2.0
> > +
> > + Unless required by applicable law or agreed to in writing, software
> > + distributed under the License is distributed on an "AS IS" BASIS,
> > + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + See the License for the specific language governing permissions and
> > + limitations under the License.
> > +-->
> > +
> > +<!-- $Id: publication.xml 374687 2006-02-03 15:24:55Z michi $ -->
> > +
> > +<module xmlns="http://apache.org/lenya/module/1.0">
> > + <id>org.apache.lenya.modules.properties</id>
> > + <published>false</published>
> > + <package>org.apache.lenya.modules</package>
> > + <version>0.1-dev</version>
> > + <name>Property system implementation</name>
> > + <lenya-version>@lenya.version@</lenya-version>
> > + <description>Property system implementation</description>
> > +</module>
> >
> > Propchange: lenya/trunk/src/modules-core/properties/module.xml
> > ------------------------------------------------------------------------------
> > svn:eol-style = native
> >
> > Modified: lenya/trunk/src/pubs/default/sitemap.xmap
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/pubs/default/sitemap.xmap?rev=428447&r1=428446&r2=428447&view=diff
> > ==============================================================================
> > --- lenya/trunk/src/pubs/default/sitemap.xmap (original)
> > +++ lenya/trunk/src/pubs/default/sitemap.xmap Thu Aug 3 09:44:38 2006
> > @@ -152,6 +152,8 @@
> > <map:parameter name="title" value="{dublincore:title}"/>
> > <map:parameter name="lastPublishedUser" value="{workflow:lastUser.publish}"/>
> > <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
> > + <!--Following is a show off to explain lenya.properties.xml -->
> > + <map:parameter name="author" value="{properties:pubs.default.author}"/>
> > </map:transform>
> > </map:when>
> > <map:otherwise>
> > @@ -167,6 +169,8 @@
> > <map:parameter name="title" value="{dublincore:title}"/>
> > <map:parameter name="lastPublishedUser" value="{workflow:lastUser.publish}"/>
> > <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
> > + <!--Following is a show off to explain lenya.properties.xml -->
> > + <map:parameter name="author" value="{properties:pubs.default.author}"/>
> > </map:transform>
> > </map:otherwise>
> > </map:select>
> >
> > Modified: lenya/trunk/src/pubs/default/xslt/page2xhtml.xsl
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/pubs/default/xslt/page2xhtml.xsl?rev=428447&r1=428446&r2=428447&view=diff
> > ==============================================================================
> > --- lenya/trunk/src/pubs/default/xslt/page2xhtml.xsl (original)
> > +++ lenya/trunk/src/pubs/default/xslt/page2xhtml.xsl Thu Aug 3 09:44:38 2006
> > @@ -45,6 +45,9 @@
> >
> > <xsl:param name="lastPublishedUser"/>
> > <xsl:param name="lastPublishedDate"/>
> > +
> > +<!--Following is a show off to explain lenya.properties.xml -->
> > +<xsl:param name="author"/>
> >
> > <xsl:template match="cmsbody">
> > <html>
> > @@ -75,10 +78,10 @@
> > <td id="publication-title">
> > <xsl:choose>
> > <xsl:when test="$language = 'de'">
> > - Willkommen zur Default Publikation!
> > + Willkommen zur Default Publikation von <xsl:value-of select="$author"/>!
> > </xsl:when>
> > <xsl:otherwise>
> > - Welcome to the Default Publication!
> > + Welcome to the Default Publication from <xsl:value-of select="$author"/>!
> > </xsl:otherwise>
> > </xsl:choose>
> > </td>
> >
> > Propchange: lenya/trunk/src/webapp/
> > ------------------------------------------------------------------------------
> > --- svn:ignore (added)
> > +++ svn:ignore Thu Aug 3 09:44:38 2006
> > @@ -0,0 +1 @@
> > +local.lenya.properties.xml
> >
> > Added: lenya/trunk/src/webapp/lenya.properties.xml
> > URL: http://svn.apache.org/viewvc/lenya/trunk/src/webapp/lenya.properties.xml?rev=428447&view=auto
> > ==============================================================================
> > --- lenya/trunk/src/webapp/lenya.properties.xml (added)
> > +++ lenya/trunk/src/webapp/lenya.properties.xml Thu Aug 3 09:44:38 2006
> > @@ -0,0 +1,20 @@
> > +<?xml version="1.0" encoding="UTF-8"?>
> > +<!--
> > + Licensed to the Apache Software Foundation (ASF) under one or more
> > + contributor license agreements. See the NOTICE file distributed with
> > + this work for additional information regarding copyright ownership.
> > + The ASF licenses this file to You under the Apache License, Version 2.0
> > + (the "License"); you may not use this file except in compliance with
> > + the License. You may obtain a copy of the License at
> > +
> > + http://www.apache.org/licenses/LICENSE-2.0
> > +
> > + Unless required by applicable law or agreed to in writing, software
> > + distributed under the License is distributed on an "AS IS" BASIS,
> > + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + See the License for the specific language governing permissions and
> > + limitations under the License.
> > +-->
> > +<properties>
> > + <property name="pubs.default.author" value="the lenya community"/>
> > +</properties>
> >
> > Propchange: lenya/trunk/src/webapp/lenya.properties.xml
> > ------------------------------------------------------------------------------
> > svn:eol-style = native
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
> > For additional commands, e-mail: commits-help@lenya.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org
>
--
thorsten
"Together we stand, divided we fall!"
Hey you (Pink Floyd)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org