You are viewing a plain text version of this content. The canonical link for it is here.
Posted to portalapps-dev@portals.apache.org by at...@apache.org on 2009/05/05 05:32:01 UTC
svn commit: r771541 - in /portals/applications/dbbrowser/trunk:
dbbrowser-jar/ dbbrowser-war/ dbbrowser-war/src/main/java/
dbbrowser-war/src/main/webapp/WEB-INF/
dbbrowser-war/src/main/webapp/WEB-INF/classes/
Author: ate
Date: Tue May 5 03:32:00 2009
New Revision: 771541
URL: http://svn.apache.org/viewvc?rev=771541&view=rev
Log:
JS2-972: commons-logging unsuited for cross-context webapplication invocation usage - migrating to slf4j
- adding a simple ServletContextListener for setting up relative log4j logging in the dbbrowser war
- removing invalid (pluto specific) portlet.tld which wasn't used anyway
- removing jetspeed specific container servlet from web.xml (needs to be "infused" for each container)
- cleaning up dependencies
Added:
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java (with props)
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties (contents, props changed)
- copied, changed from r771262, portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/log4j.properties
Removed:
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/log4j.properties
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/portlet.tld
Modified:
portals/applications/dbbrowser/trunk/dbbrowser-jar/pom.xml
portals/applications/dbbrowser/trunk/dbbrowser-war/pom.xml
portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/web.xml
Modified: portals/applications/dbbrowser/trunk/dbbrowser-jar/pom.xml
URL: http://svn.apache.org/viewvc/portals/applications/dbbrowser/trunk/dbbrowser-jar/pom.xml?rev=771541&r1=771540&r2=771541&view=diff
==============================================================================
--- portals/applications/dbbrowser/trunk/dbbrowser-jar/pom.xml (original)
+++ portals/applications/dbbrowser/trunk/dbbrowser-jar/pom.xml Tue May 5 03:32:00 2009
@@ -38,6 +38,7 @@
<properties>
<portlet-api.version>2.0</portlet-api.version>
+ <org.apache.portals.bridges.common.version>1.0.4</org.apache.portals.bridges.common.version>
<org.apache.portals.bridges.velocity.version>1.0.4</org.apache.portals.bridges.velocity.version>
<slf4j.version>1.5.6</slf4j.version>
<poi.version>3.0-FINAL</poi.version>
@@ -56,6 +57,18 @@
</dependency>
<dependency>
<groupId>org.apache.portals.bridges</groupId>
+ <artifactId>portals-bridges-common</artifactId>
+ <version>${org.apache.portals.bridges.common.version}</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.portals.bridges</groupId>
<artifactId>portals-bridges-velocity</artifactId>
<version>${org.apache.portals.bridges.velocity.version}</version>
</dependency>
@@ -63,6 +76,12 @@
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${poi.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
@@ -80,17 +99,19 @@
<artifactId>commons-digester</artifactId>
<version>${commons-digester.version}</version>
<scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <version>${slf4j.version}</version>
- </dependency>
+ <!-- needed as for instance digester uses commons-logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
Modified: portals/applications/dbbrowser/trunk/dbbrowser-war/pom.xml
URL: http://svn.apache.org/viewvc/portals/applications/dbbrowser/trunk/dbbrowser-war/pom.xml?rev=771541&r1=771540&r2=771541&view=diff
==============================================================================
--- portals/applications/dbbrowser/trunk/dbbrowser-war/pom.xml (original)
+++ portals/applications/dbbrowser/trunk/dbbrowser-war/pom.xml Tue May 5 03:32:00 2009
@@ -34,45 +34,36 @@
<name>Portals Database Browser application WAR</name>
<properties>
- <velocity.version>1.5</velocity.version>
- <velocity-tools.version>1.3</velocity-tools.version>
- <slf4j.version>1.5.6</slf4j.version>
+ <javax.servlet.version>2.4</javax.servlet.version>
+ <org.apache.portals.bridges.common.version>1.0.4</org.apache.portals.bridges.common.version>
+ <slf4j.version>1.5.6</slf4j.version>
</properties>
<dependencies>
- <!-- Runtime Dependencies -->
+
<dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>apa-dbbrowser-jar</artifactId>
- <version>${pom.version}</version>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>${javax.servlet.version}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>${velocity.version}</version>
+ <groupId>org.apache.portals.bridges</groupId>
+ <artifactId>portals-bridges-common</artifactId>
+ <version>${org.apache.portals.bridges.common.version}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>velocity-tools</groupId>
- <artifactId>velocity-tools</artifactId>
- <version>${velocity-tools.version}</version>
- <scope>runtime</scope>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>apa-dbbrowser-jar</artifactId>
+ <version>${pom.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>${slf4j.version}</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>jcl-over-slf4j</artifactId>
- <version>${slf4j.version}</version>
- </dependency>
</dependencies>
<build>
- <finalName>apa-dbbrowser</finalName>
+ <finalName>apa-dbbrowser</finalName>
</build>
</project>
\ No newline at end of file
Added: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java
URL: http://svn.apache.org/viewvc/portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java?rev=771541&view=auto
==============================================================================
--- portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java (added)
+++ portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java Tue May 5 03:32:00 2009
@@ -0,0 +1,57 @@
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+
+/*
+ * 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.
+ */
+/**
+ * Simple ServletContextListener which sets a system property to the current webapp root folder.
+ * <p>
+ * The system property name to be used needs to be configured in web.xml with the <code>webAppRootKey</code> init parameter.
+ * If not configured, it will use as default "webapp.root".
+ * <em>beware of using this default for multiple webapps at the same time: webcontainers like Tomcat only use a single system
+ * properties space.
+ * </p>
+ * <p>
+ * The primary purpose of this listener is to allow using a webapp root folder relative path for log4j logging.
+ * </p>
+ * @version $Id$
+ *
+ */
+public class WebAppRootListener implements ServletContextListener
+{
+ private static final String WEBAPP_ROOT_KEY = "webAppRootKey";
+ private static final String DEFAULT_WEBAPP_ROOT_PROPERTY_NAME = "webapp.root";
+
+ public void contextInitialized(ServletContextEvent sce)
+ {
+ String webAppRootPropertyName = sce.getServletContext().getInitParameter(WEBAPP_ROOT_KEY);
+ if (webAppRootPropertyName == null)
+ {
+ webAppRootPropertyName = DEFAULT_WEBAPP_ROOT_PROPERTY_NAME;
+ }
+ String webAppRoot = sce.getServletContext().getRealPath("/");
+ if (webAppRoot == null)
+ {
+ throw new IllegalStateException("Cannot use this WebAppRootListener in a non-expanded webapplication");
+ }
+ System.setProperty(webAppRootPropertyName, webAppRoot);
+ }
+
+ public void contextDestroyed(ServletContextEvent sce)
+ {
+ }
+}
Propchange: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/java/WebAppRootListener.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Copied: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties (from r771262, portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/log4j.properties)
URL: http://svn.apache.org/viewvc/portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties?p2=portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties&p1=portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/log4j.properties&r1=771262&r2=771541&rev=771541&view=diff
==============================================================================
--- portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/log4j.properties (original)
+++ portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties Tue May 5 03:32:00 2009
@@ -44,17 +44,17 @@
#
# pa.log
#
-log4j.appender.pa = org.apache.log4j.FileAppender
-log4j.appender.pa.file = ${webApplicationRoot}/logs/pa.log
-log4j.appender.pa.layout = org.apache.log4j.PatternLayout
-log4j.appender.pa.layout.conversionPattern = %d [%t] %-5p %c - %m%n
-log4j.appender.pa.append = false
-
-#
-# velocity.log
-#
-log4j.appender.velocity = org.apache.log4j.FileAppender
-log4j.appender.velocity.file = ${webApplicationRoot}/logs/velocity.log
-log4j.appender.velocity.layout = org.apache.log4j.PatternLayout
-log4j.appender.velocity.layout.conversionPattern = %d [%t] %-5p %c - %m%n
-log4j.appender.velocity.append = false
+log4j.appender.pa = org.apache.log4j.FileAppender
+log4j.appender.pa.file = ${org.apache.portals.applications.dbbrowser.webappRoot}/logs/pa.log
+log4j.appender.pa.layout = org.apache.log4j.PatternLayout
+log4j.appender.pa.layout.conversionPattern = %d [%t] %-5p %c - %m%n
+log4j.appender.pa.append = false
+
+#
+# velocity.log
+#
+log4j.appender.velocity = org.apache.log4j.FileAppender
+log4j.appender.velocity.file = ${org.apache.portals.applications.dbbrowser.webappRoot}/logs/velocity.log
+log4j.appender.velocity.layout = org.apache.log4j.PatternLayout
+log4j.appender.velocity.layout.conversionPattern = %d [%t] %-5p %c - %m%n
+log4j.appender.velocity.append = false
Propchange: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/classes/log4j.properties
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/web.xml?rev=771541&r1=771540&r2=771541&view=diff
==============================================================================
--- portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/web.xml (original)
+++ portals/applications/dbbrowser/trunk/dbbrowser-war/src/main/webapp/WEB-INF/web.xml Tue May 5 03:32:00 2009
@@ -13,24 +13,20 @@
KIND, either express or implied. See the License for the specific language
governing permissions and limitations under the License.
-->
-<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
-<web-app>
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+
<display-name>Portals Database Browser application</display-name>
<description>Apache Portals Applications: db-browser portlet application</description>
- <servlet>
- <servlet-name>JetspeedContainer</servlet-name>
- <display-name>Jetspeed Container</display-name>
- <description>MVC Servlet for Jetspeed Portlet Applications</description>
- <servlet-class>org.apache.jetspeed.container.JetspeedContainerServlet</servlet-class>
- <init-param>
- <param-name>contextName</param-name>
- <param-value>apa-dbbrowser</param-value>
- </init-param>
- <load-on-startup>100</load-on-startup>
- </servlet>
-
+ <context-param>
+ <param-name>webAppRootKey</param-name>
+ <param-value>org.apache.portals.applications.dbbrowser.webappRoot</param-value>
+ </context-param>
+ <listener>
+ <listener-class>WebAppRootListener</listener-class>
+ </listener>
+
<!-- Define Velocity Servlet -->
<servlet>
<servlet-name>velocity</servlet-name>
@@ -51,9 +47,5 @@
<servlet-name>velocity</servlet-name>
<url-pattern>*.vm</url-pattern>
</servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>JetspeedContainer</servlet-name>
- <url-pattern>/container/*</url-pattern>
- </servlet-mapping>
+
</web-app>