UP PREVIOUS NEXT   Technologies Internet et Education, © TECFA
  5. Cocoon - XSP

5. Cocoon - XSP

Exemple 5-1: Good Morning ou good Afternoon

<?xml version="1.0"?>
<?cocoon-process type="xsp"?>
<?cocoon-process type="xslt"?>
<?xml-stylesheet href="simple-page-html.xsl" type="text/xsl"?>
<xsp:page language="java" 
	  xmlns:xsp="http://www.apache.org/1999/XSP/Core"
	  xmlns:util="http://www.apache.org/1999/XSP/Util"
  <page>
    <title>Good morning or good afternoon</title>	
  <p> It is <util:time format="HH:mm, dd-MM-yyyy"/> </p>
  <p> .... or <util:time format=""/> if you prefer. </p>
 </page>
</xsp:page>

Exemple 5-2: Date

<?cocoon-process type="xsp"?>
<?cocoon-process type="xslt"?>
<?xml-stylesheet href="simple-page-html.xsl" type="text/xsl"?>
<xsp:page language="java" xmlns:xsp="http://www.apache.org/1999/XSP/Core"
>
    <xsp:logic>
      // Define a variable to hold the time of day
      Date now = new Date();
    </xsp:logic>
  <page>
    <title>Time of Day</title>	
    <p>   To the best of my knowledge, it's now about
      <!-- Substitute time of day here -->
      <xsp:expr>now</xsp:expr>    </p>
      </page>
</xsp:page>

5.1 Anatomie d'une simple page XSP

?cocoon-process type="xsp"?>
<?cocoon-process type="xslt"?>
<?xml-stylesheet href="VOTRE_SHEET.xsl" type="text/xsl"?>
 
<xsp:page language="java" xmlns:xsp="http://www.apache.org/1999/XSP/Core">
 
 <xsp:logic>
 du code Java (comme les scriptlets <% %> en JSP
 </xsp:logic>
 
<xsp:expr>
  une simple expression Java  (comme les <%= %> en JSP )
</xsp:expr>
 
</xsp:page>

5.2 Traitement de formulaires (GET/POST)

Exemple 5-3: Simple calcul

<xsp:page language="java" xmlns:xsp="http://www.apache.org/1999/XSP/Core">
    <page>
    <xsp:logic>
    String choice = request.getParameter("choice");
    String choice2 = request.getParameter("choice2");
    int score = 0;
 
    if ((choice == null) || (choice2 == null)) {   
        <xsp:content>Please use the <a href="form.html">form</a>
                 </xsp:content>                 
                 return;
    } else
        score = Integer.parseInt(choice) + Integer.parseInt(choice2);
    </xsp:logic>
 
        <title>Form - XSP Demo </title>
 
        <content>
        You entered <xsp:expr>choice</xsp:expr> and
        <xsp:expr>choice2</xsp:expr>.
        That makes <xsp:expr>score</xsp:expr>.
        </content>
 
        <comment>
        Made by Daniel.Schneider@tecfa.unige.ch (3/99)
        </comment>
 
    </page>
</xsp:page>
 

5.3 SQL avec ESQL

Exemple 5-4: XSP/ESQL simple 1

<?xml version="1.0"?>
<?cocoon-process type="xsp"?>
<?cocoon-process type="xslt"?>
<?xml-stylesheet href="simple-taglib-html.xsl" type="text/xsl"?>
 
<xsp:page
  language="java"
  xmlns:xsp="http://www.apache.org/1999/XSP/Core"
  xmlns:esql="http://apache.org/cocoon/SQL/v2" >
<page>
 <title>Cocoon XSP ESQL TagLibs demo</title>
 <author> <name>Daniel Schneider, code stolen from examples in the Cocoon distribution</name> </author>
<p> Shows some of Cocoon's SQL/XSP tag library. Also shows how to build a simple table with xsl </p>
  <esql:connection>
   <esql:driver>org.gjt.mm.mysql.Driver</esql:driver>
   <esql:dburl>jdbc:mysql://tecfa.unige.ch/demo</esql:dburl>
   <esql:username>nobody</esql:username>
   <esql:password></esql:password>
   
 <esql:execute-query>
    <esql:query>SELECT * FROM demo1 order by id;</esql:query>
   
    <esql:results>
     <ROWSET>
      <esql:row-results>
       <ROW>
       <esql:get-columns/>
		  </ROW>
     </esql:row-results>
     </ROWSET>
    </esql:results>
 
   </esql:execute-query>
  </esql:connection>
<p> See <a href="./">directory and appended README.html</a> for more information. </p>
</page>
</xsp:page>

Exemple 5-5: XSP/ESQL simple 2

<esql:results>
  <ROWSET>
   <esql:row-results>
    <ROW>
		<id><esql:get-int column="id"/></id>
		<login><esql:get-string column="login"/></login>
		<fullname><esql:get-string column="fullname"/></fullname>
		<url><esql:get-string column="url"/></url>
		<food><esql:get-string column="food"/></food>
    	</ROW>
   </esql:row-results>
  </ROWSET>
 </esql:results>

Exemple 5-6: XSP/ESQL simple 2 avec un paramètre


UP PREVIOUS NEXT -- TIE