Author: vgritsenko
Date: Thu Mar 31 13:19:34 2005
New Revision: 159641

URL: http://svn.apache.org/viewcvs?view=rev&rev=159641
Log:
fix bug #17771

Modified:
    
cocoon/blocks/unsupported/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/log.xsl
    cocoon/blocks/unsupported/xsp/trunk/samples/java/simple.xsp

Modified: 
cocoon/blocks/unsupported/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/log.xsl
URL: 
http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/log.xsl?view=diff&r1=159640&r2=159641
==============================================================================
--- 
cocoon/blocks/unsupported/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/log.xsl
 (original)
+++ 
cocoon/blocks/unsupported/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/log.xsl
 Thu Mar 31 13:19:34 2005
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-  Copyright 1999-2004 The Apache Software Foundation
+  Copyright 1999-2005 The Apache Software Foundation
 
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -15,21 +15,26 @@
   limitations under the License.
 -->
 
-<!-- $Id: log.xsl,v 1.2 2004/03/17 11:28:22 crossley Exp $-->
-<!--
- * XSP Logger logicsheet for the Java language
- *
- * @author <a href="mailto:[EMAIL PROTECTED]>Berin Loritsch</a>
- * @version CVS $Revision: 1.2 $ $Date: 2004/03/17 11:28:22 $
--->
-
-<xsl:stylesheet
-  version="1.0"
-  xmlns:xsp="http://apache.org/xsp";
-  xmlns:log="http://apache.org/xsp/log/2.0";
-
-  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
->
+<!--+
+    | XSP Logger logicsheet for the Java language
+    |
+    | @author <a href="mailto:[EMAIL PROTECTED]>Berin Loritsch</a>
+    | @version $Id$
+    +-->
+<xsl:stylesheet version="1.0"
+                xmlns:xsp="http://apache.org/xsp";
+                xmlns:log="http://apache.org/xsp/log/2.0";
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
+
+  <xsl:template match="xsp:page">
+    <xsp:page>
+      <xsl:apply-templates select="@*"/>
+      <xsp:logic>
+        org.apache.avalon.framework.logger.Logger _log_defaultLogger;
+      </xsp:logic>
+      <xsl:apply-templates/>
+    </xsp:page>
+  </xsl:template>
 
   <xsl:template match="log:logger">
     <xsl:variable name="name">
@@ -40,24 +45,10 @@
             <xsl:with-param name="content" select="log:name"/>
           </xsl:call-template>
         </xsl:when>
-        <xsl:otherwise>""</xsl:otherwise>
+        <xsl:otherwise>null</xsl:otherwise>
       </xsl:choose>
     </xsl:variable>
 
-<!-- Files are now under control of LogKitManager
-    <xsl:variable name="filename">
-      <xsl:choose>
-        <xsl:when test="@filename">"<xsl:value-of 
select="@filename"/>"</xsl:when>
-        <xsl:when test="filename">
-          <xsl:call-template name="get-nested-content">
-            <xsl:with-param name="content" select="log:filename"/>
-          </xsl:call-template>
-        </xsl:when>
-        <xsl:otherwise>""</xsl:otherwise>
-      </xsl:choose>
-    </xsl:variable>
--->
-
     <xsl:variable name="level">
       <xsl:choose>
         <xsl:when test="@level">"<xsl:value-of select="@level"/>"</xsl:when>
@@ -71,63 +62,57 @@
     </xsl:variable>
 
     <xsp:logic>
