Table of Contents
| Name | Description | 
|---|---|
| date | The current date. | 
| locale | The current locale set in the web frontend. | 
| activeProject | The currently selected                 KlarosConfiguration. If no
                                        		project is selected this variable contains the null object.
                                        	              
                            | 
                        
| user | A                 KlarosUser object representing the active user.              
                            | 
                        
| parameters | A Map of parameter objects representing the entered parameters when running the report.
                                              The map key consists of the parameter name attribute the value is of type                 de.verit.klaros.scripting.model.Parameter.              
                            | 
                        
Table E.1. Context Variables
The context variables can be accessed via SeamPDF by e.g.:
<p:text value="#{date}" />
![]()  | 
                     Note | 
|---|---|
| 
                         #{user.name} and #{user.username} contain different values. The first provides the user's real name, while the latter provides the name the user is logged in with.  | 
                  
package de.verit.klaros.scripting;
/**
 * Public interface that all seam-pdf template scripts must implement be work
 * properly.
 */
public interface KlarosScript {
    /**
     * This functions gets called by the seam-pdf servlet to execute the script.
     *
     * @param context
     *            The event context to provide all needed functions, properties
     *            and objects.
     */
    void execute(KlarosContext context);
}
<p:document xmlns:ui="http://java.sun.com/jsf/facelets"
  xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://jboss.org/schema/seam/pdf"
  title="Klaros-Testmanagement Test Suite Report" marginMirroring="true"
  author="#{user.name}" creator="#{user.name}" pageSize="A4">
  <f:facet name="header">
    <p:font size="8">
      <p:header borderWidthBottom="0.1" borderColorBottom="black" borderWidthTop="0" alignment="center">
        <p:text value="Example report - generated #{date} by #{user.name}"/>
      </p:header>
      <p:footer borderWidthTop="0.1" borderColorTop="black" borderWidthBottom="0" alignment="center">
        <p:text value="Page " />
        <p:pageNumber />
      </p:footer>
    </p:font>
  </f:facet>
  <!-- print the frontpage -->
  <p:paragraph alignment="center" spacingAfter="100">
    <p:text value="" />
  </p:paragraph>
  <p:font style="bold" size="32">
    <p:paragraph alignment="center" spacingAfter="75">
      <p:text value="Test Case Report" />
    </p:paragraph>
  </p:font>
  <p:font style="normal" size="12">
    <p:paragraph alignment="center" spacingAfter="5">
      <p:text value="Created by" />
    </p:paragraph>
  </p:font>
  <p:font style="bold" size="16">
    <p:paragraph alignment="center" spacingAfter="5">
      <p:text value="#{user.name} (#{user.email})"/>
    </p:paragraph>
  </p:font>
  <p:font style="normal" size="12">
    <p:paragraph alignment="center" spacingAfter="5">
      <p:text value="at" />
    </p:paragraph>
  </p:font>
  <p:font style="bold" size="16">
    <p:paragraph alignment="center" spacingAfter="75">
      <p:text value="#{date}" />
    </p:paragraph>
  </p:font>
  <p:newPage/>
  <ui:fragment rendered="#{results != null}">
    <p:font style="normal" size="12">
      <p:paragraph alignment="left" spacingAfter="10">
        <p:text value="The testresults for " />
      </p:paragraph>
    </p:font>
  </ui:fragment>
  <!-- Testresult table -->
  <p:table columns="4" widths="1 1 3 3">
    <!-- create the headline with bold characters -->
    <p:font size="10" style="bold">
      <p:cell horizontalAlignment="center" verticalAlignment="top">
        <p:paragraph>
          <p:text value="Name" />
        </p:paragraph>
      </p:cell>
      <p:cell horizontalAlignment="center" verticalAlignment="top">
        <p:paragraph>
          <p:text value="Result" />
        </p:paragraph>
      </p:cell>
      <p:cell horizontalAlignment="center" verticalAlignment="top">
        <p:paragraph>
          <p:text value="Testrun description" />
        </p:paragraph>
      </p:cell>
      <p:cell horizontalAlignment="center" verticalAlignment="top">
        <p:paragraph>
          <p:text value="Summary" />
        </p:paragraph>
      </p:cell>
    </p:font>
    <!-- display the attributes of the test results -->
    <p:font size="8">
      <ui:repeat value="#{results}" var="tcr">
        <p:cell verticalAlignment="top" horizontalAlignment="left">
          <p:paragraph>
            <p:text value="#{tcr.testCase.name}" />
          </p:paragraph>
        </p:cell>
        <!-- decide which color has to be displayed, based on the testresult -->
        <ui:fragment rendered="#{tcr.error}">
          <p:cell backgroundColor="rgb(255,0,0)" verticalAlignment="top" horizontalAlignment="center">
            <p:paragraph>
              <p:text value="error" />
            </p:paragraph>
          </p:cell>
        </ui:fragment>
        <ui:fragment rendered="#{tcr.failure}">
          <p:cell backgroundColor="rgb(255,215,0)" verticalAlignment="top" horizontalAlignment="center">
            <p:paragraph>
              <p:text value="failure" />
            </p:paragraph>
          </p:cell>
        </ui:fragment>
        <ui:fragment rendered="#{tcr.passed}">
          <p:cell backgroundColor="rgb(0,255,0)" verticalAlignment="top" horizontalAlignment="center">
            <p:paragraph>
              <p:text value="passed" />
            </p:paragraph>
          </p:cell>
        </ui:fragment>
        <p:cell verticalAlignment="top" horizontalAlignment="left">
          <p:paragraph>
            <p:text value="#{tcr.description}" />
          </p:paragraph>
        </p:cell>
        <p:cell verticalAlignment="top" horizontalAlignment="left">
          <p:paragraph>
            <p:text value="#{tcr.summary}" />
          </p:paragraph>
        </p:cell>
        <!-- Print the testcase description below the result row.
             To differ from the next row use a bigger border for the bottom. -->
        <p:cell colspan="4" verticalAlignment="top" horizontalAlignment="left"
                borderWidthBottom="1" paddingBottom="3">
          <p:paragraph>
            <p:font size="6" style="bold">
              <p:text value="Testcase description:" />
            </p:font>
            <p:font size="6">
              <p:text value="#{tcr.testCase.description}" />
            </p:font>
          </p:paragraph>
        </p:cell>
      </ui:repeat>
    </p:font>
  </p:table>
</p:document>