diff --git a/source/java/org/alfresco/web/ui/repo/tag/PageTag.java b/source/java/org/alfresco/web/ui/repo/tag/PageTag.java
index 3f1b47c078..aa2697e234 100644
--- a/source/java/org/alfresco/web/ui/repo/tag/PageTag.java
+++ b/source/java/org/alfresco/web/ui/repo/tag/PageTag.java
@@ -1,392 +1,380 @@
-/*
- * Copyright (C) 2005-2014 Alfresco Software Limited.
- *
- * This file is part of Alfresco
- *
- * Alfresco is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Alfresco is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with Alfresco. If not, see .
- */
-
-/*
- * There is an Enterprise overlay for this file
- */
-
-package org.alfresco.web.ui.repo.tag;
-
-import java.io.IOException;
-import java.io.Writer;
-
-import javax.faces.context.FacesContext;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.jsp.JspException;
-import javax.servlet.jsp.tagext.TagSupport;
-
-import org.alfresco.web.app.Application;
-import org.alfresco.web.app.servlet.FacesHelper;
-import org.alfresco.web.bean.coci.CCProperties;
-import org.alfresco.web.config.ClientConfigElement;
-import org.alfresco.web.ui.common.Utils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-/**
- * A non-JSF tag library that adds the HTML begin and end tags if running in servlet mode
- *
- * @author gavinc
- */
-public class PageTag extends TagSupport
-{
- private static final long serialVersionUID = 8142765393181557228L;
-
- private final static String SCRIPTS_START = "\n";
- private final static String STYLES_START = " \n";
-
- private final static String[] SCRIPTS =
- {
- // menu javascript
- "/scripts/menu.js",
- // webdav javascript
- "/scripts/webdav.js",
- // base yahoo file
- "/scripts/ajax/yahoo/yahoo/yahoo-min.js",
- // io handling (AJAX)
- "/scripts/ajax/yahoo/connection/connection-min.js",
- // event handling
- "/scripts/ajax/yahoo/event/event-min.js",
- // mootools
- "/scripts/ajax/mootools.v1.11.js",
- // common Alfresco util methods
- "/scripts/ajax/common.js",
- // pop-up panel helper objects
- "/scripts/ajax/summary-info.js",
- // ajax pickers
- "/scripts/ajax/picker.js",
- "/scripts/ajax/tagger.js",
- // validation handling
- "/scripts/validation.js"
- };
-
- private final static String[] CSS =
- {
- "/css/main.css",
- "/css/picker.css"
- };
-
-/**
- * Please ensure you understand the terms of the license before changing the contents of this file.
- */
-
- private final static String ALF_LOGO_HTTP = "http://www.alfresco.com/assets/images/logos/community-4.2.png";
- private final static String ALF_LOGO_HTTPS = "https://www.alfresco.com/assets/images/logos/community-4.2.png";
- private final static String ALF_URL = "http://www.alfresco.com";
- private final static String ALF_TEXT = "Alfresco Community";
- private final static String ALF_COPY = "Supplied free of charge with " +
- ", " +
- ", " +
- ", " +
- " and " +
- " by " +
- " or its " +
- ". " +
- ". " +
- "Alfresco Software Inc. © 2005-2014 All rights reserved.";
-
- private final static Log logger = LogFactory.getLog(PageTag.class);
- private static String alfresco = null;
- private static String loginPage = null;
-
- private long startTime = 0;
- private String title;
- private String titleId;
- private String doctypeRootElement;
- private String doctypePublic;
- private String doctypeSystem;
-
- /**
- * @return The title for the page
- */
- public String getTitle()
- {
- return title;
- }
-
- /**
- * @param title Sets the page title
- */
- public void setTitle(String title)
- {
- this.title = title;
- }
-
- /**
- * @return The title message Id for the page
- */
- public String getTitleId()
- {
- return titleId;
- }
-
- /**
- * @param titleId Sets the page title message Id
- */
- public void setTitleId(String titleId)
- {
- this.titleId = titleId;
- }
-
- public String getDoctypeRootElement()
- {
- return this.doctypeRootElement;
- }
-
- public void setDoctypeRootElement(final String doctypeRootElement)
- {
- this.doctypeRootElement = doctypeRootElement;
- }
-
- public String getDoctypePublic()
- {
- return this.doctypePublic;
- }
-
- public void setDoctypePublic(final String doctypePublic)
- {
- this.doctypePublic = doctypePublic;
- }
-
- public String getDoctypeSystem()
- {
- return this.doctypeSystem;
- }
-
- public void setDoctypeSystem(final String doctypeSystem)
- {
- this.doctypeSystem = doctypeSystem;
- }
-
- public void release()
- {
- super.release();
- this.title = null;
- this.titleId = null;
- this.doctypeRootElement = null;
- this.doctypeSystem = null;
- this.doctypePublic = null;
- }
-
- /**
- * @see javax.servlet.jsp.tagext.TagSupport#doStartTag()
- */
- public int doStartTag() throws JspException
- {
- if (logger.isDebugEnabled())
- startTime = System.currentTimeMillis();
-
- try
- {
- String reqPath = ((HttpServletRequest)pageContext.getRequest()).getContextPath();
- Writer out = pageContext.getOut();
-
- if (!Application.inPortalServer())
- {
- if (this.getDoctypeRootElement() != null &&
- this.getDoctypePublic() != null)
- {
- out.write("\n");
- }
- else
- {
- out.write("\n");
- }
- out.write("
");
- out.write(" \n");
- out.write("");
- if (this.titleId != null && this.titleId.length() != 0)
- {
- out.write(Utils.encode(Application.getMessage(pageContext.getSession(), this.titleId)));
- }
- else if (this.title != null && this.title.length() != 0)
- {
- out.write(Utils.encode(this.title));
- }
- else
- {
- out.write("Alfresco Web Client");
- }
- out.write(" \n");
- out.write(" \n");
- out.write(" \n");
- }
-
- // CSS style includes
- for (final String css : PageTag.CSS)
- {
- out.write(STYLES_START);
- out.write(reqPath);
- out.write(css);
- out.write(STYLES_MAIN);
- }
-
- // JavaScript includes
- for (final String s : PageTag.SCRIPTS)
- {
- out.write(SCRIPTS_START);
- out.write(reqPath);
- out.write(s);
- out.write(SCRIPTS_END);
- }
-
- out.write("\n"); // end - generate naked javascript code
-
- if (!Application.inPortalServer())
- {
- out.write("");
- out.write("\n");
- }
- }
- catch (IOException ioe)
- {
- throw new JspException(ioe.toString());
- }
-
- return EVAL_BODY_INCLUDE;
- }
-
- /**
- * @see javax.servlet.jsp.tagext.TagSupport#doEndTag()
- */
- public int doEndTag() throws JspException
- {
- try
- {
- HttpServletRequest req = (HttpServletRequest)pageContext.getRequest();
- if (req.getRequestURI().endsWith(getLoginPage()) == false)
- {
- pageContext.getOut().write(getAlfrescoButton());
- }
-
- if (!Application.inPortalServer())
- {
- pageContext.getOut().write("\n");
- }
- }
- catch (IOException ioe)
- {
- throw new JspException(ioe.toString());
- }
-
- if (logger.isDebugEnabled())
- {
- long endTime = System.currentTimeMillis();
- logger.debug("Time to generate page: " + (endTime - startTime) + "ms");
- }
-
- return super.doEndTag();
- }
-
- private String getLoginPage()
- {
- if (PageTag.loginPage == null)
- {
- PageTag.loginPage = Application.getLoginPage(pageContext.getServletContext());
- }
-
- return PageTag.loginPage;
- }
-
-/**
- * Please ensure you understand the terms of the license before changing the contents of this file.
- */
-
- private String getAlfrescoButton()
- {
- if (PageTag.alfresco == null)
- {
- final HttpServletRequest req = (HttpServletRequest)pageContext.getRequest();
- PageTag.alfresco = (" ");
- }
- return PageTag.alfresco;
- }
-
- /**
- * This method generate code for setting window.onload reference as
- * we need to open WebDav or CIFS URL in a new window.
- *
- * Executes via javascript code(function onloadFunc()) in "onload.js" include file.
- *
- * @return Returns window.onload javascript code
- */
- private static void generateWindowOnloadCode(Writer out)
- throws IOException
- {
- FacesContext fc = FacesContext.getCurrentInstance();
- if (fc != null)
- {
- CCProperties ccProps = (CCProperties)FacesHelper.getManagedBean(fc, "CCProperties");
- if (ccProps.getWebdavUrl() != null || ccProps.getCifsPath() != null)
- {
- out.write("window.onload=function(){onloadFunc(\"");
- if (ccProps.getWebdavUrl() != null)
- {
- out.write(ccProps.getWebdavUrl());
- }
- out.write("\",\"");
- if (ccProps.getCifsPath() != null)
- {
- String val = ccProps.getCifsPath();
- val = Utils.replace(val, "\\", "\\\\"); // encode escape character
- out.write(val);
- }
- out.write("\");};");
-
- // reset session bean state
- ccProps.setCifsPath(null);
- ccProps.setWebdavUrl(null);
- }
- }
- }
-}
+/*
+ * Copyright (C) 2005-2014 Alfresco Software Limited.
+ *
+ * This file is part of Alfresco
+ *
+ * Alfresco is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Alfresco is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Alfresco. If not, see .
+ */
+
+/* Enterprise overlay */
+
+package org.alfresco.web.ui.repo.tag;
+
+import java.io.IOException;
+import java.io.Writer;
+
+import javax.faces.context.FacesContext;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.jsp.JspException;
+import javax.servlet.jsp.tagext.TagSupport;
+
+import org.alfresco.web.app.Application;
+import org.alfresco.web.app.servlet.FacesHelper;
+import org.alfresco.web.bean.coci.CCProperties;
+import org.alfresco.web.config.ClientConfigElement;
+import org.alfresco.web.ui.common.Utils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * A non-JSF tag library that adds the HTML begin and end tags if running in servlet mode
+ *
+ * @author gavinc
+ */
+public class PageTag extends TagSupport
+{
+ private static final long serialVersionUID = 8142765393181557228L;
+
+ private final static String SCRIPTS_START = "\n";
+ private final static String STYLES_START = " \n";
+
+ private final static String[] SCRIPTS =
+ {
+ // menu javascript
+ "/scripts/menu.js",
+ // webdav javascript
+ "/scripts/webdav.js",
+ // base yahoo file
+ "/scripts/ajax/yahoo/yahoo/yahoo-min.js",
+ // io handling (AJAX)
+ "/scripts/ajax/yahoo/connection/connection-min.js",
+ // event handling
+ "/scripts/ajax/yahoo/event/event-min.js",
+ // mootools
+ "/scripts/ajax/mootools.v1.11.js",
+ // common Alfresco util methods
+ "/scripts/ajax/common.js",
+ // pop-up panel helper objects
+ "/scripts/ajax/summary-info.js",
+ // ajax pickers
+ "/scripts/ajax/picker.js",
+ "/scripts/ajax/tagger.js",
+ // validation handling
+ "/scripts/validation.js"
+ };
+
+ private final static String[] CSS =
+ {
+ "/css/main.css",
+ "/css/picker.css"
+ };
+
+/**
+ * Please ensure you understand the terms of the license before changing the contents of this file.
+ */
+
+ private final static String ALF_URL = "http://www.alfresco.com";
+ private final static String ALF_LOGO = "/images/logo/alfresco_enterprise.gif";
+ private final static String ALF_TEXT = "Alfresco Enterprise";
+ private final static String ALF_COPY = "Certified and supported. Alfresco Software Inc. © 2005-2014 All rights reserved.";
+
+ private final static Log logger = LogFactory.getLog(PageTag.class);
+ private static String alfresco = null;
+ private static String loginPage = null;
+
+ private long startTime = 0;
+ private String title;
+ private String titleId;
+ private String doctypeRootElement;
+ private String doctypePublic;
+ private String doctypeSystem;
+
+ /**
+ * @return The title for the page
+ */
+ public String getTitle()
+ {
+ return title;
+ }
+
+ /**
+ * @param title Sets the page title
+ */
+ public void setTitle(String title)
+ {
+ this.title = title;
+ }
+
+ /**
+ * @return The title message Id for the page
+ */
+ public String getTitleId()
+ {
+ return titleId;
+ }
+
+ /**
+ * @param titleId Sets the page title message Id
+ */
+ public void setTitleId(String titleId)
+ {
+ this.titleId = titleId;
+ }
+
+ public String getDoctypeRootElement()
+ {
+ return this.doctypeRootElement;
+ }
+
+ public void setDoctypeRootElement(final String doctypeRootElement)
+ {
+ this.doctypeRootElement = doctypeRootElement;
+ }
+
+ public String getDoctypePublic()
+ {
+ return this.doctypePublic;
+ }
+
+ public void setDoctypePublic(final String doctypePublic)
+ {
+ this.doctypePublic = doctypePublic;
+ }
+
+ public String getDoctypeSystem()
+ {
+ return this.doctypeSystem;
+ }
+
+ public void setDoctypeSystem(final String doctypeSystem)
+ {
+ this.doctypeSystem = doctypeSystem;
+ }
+
+ public void release()
+ {
+ super.release();
+ this.title = null;
+ this.titleId = null;
+ this.doctypeRootElement = null;
+ this.doctypeSystem = null;
+ this.doctypePublic = null;
+ }
+
+ /**
+ * @see javax.servlet.jsp.tagext.TagSupport#doStartTag()
+ */
+ public int doStartTag() throws JspException
+ {
+ if (logger.isDebugEnabled())
+ startTime = System.currentTimeMillis();
+
+ try
+ {
+ String reqPath = ((HttpServletRequest)pageContext.getRequest()).getContextPath();
+ Writer out = pageContext.getOut();
+
+ if (!Application.inPortalServer())
+ {
+ if (this.getDoctypeRootElement() != null &&
+ this.getDoctypePublic() != null)
+ {
+ out.write("\n");
+ }
+ else
+ {
+ out.write("\n");
+ }
+ out.write("");
+ out.write(" \n");
+ out.write("");
+ if (this.titleId != null && this.titleId.length() != 0)
+ {
+ out.write(Utils.encode(Application.getMessage(pageContext.getSession(), this.titleId)));
+ }
+ else if (this.title != null && this.title.length() != 0)
+ {
+ out.write(Utils.encode(this.title));
+ }
+ else
+ {
+ out.write("Alfresco Web Client");
+ }
+ out.write(" \n");
+ out.write(" \n");
+ out.write(" \n");
+ }
+
+ // CSS style includes
+ for (final String css : PageTag.CSS)
+ {
+ out.write(STYLES_START);
+ out.write(reqPath);
+ out.write(css);
+ out.write(STYLES_MAIN);
+ }
+
+ // JavaScript includes
+ for (final String s : PageTag.SCRIPTS)
+ {
+ out.write(SCRIPTS_START);
+ out.write(reqPath);
+ out.write(s);
+ out.write(SCRIPTS_END);
+ }
+
+ out.write("\n"); // end - generate naked javascript code
+
+ if (!Application.inPortalServer())
+ {
+ out.write("");
+ out.write("\n");
+ }
+ }
+ catch (IOException ioe)
+ {
+ throw new JspException(ioe.toString());
+ }
+
+ return EVAL_BODY_INCLUDE;
+ }
+
+ /**
+ * @see javax.servlet.jsp.tagext.TagSupport#doEndTag()
+ */
+ public int doEndTag() throws JspException
+ {
+ try
+ {
+ HttpServletRequest req = (HttpServletRequest)pageContext.getRequest();
+ if (req.getRequestURI().endsWith(getLoginPage()) == false)
+ {
+ pageContext.getOut().write(getAlfrescoButton());
+ }
+
+ if (!Application.inPortalServer())
+ {
+ pageContext.getOut().write("\n");
+ }
+ }
+ catch (IOException ioe)
+ {
+ throw new JspException(ioe.toString());
+ }
+
+ if (logger.isDebugEnabled())
+ {
+ long endTime = System.currentTimeMillis();
+ logger.debug("Time to generate page: " + (endTime - startTime) + "ms");
+ }
+
+ return super.doEndTag();
+ }
+
+ private String getLoginPage()
+ {
+ if (PageTag.loginPage == null)
+ {
+ PageTag.loginPage = Application.getLoginPage(pageContext.getServletContext());
+ }
+
+ return PageTag.loginPage;
+ }
+
+/**
+ * Please ensure you understand the terms of the license before changing the contents of this file.
+ */
+
+ private String getAlfrescoButton()
+ {
+ if (PageTag.alfresco == null)
+ {
+ final String reqPath = ((HttpServletRequest)pageContext.getRequest()).getContextPath();
+ PageTag.alfresco = (" ");
+ }
+ return PageTag.alfresco;
+ }
+
+ /**
+ * This method generate code for setting window.onload reference as
+ * we need to open WebDav or CIFS URL in a new window.
+ *
+ * Executes via javascript code(function onloadFunc()) in "onload.js" include file.
+ *
+ * @return Returns window.onload javascript code
+ */
+ private static void generateWindowOnloadCode(Writer out)
+ throws IOException
+ {
+ FacesContext fc = FacesContext.getCurrentInstance();
+ if (fc != null)
+ {
+ CCProperties ccProps = (CCProperties)FacesHelper.getManagedBean(fc, "CCProperties");
+ if (ccProps.getWebdavUrl() != null || ccProps.getCifsPath() != null)
+ {
+ out.write("window.onload=function(){onloadFunc(\"");
+ if (ccProps.getWebdavUrl() != null)
+ {
+ out.write(ccProps.getWebdavUrl());
+ }
+ out.write("\",\"");
+ if (ccProps.getCifsPath() != null)
+ {
+ String val = ccProps.getCifsPath();
+ val = Utils.replace(val, "\\", "\\\\"); // encode escape character
+ out.write(val);
+ }
+ out.write("\");};");
+
+ // reset session bean state
+ ccProps.setCifsPath(null);
+ ccProps.setWebdavUrl(null);
+ }
+ }
+ }
+}
diff --git a/source/web/WEB-INF/web.xml b/source/web/WEB-INF/web.xml
index 04209ba9b9..b46f9368ca 100644
--- a/source/web/WEB-INF/web.xml
+++ b/source/web/WEB-INF/web.xml
@@ -100,7 +100,7 @@
false
-
+ productionMode true Vaadin production mode
CMIS security context cleaning filter
@@ -380,7 +380,7 @@
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
-
+ org.springframework.web.context.request.RequestContextListener
@@ -631,7 +631,7 @@
-
+ Vaadin Application Servlet org.activiti.explorer.servlet.ExplorerApplicationServlet
Faces Servlet
@@ -831,7 +831,8 @@
CMISTCK -->
-
+ Vaadin Application Servlet /activiti-admin/*
+ Vaadin Application Servlet /VAADIN/*
60
diff --git a/source/web/jsp/dialog/about.jsp b/source/web/jsp/dialog/about.jsp
index 97a7406e78..7c39594001 100644
--- a/source/web/jsp/dialog/about.jsp
+++ b/source/web/jsp/dialog/about.jsp
@@ -1,218 +1,202 @@
-<%--
- * Copyright (C) 2005-2014 Alfresco Software Limited.
- *
- * This file is part of Alfresco
- *
- * Alfresco is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Alfresco is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with Alfresco. If not, see .
---%>
-<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
-<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-<%@ taglib uri="/WEB-INF/alfresco.tld" prefix="a" %>
-<%@ taglib uri="/WEB-INF/repo.tld" prefix="r" %>
-
-<%@ page buffer="32kb" contentType="text/html;charset=UTF-8" %>
-<%@ page isELIgnored="false" %>
-<%@ page import="org.alfresco.web.ui.common.PanelGenerator" %>
-
-
-
-
-
-
-
-
-
-
-
-
- Alfresco Software utilises components or libraries from the following software vendors and companies
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Alfresco Development tools:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Alfresco Software contributors
-
-
-
-
-
- Meta Data Extraction Framework and PDF/Open Office Format meta data extraction:
-
- •
-
- Jesper Steen Møller
-
-
-
-
- Open Document Format meta data extraction:
-
- •
-
- Antti Jokipii
-
-
-
-
- Multilingual Document Management:
-
- •
-
- CEC
-
-
-
-
- Category Browsing:
-
- •
-
- Atol Conseils et Développements
-
-
-
-
- Fixes and improvements:
-
- •
-
- Ray Gauss II,
- Dave Gillen,
- Michael Kriske,
- Carina Lansing,
- DMC.de,
- Optaros
-
-
-
-
- Language and translation packs:
-
- •
-
- Camille Bégnis,
- Andrejus Chaliapinas,
- Laurent Genier,
- Antti Jokipii,
- Henning Kristensen,
- Betty Mai,
- Fabian Mandelbaum,
- Theodoros Papageorgiou,
- Helio Silvio Piccinatto,
- Gian Luca Farina Perseu,
- Alex Revesz,
- Christian Roy,
- Philippe Seillier,
- Frank Shipley,
- Michiel Steltman,
- Gert Thiel,
- cnalfresco
-
-
-
-
-
-
-
-
+<%--
+ * Copyright (C) 2005-2014 Alfresco Software Limited.
+ *
+ * This file is part of Alfresco
+ *
+ * Alfresco is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Alfresco is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Alfresco. If not, see .
+--%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+<%@ taglib uri="/WEB-INF/alfresco.tld" prefix="a" %>
+<%@ taglib uri="/WEB-INF/repo.tld" prefix="r" %>
+
+<%@ page buffer="32kb" contentType="text/html;charset=UTF-8" %>
+<%@ page isELIgnored="false" %>
+<%@ page import="org.alfresco.web.ui.common.PanelGenerator" %>
+
+
+
+
+
+
+
+
+
+
+
+
+ Alfresco Software utilises components or libraries from the following software vendors and companies
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Alfresco Development tools:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Alfresco Software contributors
+
+
+
+
+
+ Meta Data Extraction Framework and PDF/Open Office Format meta data extraction:
+
+ •
+
+ Jesper Steen Møller
+
+
+
+
+ Open Document Format meta data extraction:
+
+ •
+
+ Antti Jokipii
+
+
+
+
+ Multilingual Document Management:
+
+ •
+
+ CEC
+
+
+
+
+ Category Browsing:
+
+ •
+
+ Atol Conseils et Développements
+
+
+
+
+ Fixes and improvements:
+
+ •
+
+ Ray Gauss II,
+ Dave Gillen,
+ Michael Kriske,
+ Carina Lansing,
+ DMC.de,
+ Optaros
+
+
+
+
+ Supported language packs:
+
+ •
+
+ French, German, Italian, (European) Spanish and Japanese.
+
+
+
+
+
+
+
+
\ No newline at end of file