-      if (getLogger() == null) {
-          try {
-            String category = <xsl:value-of select="$name"/>;
-            org.apache.log.Logger logger = 
org.apache.log.Hierarchy.getDefaultHierarchy().getLoggerFor( category );
-<!--
-            if (!"".equals(<xsl:value-of select="$filename"/>)) {
-                String file = 
this.avalonContext.get(org.apache.cocoon.Constants.CONTEXT_LOG_DIR) + 
<xsl:value-of select="$filename"/>;
-                org.apache.log.LogTarget[] targets = new 
org.apache.log.LogTarget[] {
-                    new org.apache.log.output.FileOutputLogTarget(file)
-                };
-                logger.setLogTargets(targets);
-            }
--->
-            
logger.setPriority(org.apache.log.Priority.getPriorityForName(<xsl:value-of 
select="$level"/>));
-            this.enableLogging(new 
org.apache.avalon.framework.logger.LogKitLogger(logger));
-          } catch (Exception e) {
-            getLogger().error("Could not create logger for \"" +
-                               <xsl:value-of select="$name"/> + "\".", e);
-          }
+      if (_log_defaultLogger == null) {
+        _log_defaultLogger = getLogger();
+      }
+      try {
+        String category = <xsl:value-of select="$name"/>;
+        if (category != null) {
+          enableLogging(_log_defaultLogger.getChildLogger(category));
+        } else {
+          enableLogging(_log_defaultLogger);
+        }
+      } catch (Exception e) {
+        getLogger().error("Could not create logger for \"" +
+                           <xsl:value-of select="$name"/> + "\".", e);
       }
     </xsp:logic>
   </xsl:template>
 
   <xsl:template match="log:debug">
     <xsp:logic>
-      if(getLogger() != null)
+      if (getLogger().isDebugEnabled())
         getLogger().debug(<xsl:call-template name="get-log-message"/>);
     </xsp:logic>
   </xsl:template>
 
   <xsl:template match="log:info">
     <xsp:logic>
-      if(getLogger() != null)
+      if (getLogger().isInfoEnabled())
         getLogger().info(<xsl:call-template name="get-log-message"/>);
     </xsp:logic>
   </xsl:template>
 
   <xsl:template match="log:warn">
     <xsp:logic>
-      if(getLogger() != null)
+      if (getLogger().isWarnEnabled())
         getLogger().warn(<xsl:call-template name="get-log-message"/>);
     </xsp:logic>
   </xsl:template>
 
   <xsl:template match="log:error">
     <xsp:logic>
-      if(getLogger() != null)
+      if (getLogger().isErrorEnabled())
         getLogger().error(<xsl:call-template name="get-log-message"/>);
     </xsp:logic>
   </xsl:template>
 
   <xsl:template match="log:fatal-error">
     <xsp:logic>
-      if(getLogger() != null)
-        getLogger().fatalError(<xsl:call-template name="get-log-message"/>);
+      getLogger().fatalError(<xsl:call-template name="get-log-message"/>);
     </xsp:logic>
   </xsl:template>
+
 
   <xsl:template name="get-nested-content">
     <xsl:param name="content"/>

Modified: cocoon/blocks/unsupported/xsp/trunk/samples/java/simple.xsp
URL: 
http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/xsp/trunk/samples/java/simple.xsp?view=diff&r1=159640&r2=159641
==============================================================================
--- cocoon/blocks/unsupported/xsp/trunk/samples/java/simple.xsp (original)
+++ cocoon/blocks/unsupported/xsp/trunk/samples/java/simple.xsp Thu Mar 31 
13:19:34 2005
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-  Copyright 1999-2004 The Apache Software Foundation
+  Copyright 1999-2005 The Apache Software Foundation
 
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -15,8 +15,10 @@
   limitations under the License.
 -->
 
-<!-- CVS $Id$ -->
-
+<!--+
+    | Simple XSP example.
+    | $Id$
+    +-->
 <xsp:page language="java"
           xmlns:xsp="http://apache.org/xsp";
           xmlns:xsp-request="http://apache.org/xsp/request/2.0";
@@ -25,88 +27,85 @@
           xmlns:input="http://apache.org/cocoon/xsp/input/1.0";>
 
   <page>
-   <log:logger name="xsp-sample" filename="xsp-sample.log"/>
-   <log:debug>Processing the beginning of the page</log:debug>
+    <!-- Use own logger sub-category for this logicsheet -->
+    <log:logger name="simple"/>
+    <log:debug>Processing the beginning of the page</log:debug>
+
+    <title>A Simple XSP Page</title>
+
+    <content>
+      <capture:fragment-variable name="page_part">
+        <para>
+          These 2 paragraphs were generated at the start of the XSP,
+          and captured for insertion at the end.
+        </para>
+        <para>Brought to you by Cocoon at <xsp:expr>new 
Date()</xsp:expr>.</para>
+      </capture:fragment-variable>
+
+      <para>Hi there! I'm a simple dynamic page generated by XSP (eXtensible 
Server Pages).</para>
+
+      <para>I was requested as the URI: <b><xsp-request:get-uri 
as="xml"/></b></para>
+
+      <para>The following list was dynamically generated:</para>
+      <ul>
+        <xsp:logic>
+          for (int i=0; i &lt; 3; i++) {
+            <li>
+              Item <xsp:expr>i</xsp:expr>
+            </li>
+          }
+        </xsp:logic>
+      </ul>
+
+      <xsp:element>
+        <xsp:param 
name="name"><xsp:expr>"P".toLowerCase()</xsp:expr></xsp:param>
+        <xsp:attribute name="align">left</xsp:attribute>
+        <i>
+          This paragraph was dynamically generated by logic embedded in the 
page
+        </i>
+      </xsp:element>
+
+      <para>
+        Request parameter "name" as XML:
+        <xsp-request:get-parameter name="name" default="Not provided" 
as="xml"/>
+      </para>
+
+      <para>
+        Request parameter "name" as String:
+        <xsp-request:get-parameter name="name" default="Not provided"/>
+      </para>
+
+      <para>
+        Request parameter "name" as iso-8859-2 encoded String (with servlet
+        container encoding iso-8859-1):
+        <xsp-request:get-parameter name="name" default="Not provided"
+          form-encoding="iso-8859-2" container-encoding="iso-8859-1"/>
+      </para>
+
+      <xsp-request:get-parameter-values name="name"/>
+      <xsp-request:get-parameter-names/>
+
+      <para>
+        Header "user-agent" as XML:
+        <xsp-request:get-header name="user-agent" as="xml"/>
+      </para>
+
+      <para>
+        Header "user-agent" as String:
+        <xsp-request:get-header name="user-agent"/>
+      </para>
+
+      <para>
+        Access to input modules configured in cocoon.xconf:
+        <input:get-attribute module="cocoon-properties" name="fullname"/>
+        <input:get-attribute module="cocoon-properties" name="version"/>
+      </para>
 
