You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by as...@apache.org on 2018/04/19 23:02:54 UTC

[2/2] portals-pluto git commit: PLUTO-663 Migrate Portlet 3.0 TCK and demos from java.util.logging to SLF4J

PLUTO-663 Migrate Portlet 3.0 TCK and demos from java.util.logging to SLF4J


Project: http://git-wip-us.apache.org/repos/asf/portals-pluto/repo
Commit: http://git-wip-us.apache.org/repos/asf/portals-pluto/commit/48e4561a
Tree: http://git-wip-us.apache.org/repos/asf/portals-pluto/tree/48e4561a
Diff: http://git-wip-us.apache.org/repos/asf/portals-pluto/diff/48e4561a

Branch: refs/heads/master
Commit: 48e4561a8464b8e33ad16350b64775c64c6f2419
Parents: 47ae53c
Author: Neil Griffin <ne...@gmail.com>
Authored: Thu Apr 19 19:02:29 2018 -0400
Committer: Neil Griffin <ne...@gmail.com>
Committed: Thu Apr 19 19:02:29 2018 -0400

----------------------------------------------------------------------
 PortletHubDemo/pom.xml                          | 18 ++++++++-
 .../java/basic/portlet/ColorSelPortlet.java     | 23 +++++------
 .../java/basic/portlet/ImageSelPortlet.java     | 12 +++---
 .../java/basic/portlet/MessageBoxPortlet.java   | 20 +++++-----
 .../java/basic/portlet/ParamTestPortlet.java    |  6 ---
 .../basic/portlet/PartialActionPortlet.java     | 16 ++++----
 .../java/basic/portlet/ResourcePortlet.java     | 12 +++---
 .../src/main/resources/log4j.properties         |  6 +++
 PortletV3AnnotatedDemo/pom.xml                  | 33 ++++++++--------
 .../apache/portals/samples/AsyncDialogBean.java | 12 +++---
 .../org/apache/portals/samples/AsyncFilter.java | 10 +++--
 .../apache/portals/samples/AsyncListener.java   | 15 ++++----
 .../apache/portals/samples/AsyncPortlet.java    | 26 ++++++-------
 .../apache/portals/samples/AsyncRunnable.java   | 33 ++++++++--------
 .../portals/samples/LoggingInterceptor.java     | 14 ++++---
 .../portals/samples/MultipartPortlet.java       | 22 ++++++-----
 .../src/main/resources/log4j.properties         |  6 +++
 PortletV3Demo/pom.xml                           | 18 ++++++++-
 .../main/java/basic/portlet/AuthSCPortlet.java  | 14 +++----
 .../java/basic/portlet/ColorSelPortlet.java     |  4 --
 .../java/basic/portlet/DependencyPortlet.java   | 10 +++--
 .../main/java/basic/portlet/HeaderPortlet.java  | 12 +++---
 .../java/basic/portlet/ImageSelPortlet.java     | 12 +++---
 .../main/java/basic/portlet/LongPortlet.java    | 12 +++---
 .../java/basic/portlet/MessageBoxPortlet.java   | 18 ++++-----
 .../java/basic/portlet/ParamTestPortlet.java    | 18 ++++-----
 .../basic/portlet/PortletConfigPortlet.java     | 12 +++---
 .../java/basic/portlet/RedirectPortlet.java     | 11 +++---
 .../java/basic/portlet/ResourcePortlet.java     | 16 ++++----
 .../main/java/basic/portlet/TagLibPortlet.java  | 10 +++--
 .../src/main/java/basic/portlet/URLFilter.java  | 12 +++---
 .../java/basic/portlet/UrlAPTestPortlet.java    | 40 ++++++++++----------
 .../java/basic/portlet/UrlRPTestPortlet.java    | 32 ++++++++--------
 .../main/java/basic/portlet/UrlTestPortlet.java | 18 ++++-----
 .../src/main/resources/log4j.properties         |  6 +++
 35 files changed, 306 insertions(+), 253 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/pom.xml
----------------------------------------------------------------------
diff --git a/PortletHubDemo/pom.xml b/PortletHubDemo/pom.xml
index 2699bbe..d08ed41 100644
--- a/PortletHubDemo/pom.xml
+++ b/PortletHubDemo/pom.xml
@@ -39,6 +39,10 @@
          <artifactId>tomcat-servlet-api</artifactId>
          <scope>provided</scope>
       </dependency>
+      <dependency>
+         <groupId>org.slf4j</groupId>
+         <artifactId>slf4j-api</artifactId>
+      </dependency>
 
       <!-- for eclipse JSP tooling purposes -->
       <dependency>
@@ -130,6 +134,16 @@
                 <artifactId>taglibs-standard-jstlel</artifactId>
                 <scope>compile</scope>
             </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-jdk14</artifactId>
+                <scope>provided</scope>
+            </dependency>
          </dependencies>
          
          <build>
@@ -137,7 +151,9 @@
                <plugin>
                  <artifactId>maven-war-plugin</artifactId>
                  <configuration>
-                   <archiveClasses>false</archiveClasses>
+                   <packagingExcludes>
+                       WEB-INF/classes/log4j.properties
+                   </packagingExcludes>
                  </configuration>
                </plugin>
                <!-- workaround for war processing of m-r-r-plugin causing the generated NOTICE and LICENSE file to be put under WEB-INF/classes/META-INF -->

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/ColorSelPortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/ColorSelPortlet.java b/PortletHubDemo/src/main/java/basic/portlet/ColorSelPortlet.java
index 017fb34..6412203 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/ColorSelPortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/ColorSelPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.DELIM;
 import static basic.portlet.Constants.PARAM_FG_BLUE;
 import static basic.portlet.Constants.PARAM_FG_COLOR;
@@ -29,8 +32,6 @@ import static basic.portlet.Constants.PARAM_SUBTYPE;
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Enumeration;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -61,16 +62,12 @@ import javax.xml.namespace.QName;
 public class ColorSelPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ColorSelPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
-
-   // private static final String LOG_CLASS = ColorSelPortlet.class.getName();
-   // private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(ColorSelPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
 
-      logger.fine("Doing view.");
+      logger.debug("Doing view.");
       
       resp.setContentType("text/html");
 
