antonio     2003/12/18 05:30:15

  Modified:    
src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp/java
                        session-fw.xsl
               
src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp
                        XSPSessionFwHelper.java
  Log:
  Allow use of getxml in <xsp:expr>
  
  Revision  Changes    Path
  1.4       +4 -11     
cocoon-2.1/src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp/java/session-fw.xsl
  
  Index: session-fw.xsl
  ===================================================================
  RCS file: 
/home/cvs//cocoon-2.1/src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp/java/session-fw.xsl,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- session-fw.xsl    17 Dec 2003 04:15:14 -0000      1.3
  +++ session-fw.xsl    18 Dec 2003 13:30:15 -0000      1.4
  @@ -73,12 +73,8 @@
           
<xsp:include>org.apache.avalon.framework.component.ComponentManager</xsp:include>
           
<xsp:include>org.apache.cocoon.components.language.markup.xsp.XSPSessionFwHelper</xsp:include>
           <xsp:include>org.w3c.dom.DocumentFragment</xsp:include>
  -        <xsp:include>org.w3c.dom.Node</xsp:include>
         </xsp:structure>
   
  -      <xsp:logic>
  -        Node node = null;
  -      </xsp:logic>
         <xsl:variable name="create">
           <xsl:choose>
             <xsl:when test="@create-session='yes' or 
@create-session='true'">true</xsl:when>
  @@ -108,12 +104,9 @@
       </xsl:variable>
       <xsl:choose>
           <xsl:when test="$as='string'">
  -             <xsp:logic>
  -             node = 
((DocumentFragment)(XSPSessionFwHelper.getXML(this.manager,
  +            <xsp:expr>XSPSessionFwHelper.getXMLAsString(this.manager,
                   String.valueOf(<xsl:copy-of select="$context"/>),
  -                String.valueOf(<xsl:copy-of 
select="$path"/>)))).getFirstChild();
  -             </xsp:logic>
  -            <xsp:expr>node != null ? node.getNodeValue() : ""</xsp:expr>
  +                String.valueOf(<xsl:copy-of select="$path"/>))</xsp:expr>
           </xsl:when>
           <xsl:when test="$as='xml'">
               <xsp-session-fw:xml>
  
  
  
  1.6       +14 -1     
cocoon-2.1/src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp/XSPSessionFwHelper.java
  
  Index: XSPSessionFwHelper.java
  ===================================================================
  RCS file: 
/home/cvs//cocoon-2.1/src/blocks/session-fw/java/org/apache/cocoon/components/language/markup/xsp/XSPSessionFwHelper.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- XSPSessionFwHelper.java   15 Nov 2003 04:21:29 -0000      1.5
  +++ XSPSessionFwHelper.java   18 Dec 2003 13:30:15 -0000      1.6
  @@ -59,6 +59,7 @@
   import org.apache.cocoon.webapps.session.SessionManager;
   
   import org.w3c.dom.DocumentFragment;
  +import org.w3c.dom.Node;
   
   /**
    * The <code>Session-fw</code> object helper
  @@ -92,5 +93,17 @@
                    cm.release((Component)sessionManager);
            }
        }
  +    
  +    /** GetXML Fragment from the given session context and path
  +     *
  +     *
  +     * @param cm The ComponentManager
  +     * @param context The Session context tha define where to search
  +     * @param path The parameter path
  +     **/
  +    public static String getXMLAsString(ComponentManager cm, String context, 
String path) throws ProcessingException {
  +        Node node = getXML(cm, context, path).getFirstChild();
  +        return node != null ? node.getNodeValue() : "";
  +    }
   }
   
  
  
  

Reply via email to