-   <title>A Simple XSP Page</title>
+      <xsp-request:get-header-names/>
 
-   <content>
+      <xsp:expr>page_part</xsp:expr>
+    </content>
 
-   <capture:fragment-variable name="page_part">
-     <para>These 2 paragraphs were generated at the start of the XSP, and 
captured for insertion at the end.</para>
-
-     <para>Brought to you by Cocoon at <xsp:expr>new Date()</xsp:expr>.</para>
-   </capture:fragment-variable>
-
-   <para>Hi there! I'm a simple dynamic page generated by XSP (eXtensible 
Server Pages).</para>
-
-   <para>I was requested as the URI: <b><xsp-request:get-uri 
as="xml"/></b></para>
-
-   <para>The following list was dynamically generated:</para>
-
-   <ul>
-     <xsp:logic>
-       <![CDATA[
-       for (int i=0; i<3; i++) {
-       ]]>
-         <li>
-           Item <xsp:expr>i</xsp:expr>
-         </li>
-       <![CDATA[
-       } 
-       ]]>
-     </xsp:logic>
-   </ul>
-
-   <xsp:element>
-     <xsp:param name="name"><xsp:expr>"P".toLowerCase()</xsp:expr></xsp:param>
-     <xsp:attribute name="align">left</xsp:attribute>
-     <i>
-       This paragraph was dynamically generated by logic embedded in the page
-     </i>
-   </xsp:element>
-
-   <para>
-     Request parameter "name" as XML:
-     <xsp-request:get-parameter name="name" default="Not provided" as="xml"/>
-   </para>
-
-   <para>
-     Request parameter "name" as String:
-     <xsp-request:get-parameter name="name" default="Not provided"/>
-   </para>
-
-   <para>
-     Request parameter "name" as iso-8859-2 encoded String (with servlet
-     container encoding iso-8859-1):
-     <xsp-request:get-parameter name="name" default="Not provided"
-       form-encoding="iso-8859-2" container-encoding="iso-8859-1"/>
-   </para>
-
-   <xsp-request:get-parameter-values name="name"/>
-
-   <xsp-request:get-parameter-names/>
-
-   <para>
-     Header "user-agent" as XML:
-     <xsp-request:get-header name="user-agent" as="xml"/>
-   </para>
-
-   <para>
-     Header "user-agent" as String:
-     <xsp-request:get-header name="user-agent"/>
-   </para>
-   
-   <para>
-     Access to input modules configured in cocoon.xconf: 
-     <input:get-attribute module="cocoon-properties" name="fullname"/>
-     <input:get-attribute module="cocoon-properties" name="version"/>
-   </para>
-
-   <xsp-request:get-header-names/>
-
-   <xsp:expr>page_part</xsp:expr>
-   </content>
-   <log:debug>Processing the end of the page</log:debug>
+    <log:debug>Processing the end of the page</log:debug>
   </page>
 </xsp:page>


Reply via email to