@@ -133,26 +130,26 @@ public class ColorSelPortlet extends GenericPortlet {
       if (eqn.hasMoreElements()) {
          QName qn = eqn.nextElement(); 
          resp.setEvent(qn, msg);
-         logger.fine("Firing event with QName: " + qn.toString());
+         logger.debug("Firing event with QName: " + qn.toString());
       } else {
-         logger.warning("No publishing event QName available. Check portlet configuration.");
+         logger.warn("No publishing event QName available. Check portlet configuration.");
       }
       
       StringBuilder sb = new StringBuilder("Color: ").append(Arrays.toString(vals));
       sb.append(", Submission type: ").append(subType);
       sb.append(", Text: ").append(text);
-      logger.fine(sb.toString());
+      logger.debug(sb.toString());
    }
    
    private void dumpParameters(String type, PortletParameters parms) {
-      if (logger.isLoggable(Level.FINEST)) {
+      if (logger.isDebugEnabled()) {
          StringBuilder sb = new StringBuilder();
          sb.append("Portlet ").append(type).append(" parameters:");
          for (String name : parms.getNames()) {
             sb.append("\nName: ").append(name);
             sb.append(", Values: ").append(Arrays.toString(parms.getValues(name)));
          }
-         logger.finest(sb.toString());
+         logger.debug(sb.toString());
       }
    }
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/ImageSelPortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/ImageSelPortlet.java b/PortletHubDemo/src/main/java/basic/portlet/ImageSelPortlet.java
index 4743678..ac18488 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/ImageSelPortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/ImageSelPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.PARAM_IMGNAME;
 import static basic.portlet.Constants.PARAM_SELTYPE;
 import static basic.portlet.Constants.PARAM_SELTYPE_RADIO;
@@ -26,8 +29,6 @@ import static basic.portlet.Constants.imgMap;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -54,14 +55,13 @@ import javax.portlet.annotations.PortletConfiguration;
 public class ImageSelPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ImageSelPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(ImageSelPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/MessageBoxPortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/MessageBoxPortlet.java b/PortletHubDemo/src/main/java/basic/portlet/MessageBoxPortlet.java
index 3aebe66..85caeb3 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/MessageBoxPortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/MessageBoxPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.ATTRIB_MSGS;
 import static basic.portlet.Constants.DELIM;
 import static basic.portlet.Constants.PARAM_COLOR;
@@ -26,8 +29,6 @@ import static basic.portlet.Constants.PARAM_NUM_MSGS;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.ArrayList;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -57,14 +58,13 @@ import javax.portlet.annotations.PortletQName;
 public class MessageBoxPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = MessageBoxPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(MessageBoxPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");
@@ -82,7 +82,7 @@ public class MessageBoxPortlet extends GenericPortlet {
       // the only action for this portlet is to reset the stored messages
       
       String actionName = req.getActionParameters().getValue(ActionRequest.ACTION_NAME);
-      logger.fine("MBP: Resetting messages. numMsgs = 0,  actionName = " + actionName);
+      logger.debug("MBP: Resetting messages. numMsgs = 0,  actionName = " + actionName);
 
       ArrayList<String> msgs = new ArrayList<String>();
       StringBuffer sb = new StringBuffer();
@@ -119,7 +119,7 @@ public class MessageBoxPortlet extends GenericPortlet {
          msgs.clear();
       }
       
-      logger.fine("Processing message event. Current # messages = " + msgs.size());
+      logger.debug("Processing message event. Current # messages = " + msgs.size());
 
       try {
          // Both pieces of info are transported in a delimted string rather than 
@@ -144,7 +144,7 @@ public class MessageBoxPortlet extends GenericPortlet {
       
       msgs.add(sb.toString());
       
-      logger.fine("Adding message: " + sb.toString());
+      logger.debug("Adding message: " + sb.toString());
 
       resp.getRenderParameters().setValue(PARAM_NUM_MSGS, Integer.toString(msgs.size()));
       req.getPortletSession().setAttribute(ATTRIB_MSGS, msgs);
@@ -178,7 +178,7 @@ public class MessageBoxPortlet extends GenericPortlet {
       }
 
       int n = msgs.size();
-      logger.fine("Served messages. latest message: " + (n > 0 ? msgs.get(n-1) : "null"));
+      logger.debug("Served messages. latest message: " + (n > 0 ? msgs.get(n-1) : "null"));
    }
 
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/ParamTestPortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/ParamTestPortlet.java b/PortletHubDemo/src/main/java/basic/portlet/ParamTestPortlet.java
index f559be9..9b50eef 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/ParamTestPortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/ParamTestPortlet.java
@@ -27,7 +27,6 @@ import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.List;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -55,11 +54,6 @@ import javax.portlet.annotations.PortletConfiguration;
                         dependencies = @Dependency(name="PortletHub", scope="javax.portlet", version="3.0.0"))
 public class ParamTestPortlet extends GenericPortlet {
 
-   // Set up logging
-   private static final String LOG_CLASS = ParamTestPortlet.class.getName();
-   @SuppressWarnings("unused")
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
-   
    private final HashSet<String> prpNames = new HashSet<String>();
    
    @Override

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/PartialActionPortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/PartialActionPortlet.java b/PortletHubDemo/src/main/java/basic/portlet/PartialActionPortlet.java
index 10ea344..2547582 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/PartialActionPortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/PartialActionPortlet.java
@@ -18,12 +18,13 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.*;
 
 import java.io.IOException;
 import java.io.PrintWriter;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -37,8 +38,6 @@ import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 import javax.portlet.ResourceRequest;
 
-import static javax.portlet.ResourceRequest.*;
-
 import javax.portlet.ResourceResponse;
 import javax.portlet.annotations.Dependency;
 import javax.portlet.annotations.LocaleString;
@@ -54,14 +53,13 @@ import javax.portlet.annotations.PortletConfiguration;
 public class PartialActionPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = PartialActionPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(PartialActionPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");
@@ -88,7 +86,7 @@ public class PartialActionPortlet extends GenericPortlet {
       }
       
       String actionName = req.getParameter("action");
-      logger.fine("PAP: executing partial action. action number = " + na + ", name =  " + actionName);
+      logger.debug("PAP: executing partial action. action number = " + na + ", name =  " + actionName);
 
       resp.setRenderParameter(PARAM_NUM_ACTIONS, Integer.toString(na));
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/java/basic/portlet/ResourcePortlet.java
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/java/basic/portlet/ResourcePortlet.java b/PortletHubDemo/src/main/java/basic/portlet/ResourcePortlet.java
index f468a77..75cf188 100644
--- a/PortletHubDemo/src/main/java/basic/portlet/ResourcePortlet.java
+++ b/PortletHubDemo/src/main/java/basic/portlet/ResourcePortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.PARAM_BORDER_COLOR;
 import static basic.portlet.Constants.PARAM_COLOR;
 import static basic.portlet.Constants.PARAM_IMGNAME;
@@ -26,8 +29,6 @@ import static basic.portlet.Constants.DEFAULT_IMAGE;
 
 import java.io.IOException;
 import java.io.PrintWriter;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.portlet.ActionRequest;
@@ -84,15 +85,14 @@ import javax.portlet.annotations.Supports;
 public class ResourcePortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ResourcePortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(ResourcePortlet.class);
 
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletHubDemo/src/main/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/PortletHubDemo/src/main/resources/log4j.properties b/PortletHubDemo/src/main/resources/log4j.properties
new file mode 100644
index 0000000..5c0bfca
--- /dev/null
+++ b/PortletHubDemo/src/main/resources/log4j.properties
@@ -0,0 +1,6 @@
+log4j.rootLogger=INFO, R
+log4j.appender.R=org.apache.log4j.ConsoleAppender
+log4j.appender.R.layout=org.apache.log4j.PatternLayout
+log4j.appender.R.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}:%L] %m%n
+
+log4j.logger.basic.portlet=DEBUG

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/pom.xml
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/pom.xml b/PortletV3AnnotatedDemo/pom.xml
index 96dda36..3b689e1 100644
--- a/PortletV3AnnotatedDemo/pom.xml
+++ b/PortletV3AnnotatedDemo/pom.xml
@@ -45,6 +45,10 @@
          <artifactId>tomcat-servlet-api</artifactId>
          <scope>provided</scope>
       </dependency>
+      <dependency>
+         <groupId>org.slf4j</groupId>
+         <artifactId>slf4j-api</artifactId>
+      </dependency>
 
       <!-- for eclipse JSP tooling purposes -->
       <dependency>
@@ -53,21 +57,6 @@
          <version>2.1</version>
          <scope>provided</scope>
       </dependency>
-      <dependency>
-         <groupId>org.apache.taglibs</groupId>
-         <artifactId>taglibs-standard-spec</artifactId>
-         <scope>provided</scope>
-      </dependency>
-      <dependency>
-          <groupId>org.apache.taglibs</groupId>
-          <artifactId>taglibs-standard-impl</artifactId>
-          <scope>provided</scope>
-      </dependency>
-      <dependency>
-          <groupId>org.apache.taglibs</groupId>
-          <artifactId>taglibs-standard-jstlel</artifactId>
-          <scope>provided</scope>
-      </dependency>
    </dependencies>
 
    <build>
@@ -131,6 +120,16 @@
                 <artifactId>taglibs-standard-jstlel</artifactId>
                 <scope>compile</scope>
             </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-jdk14</artifactId>
+                <scope>provided</scope>
+            </dependency>
          </dependencies>
          
          <build>
@@ -138,7 +137,9 @@
                <plugin>
                  <artifactId>maven-war-plugin</artifactId>
                  <configuration>
-                   <archiveClasses>false</archiveClasses>
+                   <packagingExcludes>
+                      WEB-INF/classes/log4j.properties
+                   </packagingExcludes>
                  </configuration>
                </plugin>
                <!-- workaround for war processing of m-r-r-plugin causing the generated NOTICE and LICENSE file to be put under WEB-INF/classes/META-INF -->

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncDialogBean.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncDialogBean.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncDialogBean.java
index d90af02..599be39 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncDialogBean.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncDialogBean.java
@@ -18,9 +18,11 @@
 
 package org.apache.portals.samples;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
 import java.util.Arrays;
-import java.util.logging.Logger;
 
 import javax.inject.Named;
 import javax.portlet.ActionRequest;
@@ -38,7 +40,7 @@ import javax.portlet.annotations.RenderStateScoped;
 @RenderStateScoped
 @Named("adb")
 public class AsyncDialogBean implements PortletSerializable {
-   private static final Logger LOGGER = Logger.getLogger(AsyncDialogBean.class.getName());
+   private static final Logger logger = LoggerFactory.getLogger(AsyncDialogBean.class);
 
    // defines how output is to be generated
    public enum OutputType {
@@ -102,7 +104,7 @@ public class AsyncDialogBean implements PortletSerializable {
          handleTimeout = TimeoutType.valueOf(state[6]);
          showListener = Boolean.parseBoolean(state[7]);
       }
-      LOGGER.fine("deserialized: " + Arrays.asList(state).toString());
+      logger.debug("deserialized: " + Arrays.asList(state).toString());
    }
 
    /**
@@ -113,7 +115,7 @@ public class AsyncDialogBean implements PortletSerializable {
    public String[] serialize() {
       String[] state = { "" + delay, "" + reps, type.toString(), msg, 
             ""+autoDispatch, ""+showFilter, handleTimeout.toString(), ""+showListener };
-      LOGGER.fine("serialized: " + Arrays.asList(state).toString());
+      logger.debug("serialized: " + Arrays.asList(state).toString());
       return state;
    }
 
@@ -332,7 +334,7 @@ public class AsyncDialogBean implements PortletSerializable {
 
       String[] state = { "" + delay, "" + reps, type.toString(), msg, 
             ""+autoDispatch, ""+showFilter, handleTimeout.toString() };
-      LOGGER.fine("Resulting params: " + Arrays.asList(state).toString());
+      logger.debug("Resulting params: " + Arrays.asList(state).toString());
    }
 
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncFilter.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncFilter.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncFilter.java
index e301018..57a202f 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncFilter.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncFilter.java
@@ -18,8 +18,10 @@
 
 package org.apache.portals.samples;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
-import java.util.logging.Logger;
 
 import javax.inject.Inject;
 import javax.portlet.PortletException;
@@ -40,7 +42,7 @@ import javax.servlet.DispatcherType;
  */
 @PortletLifecycleFilter(portletNames="AsyncPortlet")
 public class AsyncFilter implements ResourceFilter {
-   private static final Logger LOGGER = Logger.getLogger(AsyncFilter.class.getName());
+   private static final Logger logger = LoggerFactory.getLogger(AsyncFilter.class);
    
    @Inject private PortletRequestRandomNumberBean reqnum;
    @Inject private AsyncDialogBean asyncDialogBean;
@@ -62,7 +64,7 @@ public class AsyncFilter implements ResourceFilter {
       StringBuilder txt = new StringBuilder(128);
       txt.append("Entering request. DispatcherType: ").append(dispatcherType);
       txt.append(", request #: ").append(reqnum.getRandomNumber());
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
       
       if (asyncDialogBean.isShowFilter()) {
          txt.setLength(0);
@@ -75,7 +77,7 @@ public class AsyncFilter implements ResourceFilter {
       
       chain.doFilter(resourceRequest, resourceResponse);
       
-      LOGGER.fine("Exiting request. DispatcherType: " + resourceRequest.getDispatcherType());
+      logger.debug("Exiting request. DispatcherType: " + resourceRequest.getDispatcherType());
       
    }
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncListener.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncListener.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncListener.java
index 0058121..c1b8d27 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncListener.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncListener.java
@@ -23,7 +23,6 @@ import static org.apache.portals.samples.AsyncPortlet.ATTRIB_TIMEOUT;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import java.util.logging.Logger;
 
 import javax.inject.Inject;
 import javax.portlet.PortletAsyncContext;
@@ -33,13 +32,15 @@ import javax.portlet.ResourceRequest;
 import javax.portlet.ResourceResponse;
 
 import org.apache.portals.samples.AsyncDialogBean.TimeoutType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * @author Scott Nicklous
  * 
  */
 public class AsyncListener implements PortletAsyncListener {
-   private static final Logger            LOGGER = Logger.getLogger(AsyncListener.class.getName());
+   private static final Logger logger = LoggerFactory.getLogger(AsyncListener.class);
 
    private long                           start  = System.currentTimeMillis();
 
@@ -58,7 +59,7 @@ public class AsyncListener implements PortletAsyncListener {
 
       StringBuilder txt = new StringBuilder(128);
       txt.append("Listener: Completed. Execution time: ").append(delta).append(" milliseconds.");
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
       
       asyncCompleteBean.setComplete(true);
    }
@@ -86,7 +87,7 @@ public class AsyncListener implements PortletAsyncListener {
       
       txt.append(", Exception: ").append(msg);
 
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
       evt.getPortletAsyncContext().complete();
    }
 
@@ -100,7 +101,7 @@ public class AsyncListener implements PortletAsyncListener {
       long delta = System.currentTimeMillis() - start;
       StringBuilder txt = new StringBuilder(128);
       txt.append("Async started again after ").append(delta).append(" milliseconds.");
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
 
       // need to add this listener again so it gets called when finally
       // complete.
@@ -131,7 +132,7 @@ public class AsyncListener implements PortletAsyncListener {
          PrintWriter pw = new PrintWriter(sw);
          e.printStackTrace(pw);
          pw.flush();
-         LOGGER.fine("Exception producing output: \n" + sw.toString());
+         logger.debug("Exception producing output: \n" + sw.toString());
       }
    }
 
@@ -171,7 +172,7 @@ public class AsyncListener implements PortletAsyncListener {
             evt.getPortletAsyncContext().dispatch();
          }
       } catch (Exception e) {
-         LOGGER.warning(" Couldn't get response to generate output. Exception: " + e.toString());
+         logger.warn(" Couldn't get response to generate output. Exception: " + e.toString());
       }
    }
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncPortlet.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncPortlet.java
index 0961e36..2f825e2 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncPortlet.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncPortlet.java
@@ -23,8 +23,6 @@ import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.util.Collections;
 import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
@@ -38,6 +36,8 @@ import javax.portlet.ResourceResponse;
 import javax.portlet.annotations.ServeResourceMethod;
 
 import org.apache.portals.samples.AsyncDialogBean.OutputType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Implements the async resource method for the async portlet.
@@ -47,8 +47,8 @@ import org.apache.portals.samples.AsyncDialogBean.OutputType;
  */
 public class AsyncPortlet {
 
-   private static final Logger LOGGER = Logger.getLogger(AsyncPortlet.class.getName());
-   private static final boolean isTrace = LOGGER.isLoggable(Level.FINEST);
+   private static final Logger logger = LoggerFactory.getLogger(AsyncPortlet.class);
+   private static final boolean isTrace = logger.isDebugEnabled();
    
    private final static String ATTRIB_REPS = "reps";
    public  final static String ATTRIB_TIMEOUT = "timeout";
@@ -59,12 +59,12 @@ public class AsyncPortlet {
 
    @PostConstruct
    public void postConstruct() {
-      LOGGER.fine("AsyncPortlet @PostConstruct called");
+      logger.debug("AsyncPortlet @PostConstruct called");
    }
 
    @PreDestroy
    public void preDestroy() {
-      LOGGER.fine("AsyncPortlet @PreDestroy called");
+      logger.debug("AsyncPortlet @PreDestroy called");
    }
 
    @ServeResourceMethod(portletNames = "AsyncPortlet", asyncSupported = true)
@@ -107,7 +107,7 @@ public class AsyncPortlet {
       txt.append(", total reps: ").append(asyncDialogBean.getReps());
       txt.append(", auto: ").append(asyncDialogBean.isAutoDispatch());
       txt.append(", auto-dispatch: ").append(auto);
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
       
       PortletAsyncContext portletAsyncContext = resourceRequest.startPortletAsync();
       portletAsyncContext.setTimeout(4000);
@@ -118,7 +118,7 @@ public class AsyncPortlet {
          PrintWriter pw = new PrintWriter(sw);
          e.printStackTrace(pw);
          pw.flush();
-         LOGGER.fine("Exception adding listener: \n" + sw.toString());
+         logger.debug("Exception adding listener: \n" + sw.toString());
       }
 
       if (auto || (asyncDialogBean.getDelay() <= 0)) {
@@ -137,12 +137,12 @@ public class AsyncPortlet {
 
          switch (asyncDialogBean.getType()) {
          case DISPATCH:
-            LOGGER.fine("Dispatching to JSP.");
+            logger.debug("Dispatching to JSP.");
             resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Resource Method dispatching to JSP");
             portletAsyncContext.dispatch(AsyncConstants.JSP);
             break;
          case FWD:
-            LOGGER.fine("Doing request dispatcher forward to JSP.");
+            logger.debug("Doing request dispatcher forward to JSP.");
             resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Resource Method forwarding to JSP");
             portletRequestDispatcher = resourceRequest.getPortletContext().getRequestDispatcher(AsyncConstants.JSP);
             portletRequestDispatcher.forward(resourceRequest, resourceResponse);
@@ -152,7 +152,7 @@ public class AsyncPortlet {
             }
             break;
          case INC:
-            LOGGER.fine("Doing request dispatcher include of JSP.");
+            logger.debug("Doing request dispatcher include of JSP.");
             resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Resource Method including JSP");
             portletRequestDispatcher = resourceRequest.getPortletContext().getRequestDispatcher(AsyncConstants.JSP);
             portletRequestDispatcher.include(resourceRequest, resourceResponse);
@@ -162,7 +162,7 @@ public class AsyncPortlet {
             }
             break;
          default:
-            LOGGER.fine("Producing text output.");
+            logger.debug("Producing text output.");
             txt.setLength(0);
             txt.append("<h5>Resource method producing text output for portlet: " + portletName + "</h5>");
             txt.append("<p>DispatcherType: ").append(resourceRequest.getDispatcherType().toString());
@@ -214,7 +214,7 @@ public class AsyncPortlet {
          txt.append("\ninclude_path_info:      ").append((String) req.getAttribute("javax.servlet.include.path_info"));
          txt.append("\ninclude_query_string:      ").append((String) req.getAttribute("javax.servlet.include.query_string"));
          txt.append("\nmethod_context_path:      ").append(req.getContextPath());
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncRunnable.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncRunnable.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncRunnable.java
index 28d872c..a134c27 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncRunnable.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/AsyncRunnable.java
@@ -18,6 +18,9 @@
 
 package org.apache.portals.samples;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import javax.inject.Inject;
 import javax.portlet.PortletAsyncContext;
 import javax.portlet.PortletConfig;
@@ -26,7 +29,7 @@ import javax.portlet.ResourceRequest;
 import javax.portlet.ResourceResponse;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import java.util.logging.Logger;
+
 
 /**
  * Implements the async resource method for the async portlet.
@@ -36,7 +39,7 @@ import java.util.logging.Logger;
  */
 public class AsyncRunnable implements Runnable {
 
-	private static final Logger LOGGER = Logger.getLogger(AsyncRunnable.class.getName());
+	private static final Logger logger = LoggerFactory.getLogger(AsyncRunnable.class);
 
 	private PortletAsyncContext portletAsyncContext;
 	private int delay;
@@ -55,17 +58,17 @@ public class AsyncRunnable implements Runnable {
 		txt.append("Initializing runnable.");
 		txt.append(" delay: ").append(delay);
 		txt.append(", outputType: ").append(outputType);
-		LOGGER.fine(txt.toString());
+		logger.debug(txt.toString());
 	}
 
 	@Override
 	public void run() {
-		LOGGER.fine("AsyncRunnable.run() BEGIN");
+		logger.debug("AsyncRunnable.run() BEGIN");
 		try {
 			Thread.sleep(delay);
 
 			if (asyncCompleteBean.isComplete()) {
-				LOGGER.warning("Request completed before work was finished. processing will be aborted.");
+				logger.warn("Request completed before work was finished. processing will be aborted.");
 				return;
 			}
 
@@ -83,7 +86,7 @@ public class AsyncRunnable implements Runnable {
 
 			switch (outputType) {
 				case TEXT:
-					LOGGER.fine("Producing text output.");
+					logger.debug("Producing text output.");
 					StringBuilder txt = new StringBuilder(128);
 					txt.append("<h5>Thread producing text output for portlet: " + portletName + "</h5>");
 					txt.append("<p>Dispatcher outputType: ").append(resourceRequest.getDispatcherType().toString());
@@ -99,24 +102,24 @@ public class AsyncRunnable implements Runnable {
 					StringBuilder str = new StringBuilder(128);
 					str.append("Dispatching to resource method.");
 					str.append(" context path: ").append(resourceRequest.getPortletContext().getContextPath());
-					LOGGER.fine(str.toString());
+					logger.debug(str.toString());
 					resourceRequest.setAttribute(AsyncConstants.ATTRIB_AUTO, new Boolean(true));
 					portletAsyncContext.dispatch();
 					break;
 				case DISPATCH:
-					LOGGER.fine("Dispatching to JSP.");
+					logger.debug("Dispatching to JSP.");
 					resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Thread dispatching to JSP");
 					portletAsyncContext.dispatch(AsyncConstants.JSP);
 					break;
 				case FWD:
-					LOGGER.fine("Doing request dispatcher forward to JSP: " + AsyncConstants.JSP);
+					logger.debug("Doing request dispatcher forward to JSP: " + AsyncConstants.JSP);
 					resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Thread forwarding to JSP");
 					rd.forward(resourceRequest, resourceResponse);
-					LOGGER.fine("After request dispatcher forward to JSP.");
+					logger.debug("After request dispatcher forward to JSP.");
 					portletAsyncContext.complete();
 					break;
 				case INC:
-					LOGGER.fine("Including JSP: " + AsyncConstants.JSP);
+					logger.debug("Including JSP: " + AsyncConstants.JSP);
 					resourceRequest.setAttribute(AsyncConstants.ATTRIB_TITLE, "Thread including JSP");
 					rd.include(resourceRequest, resourceResponse);
 					portletAsyncContext.complete();
@@ -124,19 +127,19 @@ public class AsyncRunnable implements Runnable {
 			}
 
 		} catch (IllegalStateException e) {
-			LOGGER.warning("Request may have timed out before it could complete. Exception: " + e.toString());
+			logger.warn("Request may have timed out before it could complete. Exception: " + e.toString());
 		} catch (Exception e) {
 			StringWriter sw = new StringWriter();
 			PrintWriter pw = new PrintWriter(sw);
 			e.printStackTrace(pw);
 			pw.flush();
-			LOGGER.fine("Exception during runner execution: \n" + sw.toString());
+			logger.debug("Exception during runner execution: \n" + sw.toString());
 		}
-		LOGGER.fine("AsyncRunnable.run() END");
+		logger.debug("AsyncRunnable.run() END");
 	}
 
 	@Override
 	protected void finalize() throws Throwable {
-		LOGGER.fine("AsyncRunnable.finalize() called");
+		logger.debug("AsyncRunnable.finalize() called");
 	}
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/LoggingInterceptor.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/LoggingInterceptor.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/LoggingInterceptor.java
index 13905a3..36006fc 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/LoggingInterceptor.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/LoggingInterceptor.java
@@ -17,8 +17,10 @@
  */
 package org.apache.portals.samples;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.Serializable;
-import java.util.logging.Logger;
 
 import javax.interceptor.AroundInvoke;
 import javax.interceptor.Interceptor;
@@ -35,7 +37,7 @@ public class LoggingInterceptor implements Serializable {
 
    private static final long serialVersionUID = -73481963162413796L;
 
-   private static final Logger logger = Logger.getLogger(LoggingInterceptor.class.getCanonicalName());
+   private static final Logger logger = LoggerFactory.getLogger(LoggingInterceptor.class.getCanonicalName());
 
    /**
     * Method called for use as an interceptor. Called before the intercepted method is 
@@ -52,17 +54,17 @@ public class LoggingInterceptor implements Serializable {
       String meth = ic.getMethod().getName();
       
       // Log method entry
-      Logger mlogger = Logger.getLogger(cls);
-      mlogger.entering(cls, meth);
+      Logger mlogger = LoggerFactory.getLogger(cls);
+      mlogger.debug("ENTERING: " + cls, meth);
       
       // Continue through chain until actual bean method is executed
       Object obj = ic.proceed(); 
    
       // this logging statement is only for debugging.
-      logger.fine("Method " + meth + " has been called.");
+      logger.debug("Method " + meth + " has been called.");
       
       // Now log the exit
-      mlogger.exiting(cls, meth);
+      mlogger.debug("EXITING: " + cls, meth);
 
       return obj;
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/MultipartPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/MultipartPortlet.java b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/MultipartPortlet.java
index ed20bf2..2114230 100644
--- a/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/MultipartPortlet.java
+++ b/PortletV3AnnotatedDemo/src/main/java/org/apache/portals/samples/MultipartPortlet.java
@@ -18,6 +18,9 @@
 
 package org.apache.portals.samples;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.awt.image.BufferedImage;
 import java.io.BufferedReader;
 import java.io.File;
@@ -32,7 +35,6 @@ import java.nio.file.Files;
 import java.nio.file.StandardCopyOption;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.logging.Logger;
 
 import javax.imageio.ImageIO;
 import javax.portlet.ActionRequest;
@@ -56,10 +58,10 @@ import javax.servlet.http.Part;
  * @author Scott Nicklous
  * 
  */
-@PortletConfiguration(portletName="MultipartPortlet", cacheExpirationTime=5,
+@PortletConfiguration(portletName="MultipartPortlet", cacheExpirationTime=0,
       title=@LocaleString("Multipart Form Test"))
 public class MultipartPortlet {
-   private static final Logger LOGGER = Logger.getLogger(MultipartPortlet.class.getName());
+   private static final Logger logger = LoggerFactory.getLogger(MultipartPortlet.class);
 
    private static final String JSP    = "/WEB-INF/jsp/multipartDialog.jsp";
    private static final String TMP    = "/MultipartPortlet/temp/";
@@ -76,7 +78,7 @@ public class MultipartPortlet {
       String clr = req.getActionParameters().getValue("color");
       txt.append("Color: ").append(clr);
       lines.add(txt.toString());
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
 
       resp.getRenderParameters().setValue("color", clr);
 
@@ -93,7 +95,7 @@ public class MultipartPortlet {
          txt.append(", size: ").append(part.getSize());
          txt.append(", content type: ").append(part.getContentType());
          lines.add(txt.toString());
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
          txt.setLength(0);
          txt.append("Headers: ");
          String sep = "";
@@ -102,7 +104,7 @@ public class MultipartPortlet {
             sep = ", ";
          }
          lines.add(txt.toString());
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
 
          // Store the file in a temporary location in the webapp where it can be served. 
 
@@ -139,7 +141,7 @@ public class MultipartPortlet {
             e.printStackTrace(pw);
             pw.flush();
             txt.append(sw.toString());
-            LOGGER.warning(txt.toString());
+            logger.warn(txt.toString());
          }
       } else {
          lines.add("file part was null");
@@ -253,7 +255,7 @@ public class MultipartPortlet {
          e.printStackTrace(pw);
          pw.flush();
          txt.append(sw.toString());
-         LOGGER.warning(txt.toString());
+         logger.warn(txt.toString());
       }
       
    }
@@ -271,11 +273,11 @@ public class MultipartPortlet {
       String path = System.getProperty("java.io.tmpdir") + TMP;
       File dir = new File(path);
       if (!dir.exists()) {
-         LOGGER.fine("Creating directory. Path: " + dir.getCanonicalPath());
+         logger.debug("Creating directory. Path: " + dir.getCanonicalPath());
          Files.createDirectories(dir.toPath());
       }
       tmp = new File(dir, TFILE);
-      LOGGER.fine("Temp file: " + tmp.getCanonicalPath());
+      logger.debug("Temp file: " + tmp.getCanonicalPath());
 
       return tmp;
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3AnnotatedDemo/src/main/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/PortletV3AnnotatedDemo/src/main/resources/log4j.properties b/PortletV3AnnotatedDemo/src/main/resources/log4j.properties
new file mode 100644
index 0000000..4b93009
--- /dev/null
+++ b/PortletV3AnnotatedDemo/src/main/resources/log4j.properties
@@ -0,0 +1,6 @@
+log4j.rootLogger=INFO, R
+log4j.appender.R=org.apache.log4j.ConsoleAppender
+log4j.appender.R.layout=org.apache.log4j.PatternLayout
+log4j.appender.R.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}:%L] %m%n
+
+log4j.logger.org.apache.portals.samples=DEBUG

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/pom.xml
----------------------------------------------------------------------
diff --git a/PortletV3Demo/pom.xml b/PortletV3Demo/pom.xml
index 0eebd2e..34a003b 100644
--- a/PortletV3Demo/pom.xml
+++ b/PortletV3Demo/pom.xml
@@ -45,6 +45,10 @@
          <artifactId>tomcat-servlet-api</artifactId>
          <scope>provided</scope>
       </dependency>
+      <dependency>
+         <groupId>org.slf4j</groupId>
+         <artifactId>slf4j-api</artifactId>
+      </dependency>
 
       <!-- for eclipse JSP tooling purposes -->
       <dependency>
@@ -131,6 +135,16 @@
                 <artifactId>taglibs-standard-jstlel</artifactId>
                 <scope>compile</scope>
             </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-jdk14</artifactId>
+                <scope>provided</scope>
+            </dependency>
          </dependencies>
          
          <build>
@@ -138,7 +152,9 @@
                <plugin>
                  <artifactId>maven-war-plugin</artifactId>
                  <configuration>
-                   <archiveClasses>false</archiveClasses>
+                   <packagingExcludes>
+                       WEB-INF/classes/log4j.properties
+                   </packagingExcludes>
                  </configuration>
                </plugin>
                <!-- workaround for war processing of m-r-r-plugin causing the generated NOTICE and LICENSE file to be put under WEB-INF/classes/META-INF -->

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/AuthSCPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/AuthSCPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/AuthSCPortlet.java
index daa1e3f..1981470 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/AuthSCPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/AuthSCPortlet.java
@@ -18,13 +18,14 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.PARAM_STATUSCODE;
 
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Arrays;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.inject.Inject;
 import javax.portlet.ActionParameters;
@@ -48,9 +49,8 @@ import javax.portlet.ResourceResponse;
 public class AuthSCPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = AuthSCPortlet.class.getName();
-   private static final Logger logger = Logger.getLogger(LOG_CLASS);
-   private static final boolean isDebug = logger.isLoggable(Level.FINE);
+   private static final Logger logger = LoggerFactory.getLogger(AuthSCPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
 
    @Override
    public void init() throws PortletException {
@@ -84,7 +84,7 @@ public class AuthSCPortlet extends GenericPortlet {
       if (scText != null && scText.matches("\\d+")) {
          int sc = Integer.parseInt(scText);
          if (isDebug) {
-            logger.fine("Setting HTTP status code to: " + sc);
+            logger.debug("Setting HTTP status code to: " + sc);
          }
          resp.setStatus(sc);
       }
@@ -116,7 +116,7 @@ public class AuthSCPortlet extends GenericPortlet {
             sb.append("\nName: ").append(k);
             sb.append(", Values: ").append(Arrays.toString(ap.getValues(k)));
          }
-         logger.fine(sb.toString());
+         logger.debug(sb.toString());
       }
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/ColorSelPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/ColorSelPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/ColorSelPortlet.java
index acf1a98..711a480 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/ColorSelPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/ColorSelPortlet.java
@@ -39,10 +39,6 @@ import javax.xml.namespace.QName;
  */
 public class ColorSelPortlet extends GenericPortlet {
 
-   // Set up logging
-   // private static final String LOG_CLASS = ColorSelPortlet.class.getName();
-   // private final Logger logger = Logger.getLogger(LOG_CLASS);
-
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/DependencyPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/DependencyPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/DependencyPortlet.java
index 4aa386a..ace0731 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/DependencyPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/DependencyPortlet.java
@@ -19,10 +19,12 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Inject;
@@ -46,7 +48,7 @@ import javax.portlet.annotations.RenderMethod;
  */
 @ApplicationScoped
 public class DependencyPortlet {
-   private static final Logger LOGGER = Logger.getLogger(DependencyPortlet.class.getName());
+   private static final Logger logger = LoggerFactory.getLogger(DependencyPortlet.class);
    
    public static final String PARAM_VER     = "version";
    public static final String PARAM_VER_1   = "1.12.3";
@@ -132,7 +134,7 @@ public class DependencyPortlet {
       txt.append("Portlet name: ").append(pcfg.getPortletName());
       txt.append(", parameter: ").append(PARAM_VER);
       txt.append(", value: ").append(vers);
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
       
    }
 
@@ -146,7 +148,7 @@ public class DependencyPortlet {
       StringBuilder txt = new StringBuilder(128);
       txt.append("Parameter: ").append(PARAM_VER);
       txt.append(", value: ").append(vers);
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
 
    }
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/HeaderPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/HeaderPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/HeaderPortlet.java
index e034f75..206a50f 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/HeaderPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/HeaderPortlet.java
@@ -26,8 +26,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
@@ -47,6 +45,8 @@ import javax.portlet.annotations.PortletConfiguration;
 import javax.portlet.annotations.LocaleString;
 import javax.servlet.http.Cookie;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.w3c.dom.Element;
 
 /**
@@ -56,8 +56,8 @@ import org.w3c.dom.Element;
                       title=@LocaleString("Header Phase Test Portlet"))
 public class HeaderPortlet extends GenericPortlet {
 
-   private static final Logger  LOGGER  = Logger.getLogger(HeaderPortlet.class.getName());
-   private static final boolean isDebug = LOGGER.isLoggable(Level.FINE);
+   private static final Logger logger  = LoggerFactory.getLogger(HeaderPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
    
    @Override
    public void renderHeaders(HeaderRequest req, HeaderResponse resp) throws PortletException, IOException {
@@ -71,7 +71,7 @@ public class HeaderPortlet extends GenericPortlet {
          txt.append(req.getPortalContext().getProperty(PortalContext.MARKUP_HEAD_ELEMENT_SUPPORT));
          txt.append(", RENDER_PART: ");
          txt.append((String)req.getAttribute(PortletRequest.RENDER_PART));
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
       // Add link tag to head section to include the style sheet
@@ -124,7 +124,7 @@ public class HeaderPortlet extends GenericPortlet {
          txt.append("Rendering. ");
          txt.append("RENDER_PART: ");
          txt.append((String)req.getAttribute(PortletRequest.RENDER_PART));
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
       resp.setContentType("text/html");

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/ImageSelPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/ImageSelPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/ImageSelPortlet.java
index 3ea0fb7..99498ca 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/ImageSelPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/ImageSelPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.PARAM_IMGNAME;
 import static basic.portlet.Constants.PARAM_SELTYPE;
 import static basic.portlet.Constants.PARAM_SELTYPE_RADIO;
@@ -26,8 +29,6 @@ import static basic.portlet.Constants.imgMap;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
@@ -46,14 +47,13 @@ import javax.portlet.ResourceResponse;
 public class ImageSelPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ImageSelPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(ImageSelPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/LongPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/LongPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/LongPortlet.java
index b5be4ff..b82408f 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/LongPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/LongPortlet.java
@@ -18,13 +18,14 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.ATTRIB_LONGLINES;
 
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.inject.Inject;
 import javax.portlet.ActionParameters;
@@ -48,9 +49,8 @@ import javax.portlet.ResourceResponse;
 public class LongPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = LongPortlet.class.getName();
-   private static final Logger logger = Logger.getLogger(LOG_CLASS);
-   private static final boolean isDebug = logger.isLoggable(Level.FINE);
+   private static final Logger logger = LoggerFactory.getLogger(LongPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
    
    private static final ArrayList<String> lines = new ArrayList<String>();
    static {
@@ -180,7 +180,7 @@ public class LongPortlet extends GenericPortlet {
             sb.append("\nName: ").append(k);
             sb.append(", Values: ").append(Arrays.toString(ap.getValues(k)));
          }
-         logger.fine(sb.toString());
+         logger.debug(sb.toString());
       }
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/MessageBoxPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/MessageBoxPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/MessageBoxPortlet.java
index 5a4ddd5..12ebebe 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/MessageBoxPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/MessageBoxPortlet.java
@@ -18,13 +18,14 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.*;
 
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.ArrayList;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
@@ -44,14 +45,13 @@ import javax.portlet.ResourceResponse;
 public class MessageBoxPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = MessageBoxPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(MessageBoxPortlet.class);
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");
@@ -70,7 +70,7 @@ public class MessageBoxPortlet extends GenericPortlet {
       // the only action for this portlet is to reset the stored messages
       
       String actionName = req.getParameter("action");
-      logger.fine("MBP: Resetting messages. numMsgs = 0,  actionName = " + actionName);
+      logger.debug("MBP: Resetting messages. numMsgs = 0,  actionName = " + actionName);
 
       ArrayList<String> msgs = new ArrayList<String>();
       StringBuffer sb = new StringBuffer();
@@ -104,7 +104,7 @@ public class MessageBoxPortlet extends GenericPortlet {
          msgs.clear();
       }
       
-      logger.fine("MBP: Processing message event. Current # messages = " + msgs.size());
+      logger.debug("MBP: Processing message event. Current # messages = " + msgs.size());
 
       try {
          // Both pieces of info are transported in a delimted string rather than 
@@ -129,7 +129,7 @@ public class MessageBoxPortlet extends GenericPortlet {
       
       msgs.add(sb.toString());
       
-      logger.fine("Adding message: " + sb.toString());
+      logger.debug("Adding message: " + sb.toString());
 
       resp.setRenderParameter(PARAM_NUM_MSGS, Integer.toString(msgs.size()));
       req.getPortletSession().setAttribute(ATTRIB_MSGS, msgs);

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/ParamTestPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/ParamTestPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/ParamTestPortlet.java
index ac06dd2..4fbd043 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/ParamTestPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/ParamTestPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.*;
 
 import java.io.IOException;
@@ -26,8 +29,6 @@ import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionParameters;
 import javax.portlet.ActionRequest;
@@ -51,9 +52,8 @@ import javax.portlet.ResourceResponse;
 public class ParamTestPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ParamTestPortlet.class.getName();
-   private static final Logger logger = Logger.getLogger(LOG_CLASS);
-   private static final boolean isDebug = logger.isLoggable(Level.FINE);
+   private static final Logger logger = LoggerFactory.getLogger(ParamTestPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
    
    private final HashSet<String> prpNames = new HashSet<String>();
    
@@ -78,7 +78,7 @@ public class ParamTestPortlet extends GenericPortlet {
       if (isDebug) {
          StringBuilder txt = new StringBuilder();
          txt.append("Render parameter names: ").append(pnSet.toString());
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
       }
       
       // don't display the control parameters
@@ -138,7 +138,7 @@ public class ParamTestPortlet extends GenericPortlet {
             sb.append("\nName: ").append(k);
             sb.append(", Values: ").append(Arrays.toString(ap.getValues(k)));
          }
-         logger.fine(sb.toString());
+         logger.debug(sb.toString());
       }
 
       // decide how the set / remove is to be done
@@ -210,12 +210,12 @@ public class ParamTestPortlet extends GenericPortlet {
       }
       
       if (isDebug) {
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
          txt = new StringBuilder("Parsed Action Parameters: ");
          txt.append(", Name: ").append(pn);
          txt.append(", Value string: >>").append(pv).append("<<");
          txt.append(", Parsed Values: ").append(Arrays.toString(parsedVals));
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/PortletConfigPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/PortletConfigPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/PortletConfigPortlet.java
index 8c67cb7..9d834b2 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/PortletConfigPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/PortletConfigPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.ATTRIB_PMS;
 import static basic.portlet.Constants.ATTRIB_PRPS;
 import static basic.portlet.Constants.ATTRIB_WS;
@@ -28,8 +31,6 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
@@ -54,8 +55,7 @@ import javax.xml.namespace.QName;
 public class PortletConfigPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = PortletConfigPortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(PortletConfigPortlet.class);
    
    @Override
    protected void doHelp(RenderRequest request, RenderResponse response) throws PortletException, IOException {
@@ -80,8 +80,8 @@ public class PortletConfigPortlet extends GenericPortlet {
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/RedirectPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/RedirectPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/RedirectPortlet.java
index c568412..5025ddb 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/RedirectPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/RedirectPortlet.java
@@ -18,9 +18,10 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionParameters;
 import javax.portlet.ActionRequest;
@@ -46,8 +47,8 @@ import static basic.portlet.Constants.*;
 @PortletConfiguration(portletName="V3RedirectPortlet")
 public class RedirectPortlet extends GenericPortlet {
 
-   private static final Logger  LOGGER  = Logger.getLogger(RedirectPortlet.class.getName());
-   private static final boolean isDebug = LOGGER.isLoggable(Level.FINE);
+   private static final Logger logger  = LoggerFactory.getLogger(RedirectPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
 
    protected void doView(RenderRequest req, RenderResponse resp) throws PortletException, IOException {
 
@@ -102,7 +103,7 @@ public class RedirectPortlet extends GenericPortlet {
       resp.sendRedirect(url);
       
       if (isDebug) {
-         LOGGER.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/ResourcePortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/ResourcePortlet.java b/PortletV3Demo/src/main/java/basic/portlet/ResourcePortlet.java
index e4e2cd7..7985b41 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/ResourcePortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/ResourcePortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.PARAM_BORDER_COLOR;
 import static basic.portlet.Constants.PARAM_COLOR;
 import static basic.portlet.Constants.PARAM_IMGNAME;
@@ -26,8 +29,6 @@ import static basic.portlet.Constants.DEFAULT_IMAGE;
 
 import java.io.IOException;
 import java.io.PrintWriter;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
@@ -47,15 +48,14 @@ import javax.portlet.ResourceResponse;
 public class ResourcePortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = ResourcePortlet.class.getName();
-   private final Logger logger = Logger.getLogger(LOG_CLASS);
+   private final Logger logger = LoggerFactory.getLogger(ResourcePortlet.class);
 
 
    protected void doView(RenderRequest req, RenderResponse resp)
          throws PortletException, IOException {
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "doView", "Entry");
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "doView", "Entry");
       }
       
       resp.setContentType("text/html");
@@ -96,8 +96,8 @@ public class ResourcePortlet extends GenericPortlet {
       String clr = req.getParameter(PARAM_COLOR);
       clr = (clr == null) ? "#FFFFFF" : clr;
       
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "serveResource", "photo=" + key + ", bgcolor=" + clr + ", border=" + bc);
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "serveResource", "photo=" + key + ", bgcolor=" + clr + ", border=" + bc);
       }
       
       // add action button if cacheability allows -

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/TagLibPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/TagLibPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/TagLibPortlet.java
index 2474975..df62849 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/TagLibPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/TagLibPortlet.java
@@ -18,10 +18,12 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import java.util.logging.Logger;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Inject;
@@ -77,7 +79,7 @@ public class TagLibPortlet {
 
    private static final String PROXY = "/ActEvtProxy";
 
-   private static final Logger LOGGER     = Logger.getLogger(TagLibPortlet.class.getName());
+   private static final Logger logger     = LoggerFactory.getLogger(TagLibPortlet.class);
 
    public static final String  PHASE      = "phase";
    public static final String  PHASE_HDR  = "header";
@@ -161,7 +163,7 @@ public class TagLibPortlet {
       txt.append("Portlet name: ").append(pcfg.getPortletName());
       txt.append(", phase: ").append(phase);
       txt.append(", test type: ").append(ttype);
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
 
       if (phase.equals(PHASE_REN)) {
          req.setAttribute(ATTRIB_PHASE_TITLE, req.getAttribute(LIFECYCLE_PHASE));
@@ -257,7 +259,7 @@ public class TagLibPortlet {
       StringBuilder txt = new StringBuilder(128);
       txt.append("Parameter: ").append(PHASE);
       txt.append(", value: ").append(phase);
-      LOGGER.fine(txt.toString());
+      logger.debug(txt.toString());
 
    }
    

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/URLFilter.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/URLFilter.java b/PortletV3Demo/src/main/java/basic/portlet/URLFilter.java
index 4c24faf..739b0f4 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/URLFilter.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/URLFilter.java
@@ -19,8 +19,9 @@
 
 package basic.portlet;
 
-import java.util.logging.Level;
-import java.util.logging.Logger;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import javax.portlet.ActionURL;
 import javax.portlet.PortletURLGenerationListener;
@@ -32,16 +33,15 @@ import javax.portlet.ResourceURL;
  *
  */
 public class URLFilter implements PortletURLGenerationListener<RenderURL, ActionURL> {
-   private static final String LOG_CLASS = URLFilter.class.getName();
-   private static final Logger logger = Logger.getLogger(LOG_CLASS);
+   private static final Logger logger = LoggerFactory.getLogger(URLFilter.class);
 
    /* (non-Javadoc)
     * @see javax.portlet.PortletURLGenerationListener#filterActionURL(javax.portlet.PortletURL)
     */
    @Override
    public void filterActionURL(ActionURL actionURL) {
-      if (logger.isLoggable(Level.FINE)) {
-         logger.logp(Level.FINE, this.getClass().getName(), "filterActionURL", 
+      if (logger.isDebugEnabled()) {
+         logger.debug(this.getClass().getName(), "filterActionURL",
                "Filtered action URL. argument class: " + actionURL.getClass().getCanonicalName());
       }
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/48e4561a/PortletV3Demo/src/main/java/basic/portlet/UrlAPTestPortlet.java
----------------------------------------------------------------------
diff --git a/PortletV3Demo/src/main/java/basic/portlet/UrlAPTestPortlet.java b/PortletV3Demo/src/main/java/basic/portlet/UrlAPTestPortlet.java
index bf5913c..0ab4134 100644
--- a/PortletV3Demo/src/main/java/basic/portlet/UrlAPTestPortlet.java
+++ b/PortletV3Demo/src/main/java/basic/portlet/UrlAPTestPortlet.java
@@ -18,6 +18,9 @@
 
 package basic.portlet;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import static basic.portlet.Constants.*;
 
 import java.io.IOException;
@@ -27,8 +30,6 @@ import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.Set;
 import java.util.TreeMap;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 import javax.portlet.ActionParameters;
 import javax.portlet.ActionRequest;
@@ -57,9 +58,8 @@ import javax.portlet.ResourceResponse;
 public class UrlAPTestPortlet extends GenericPortlet {
 
    // Set up logging
-   private static final String LOG_CLASS = UrlAPTestPortlet.class.getName();
-   private static final Logger logger = Logger.getLogger(LOG_CLASS);
-   private static final boolean isDebug = logger.isLoggable(Level.FINE);
+   private static final Logger logger = LoggerFactory.getLogger(UrlAPTestPortlet.class);
+   private static final boolean isDebug = logger.isDebugEnabled();
    
    private final HashSet<String> prpNames = new HashSet<String>();
    
@@ -84,7 +84,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
       if (isDebug) {
          StringBuilder txt = new StringBuilder();
          txt.append("Render parameter names: ").append(pnSet.toString());
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
       }
       
       // don't display the control parameters
@@ -174,13 +174,13 @@ public class UrlAPTestPortlet extends GenericPortlet {
       
       aurl = resp.createActionURL(ALL);
       mrp = aurl.getRenderParameters().clone();
-      logger.fine("MRP from request # entries: " + mrp.size());
+      logger.debug("MRP from request # entries: " + mrp.size());
       
       {
          aurl = resp.createActionURL(ALL);
          MutableRenderParameters mrp2 = mrp.clone();
          mrp2.clearPrivate();
-         logger.fine("MRP2 afer clearPrivate # entries: " + mrp2.size());
+         logger.debug("MRP2 afer clearPrivate # entries: " + mrp2.size());
          aurl.getRenderParameters().set(mrp2);
          urls.put(" 7 Clear clone private", aurl.toString());
       }
@@ -189,7 +189,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          aurl = resp.createActionURL(ALL);
          MutableRenderParameters mrp2 = mrp.clone();
          mrp2.clearPublic();
-         logger.fine("MRP2 afer clearPublic # entries: " + mrp2.size());
+         logger.debug("MRP2 afer clearPublic # entries: " + mrp2.size());
          aurl.getRenderParameters().set(mrp2);
          urls.put(" 8 Clear clone public", aurl.toString());
       }
@@ -198,7 +198,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          aurl = resp.createActionURL(ALL);
          MutableRenderParameters mrp2 = mrp.clone();
          mrp2.clear();
-         logger.fine("MRP2 afer clear # entries: " + mrp2.size());
+         logger.debug("MRP2 afer clear # entries: " + mrp2.size());
          aurl.getRenderParameters().set(mrp2);
          urls.put(" 9 Clear clone all", aurl.toString());
       }
@@ -208,7 +208,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          MutableRenderParameters mrp2 = mrp.clone();
          mrp2.clear();
          mrp2.setValue(name1, val1);
-         logger.fine("MRP2 afer adding 1: # entries: " + mrp2.size());
+         logger.debug("MRP2 afer adding 1: # entries: " + mrp2.size());
          aurl.getRenderParameters().add(mrp2);
          urls.put(" A Add thru clone 1", aurl.toString());
       }
@@ -219,7 +219,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          mrp2.clear();
          mrp2.setValue(name1, val1);
          mrp2.setValue(name2, val2);
-         logger.fine("MRP2 afer adding 2: # entries: " + mrp2.size());
+         logger.debug("MRP2 afer adding 2: # entries: " + mrp2.size());
          aurl.getRenderParameters().add(mrp2);
          urls.put(" B Add thru clone 2", aurl.toString());
       }
@@ -231,7 +231,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          mrp2.setValue(name1, val1);
          mrp2.setValue(name2, val2);
          mrp2.setValue(name3, val3);
-         logger.fine("MRP2 afer adding 3: # entries: " + mrp2.size());
+         logger.debug("MRP2 afer adding 3: # entries: " + mrp2.size());
          aurl.getRenderParameters().add(mrp2);
          urls.put(" C Add thru clone 3", aurl.toString());
       }
@@ -257,13 +257,13 @@ public class UrlAPTestPortlet extends GenericPortlet {
       MutableActionParameters map = aurl.getActionParameters().clone();
       map.setValue(name3, val3);
       map.setValues(name1, new String[]{val1, val2});
-      logger.fine("MAP from request # entries: " + map.size());
+      logger.debug("MAP from request # entries: " + map.size());
       
       {
          aurl = resp.createActionURL(ALL);
          MutableActionParameters map2 = map.clone();
          map2.clear();
-         logger.fine("MAP2 afer clear # entries: " + map2.size());
+         logger.debug("MAP2 afer clear # entries: " + map2.size());
          aurl.getActionParameters().set(map2);
          urls.put(" 3 AP Clear clone all", aurl.toString());
       }
@@ -271,7 +271,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
       {
          aurl = resp.createActionURL(ALL);
          MutableActionParameters map2 = map.clone();
-         logger.fine("MAP2 afer adding 2: # entries: " + map2.size());
+         logger.debug("MAP2 afer adding 2: # entries: " + map2.size());
          aurl.getActionParameters().add(map2);
          urls.put(" 4 AP Add thru clone 2", aurl.toString());
       }
@@ -283,7 +283,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
          map2.setValue(name1, val1);
          map2.setValue(name2, val2);
          map2.setValue(name3, val3);
-         logger.fine("MAP2 after adding 3: # entries: " + map2.size());
+         logger.debug("MAP2 after adding 3: # entries: " + map2.size());
          aurl.getActionParameters().add(map2);
          urls.put(" 5 AP Add thru clone 3", aurl.toString());
       }
@@ -318,7 +318,7 @@ public class UrlAPTestPortlet extends GenericPortlet {
             sb.append("\nName: ").append(k);
             sb.append(", Values: ").append(Arrays.toString(ap.getValues(k)));
          }
-         logger.fine(sb.toString());
+         logger.debug(sb.toString());
       }
       
       // get the action request render & action parameters; put them into 
@@ -451,12 +451,12 @@ public class UrlAPTestPortlet extends GenericPortlet {
       }
       
       if (isDebug) {
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
          txt = new StringBuilder("Parsed Action Parameters: ");
          txt.append(", Name: ").append(pn);
          txt.append(", Value string: >>").append(pv).append("<<");
          txt.append(", Parsed Values: ").append(Arrays.toString(parsedVals));
-         logger.fine(txt.toString());
+         logger.debug(txt.toString());
       }
 
    }