From 870c0522d9c919e36eb5a25816adb1186967b0de Mon Sep 17 00:00:00 2001
From: nie <nie@informatik.uni-kiel.de>
Date: Tue, 20 Dec 2011 17:30:18 +0100
Subject: [PATCH] Added an initial version of the project.

---
 .gitignore                        |    3 +-
 build.xml                         |   71 ++
 lib/ui-darkness-1.0.2.jar         |  Bin 0 -> 32024 bytes
 nbproject/ant-deploy.xml          |   49 ++
 nbproject/build-impl.xml          | 1077 +++++++++++++++++++++++++++++
 nbproject/genfiles.properties     |    8 +
 nbproject/project.properties      |   87 +++
 nbproject/project.xml             |   35 +
 src/conf/MANIFEST.MF              |    2 +
 src/java/beans/ComponentBean.java |   35 +
 src/java/beans/TreeBean.java      |   32 +
 web/META-INF/context.xml          |    2 +
 web/WEB-INF/beans.xml             |    5 +
 web/WEB-INF/web.xml               |   28 +
 web/main.xhtml                    |   61 ++
 15 files changed, 1494 insertions(+), 1 deletion(-)
 create mode 100644 build.xml
 create mode 100644 lib/ui-darkness-1.0.2.jar
 create mode 100644 nbproject/ant-deploy.xml
 create mode 100644 nbproject/build-impl.xml
 create mode 100644 nbproject/genfiles.properties
 create mode 100644 nbproject/project.properties
 create mode 100644 nbproject/project.xml
 create mode 100644 src/conf/MANIFEST.MF
 create mode 100644 src/java/beans/ComponentBean.java
 create mode 100644 src/java/beans/TreeBean.java
 create mode 100644 web/META-INF/context.xml
 create mode 100644 web/WEB-INF/beans.xml
 create mode 100644 web/WEB-INF/web.xml
 create mode 100644 web/main.xhtml

diff --git a/.gitignore b/.gitignore
index fe66d427..2956a48c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 
-/tmp/
\ No newline at end of file
+/tmp/
+/build/
\ No newline at end of file
diff --git a/build.xml b/build.xml
new file mode 100644
index 00000000..c3856935
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- You may freely edit this file. See commented blocks below for -->
+<!-- some examples of how to customize the build. -->
+<!-- (If you delete it and reopen the project it will be recreated.) -->
+<!-- By default, only the Clean and Build commands use this build script. -->
+<!-- Commands such as Run, Debug, and Test only use this build script if -->
+<!-- the Compile on Save feature is turned off for the project. -->
+<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
+<!-- in the project's Project Properties dialog box.-->
+<project name="Kieker.WebGUI" default="default" basedir=".">
+    <description>Builds, tests, and runs the project Kieker.WebGUI.</description>
+    <import file="nbproject/build-impl.xml"/>
+    <!--
+
+    There exist several targets which are by default empty and which can be 
+    used for execution of your tasks. These targets are usually executed 
+    before and after some main targets. They are: 
+
+      -pre-init:                 called before initialization of project properties 
+      -post-init:                called after initialization of project properties 
+      -pre-compile:              called before javac compilation 
+      -post-compile:             called after javac compilation 
+      -pre-compile-single:       called before javac compilation of single file
+      -post-compile-single:      called after javac compilation of single file
+      -pre-compile-test:         called before javac compilation of JUnit tests
+      -post-compile-test:        called after javac compilation of JUnit tests
+      -pre-compile-test-single:  called before javac compilation of single JUnit test
+      -post-compile-test-single: called after javac compilation of single JUunit test
+      -pre-dist:                 called before archive building 
+      -post-dist:                called after archive building 
+      -post-clean:               called after cleaning build products 
+      -pre-run-deploy:           called before deploying
+      -post-run-deploy:          called after deploying
+
+    Example of pluging an obfuscator after the compilation could look like 
+
+        <target name="-post-compile">
+            <obfuscate>
+                <fileset dir="${build.classes.dir}"/>
+            </obfuscate>
+        </target>
+
+    For list of available properties check the imported 
+    nbproject/build-impl.xml file. 
+
+
+    Other way how to customize the build is by overriding existing main targets.
+    The target of interest are: 
+
+      init-macrodef-javac:    defines macro for javac compilation
+      init-macrodef-junit:   defines macro for junit execution
+      init-macrodef-debug:    defines macro for class debugging
+      do-dist:                archive building
+      run:                    execution of project 
+      javadoc-build:          javadoc generation 
+
+    Example of overriding the target for project execution could look like 
+
+        <target name="run" depends="<PROJNAME>-impl.jar">
+            <exec dir="bin" executable="launcher.exe">
+                <arg file="${dist.jar}"/>
+            </exec>
+        </target>
+
+    Notice that overridden target depends on jar target and not only on 
+    compile target as regular run target does. Again, for list of available 
+    properties which you can use check the target you are overriding in 
+    nbproject/build-impl.xml file. 
+
+    -->
+</project>
diff --git a/lib/ui-darkness-1.0.2.jar b/lib/ui-darkness-1.0.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ec8003b0e9623b173bf4e80e02632ddd221b8c7a
GIT binary patch
literal 32024
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
BYzqJY

literal 0
HcmV?d00001

diff --git a/nbproject/ant-deploy.xml b/nbproject/ant-deploy.xml
new file mode 100644
index 00000000..9bc5adf7
--- /dev/null
+++ b/nbproject/ant-deploy.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project default="-deploy-ant" basedir=".">
+    <target name="-init" if="deploy.ant.enabled">
+        <property file="${deploy.ant.properties.file}"/>
+        <tempfile property="temp.module.folder" prefix="tomcat" destdir="${java.io.tmpdir}"/>
+        <unwar src="${deploy.ant.archive}" dest="${temp.module.folder}">
+            <patternset includes="META-INF/context.xml"/>
+        </unwar>
+        <xmlproperty file="${temp.module.folder}/META-INF/context.xml"/>
+        <delete dir="${temp.module.folder}"/>
+    </target>
+    <target name="-check-credentials" if="deploy.ant.enabled" depends="-init">
+        <fail message="Tomcat password has to be passed as tomcat.password property.">
+            <condition>
+                <not>
+                    <isset property="tomcat.password"/>
+                </not>
+            </condition>
+        </fail>    
+    </target>
+    <target name="-deploy-ant" if="deploy.ant.enabled" depends="-init,-check-credentials">
+        <echo message="Deploying ${deploy.ant.archive} to ${Context(path)}"/>
+        <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask">
+            <classpath>
+                <pathelement path="${tomcat.home}/lib/catalina-ant.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-coyote.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-util.jar"/>
+                <pathelement path="${tomcat.home}/bin/tomcat-juli.jar"/>
+            </classpath>
+        </taskdef>
+        <deploy url="${tomcat.url}/manager/text" username="${tomcat.username}"
+                password="${tomcat.password}" path="${Context(path)}"
+                war="${deploy.ant.archive}"/>
+        <property name="deploy.ant.client.url" value="${tomcat.url}${Context(path)}"/>
+    </target>
+    <target name="-undeploy-ant" if="deploy.ant.enabled" depends="-init,-check-credentials">
+        <echo message="Undeploying ${Context(path)}"/>
+        <taskdef name="undeploy"  classname="org.apache.catalina.ant.UndeployTask">
+            <classpath>
+                <pathelement path="${tomcat.home}/lib/catalina-ant.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-coyote.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-util.jar"/>
+                <pathelement path="${tomcat.home}/bin/tomcat-juli.jar"/>
+            </classpath>
+        </taskdef>
+        <undeploy url="${tomcat.url}/manager/text" username="${tomcat.username}" 
+                  password="${tomcat.password}" path="${Context(path)}"/>
+    </target>
+</project>
diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml
new file mode 100644
index 00000000..b09dd12c
--- /dev/null
+++ b/nbproject/build-impl.xml
@@ -0,0 +1,1077 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+        *** GENERATED FROM project.xml - DO NOT EDIT  ***
+        ***         EDIT ../build.xml INSTEAD         ***
+
+        For the purpose of easier reading the script
+        is divided into following sections:
+        - initialization
+        - compilation
+        - dist
+        - execution
+        - debugging
+        - javadoc
+        - junit compilation
+        - junit execution
+        - junit debugging
+        - cleanup
+
+        -->
+<project xmlns:webproject1="http://www.netbeans.org/ns/web-project/1" xmlns:webproject2="http://www.netbeans.org/ns/web-project/2" xmlns:webproject3="http://www.netbeans.org/ns/web-project/3" basedir=".." default="default" name="Kieker.WebGUI-impl">
+    <import file="ant-deploy.xml"/>
+    <fail message="Please build using Ant 1.7.1 or higher.">
+        <condition>
+            <not>
+                <antversion atleast="1.7.1"/>
+            </not>
+        </condition>
+    </fail>
+    <target depends="dist,javadoc" description="Build whole project." name="default"/>
+    <!--
+                INITIALIZATION SECTION
+            -->
+    <target name="-pre-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="-pre-init" name="-init-private">
+        <property file="nbproject/private/private.properties"/>
+    </target>
+    <target depends="-pre-init,-init-private" name="-init-user">
+        <property file="${user.properties.file}"/>
+        <!-- The two properties below are usually overridden -->
+        <!-- by the active platform. Just a fallback. -->
+        <property name="default.javac.source" value="1.4"/>
+        <property name="default.javac.target" value="1.4"/>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user" name="-init-project">
+        <property file="nbproject/project.properties"/>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" if="dist.ear.dir" name="-do-ear-init"/>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
+        <condition property="have.tests">
+            <or>
+                <available file="${test.src.dir}"/>
+            </or>
+        </condition>
+        <condition property="have.sources">
+            <or>
+                <available file="${src.dir}"/>
+            </or>
+        </condition>
+        <condition property="netbeans.home+have.tests">
+            <and>
+                <isset property="netbeans.home"/>
+                <isset property="have.tests"/>
+            </and>
+        </condition>
+        <condition property="no.javadoc.preview">
+            <isfalse value="${javadoc.preview}"/>
+        </condition>
+        <property name="javac.compilerargs" value=""/>
+        <condition property="no.deps">
+            <and>
+                <istrue value="${no.dependencies}"/>
+            </and>
+        </condition>
+        <condition property="no.dist.ear.dir">
+            <not>
+                <isset property="dist.ear.dir"/>
+            </not>
+        </condition>
+        <property name="build.web.excludes" value="${build.classes.excludes}"/>
+        <condition property="do.compile.jsps">
+            <istrue value="${compile.jsps}"/>
+        </condition>
+        <condition property="do.debug.server">
+            <or>
+                <not>
+                    <isset property="debug.server"/>
+                </not>
+                <istrue value="${debug.server}"/>
+                <and>
+                    <not>
+                        <istrue value="${debug.server}"/>
+                    </not>
+                    <not>
+                        <istrue value="${debug.client}"/>
+                    </not>
+                </and>
+            </or>
+        </condition>
+        <condition property="do.debug.client">
+            <istrue value="${debug.client}"/>
+        </condition>
+        <condition property="do.display.browser">
+            <istrue value="${display.browser}"/>
+        </condition>
+        <condition property="do.display.browser.debug">
+            <and>
+                <isset property="do.display.browser"/>
+                <not>
+                    <isset property="do.debug.client"/>
+                </not>
+            </and>
+        </condition>
+        <available file="${conf.dir}/MANIFEST.MF" property="has.custom.manifest"/>
+        <available file="${persistence.xml.dir}/persistence.xml" property="has.persistence.xml"/>
+        <condition property="do.war.package.with.custom.manifest">
+            <isset property="has.custom.manifest"/>
+        </condition>
+        <condition property="do.war.package.without.custom.manifest">
+            <not>
+                <isset property="has.custom.manifest"/>
+            </not>
+        </condition>
+        <condition property="do.tmp.war.package.with.custom.manifest">
+            <and>
+                <isset property="has.custom.manifest"/>
+                <or>
+                    <isfalse value="${directory.deployment.supported}"/>
+                    <isset property="dist.ear.dir"/>
+                </or>
+            </and>
+        </condition>
+        <condition property="do.tmp.war.package.without.custom.manifest">
+            <and>
+                <not>
+                    <isset property="has.custom.manifest"/>
+                </not>
+                <or>
+                    <isfalse value="${directory.deployment.supported}"/>
+                    <isset property="dist.ear.dir"/>
+                </or>
+            </and>
+        </condition>
+        <condition property="do.tmp.war.package">
+            <or>
+                <isfalse value="${directory.deployment.supported}"/>
+                <isset property="dist.ear.dir"/>
+            </or>
+        </condition>
+        <property name="build.meta.inf.dir" value="${build.web.dir}/META-INF"/>
+        <condition else="" property="application.args.param" value="${application.args}">
+            <and>
+                <isset property="application.args"/>
+                <not>
+                    <equals arg1="${application.args}" arg2="" trim="true"/>
+                </not>
+            </and>
+        </condition>
+        <property name="source.encoding" value="${file.encoding}"/>
+        <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
+            <and>
+                <isset property="javadoc.encoding"/>
+                <not>
+                    <equals arg1="${javadoc.encoding}" arg2=""/>
+                </not>
+            </and>
+        </condition>
+        <property name="javadoc.encoding.used" value="${source.encoding}"/>
+        <property name="includes" value="**"/>
+        <property name="excludes" value=""/>
+        <property name="runmain.jvmargs" value=""/>
+        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
+        <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
+            <and>
+                <isset property="endorsed.classpath"/>
+                <length length="0" string="${endorsed.classpath}" when="greater"/>
+            </and>
+        </condition>
+        <condition else="false" property="jdkBug6558476">
+            <and>
+                <matches pattern="1\.[56]" string="${java.specification.version}"/>
+                <not>
+                    <os family="unix"/>
+                </not>
+            </and>
+        </condition>
+        <property name="javac.fork" value="${jdkBug6558476}"/>
+    </target>
+    <target depends="init" name="-init-cos" unless="deploy.on.save">
+        <condition property="deploy.on.save" value="true">
+            <or>
+                <istrue value="${j2ee.deploy.on.save}"/>
+                <istrue value="${j2ee.compile.on.save}"/>
+            </or>
+        </condition>
+    </target>
+    <target name="-post-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
+        <fail unless="src.dir">Must set src.dir</fail>
+        <fail unless="test.src.dir">Must set test.src.dir</fail>
+        <fail unless="build.dir">Must set build.dir</fail>
+        <fail unless="build.web.dir">Must set build.web.dir</fail>
+        <fail unless="build.generated.dir">Must set build.generated.dir</fail>
+        <fail unless="dist.dir">Must set dist.dir</fail>
+        <fail unless="build.classes.dir">Must set build.classes.dir</fail>
+        <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
+        <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
+        <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
+        <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
+        <fail unless="dist.war">Must set dist.war</fail>
+        <condition property="missing.j2ee.server.home">
+            <and>
+                <matches pattern="j2ee.server.home" string="${j2ee.platform.classpath}"/>
+                <not>
+                    <isset property="j2ee.server.home"/>
+                </not>
+            </and>
+        </condition>
+        <fail if="missing.j2ee.server.home">
+The Java EE server classpath is not correctly set up - server home directory is missing.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+   ant -Dj2ee.server.home=&lt;app_server_installation_directory&gt;
+                </fail>
+        <fail unless="j2ee.platform.classpath">
+The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+   ant -Duser.properties.file=&lt;path_to_property_file&gt; (where you put the property "j2ee.platform.classpath" in a .properties file)
+or ant -Dj2ee.platform.classpath=&lt;server_classpath&gt; (where no properties file is used)
+                </fail>
+    </target>
+    <target name="-init-macrodef-property">
+        <macrodef name="property" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute name="name"/>
+            <attribute name="value"/>
+            <sequential>
+                <property name="@{name}" value="${@{value}}"/>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/web-project/2">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <mkdir dir="@{apgeneratedsrcdir}"/>
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <compilerarg value="-processorpath"/>
+                    <compilerarg path="@{processorpath}:${empty.dir}"/>
+                    <compilerarg line="${ap.processors.internal}"/>
+                    <compilerarg value="-s"/>
+                    <compilerarg path="@{apgeneratedsrcdir}"/>
+                    <compilerarg line="${ap.proc.none.internal}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/web-project/2">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
+        <macrodef name="depend" uri="http://www.netbeans.org/ns/web-project/2">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+            <sequential>
+                <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                </depend>
+            </sequential>
+        </macrodef>
+        <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/web-project/2">
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <sequential>
+                <fail unless="javac.includes">Must set javac.includes</fail>
+                <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
+                    <path>
+                        <filelist dir="@{destdir}" files="${javac.includes}"/>
+                    </path>
+                    <globmapper from="*.java" to="*.class"/>
+                </pathconvert>
+                <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
+                <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
+                <delete>
+                    <files includesfile="${javac.includesfile.binary}"/>
+                </delete>
+                <delete file="${javac.includesfile.binary}"/>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-junit">
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/web-project/2">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <sequential>
+                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
+                    <batchtest todir="${build.test.results.dir}">
+                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+                            <filename name="@{testincludes}"/>
+                        </fileset>
+                    </batchtest>
+                    <classpath>
+                        <path path="${run.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <formatter type="brief" usefile="false"/>
+                    <formatter type="xml"/>
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg value="-ea"/>
+                    <jvmarg line="${runmain.jvmargs}"/>
+                </junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-java">
+        <macrodef name="java" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${debug.classpath}" name="classpath"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <java classname="@{classname}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg line="${runmain.jvmargs}"/>
+                    <classpath>
+                        <path path="@{classpath}:${j2ee.platform.classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-nbjsdebug">
+        <macrodef name="nbjsdebugstart" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute default="${client.url}" name="webUrl"/>
+            <sequential>
+                <nbjsdebugstart urlPart="${client.urlPart}" webUrl="@{webUrl}"/>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
+        <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute default="${main.class}" name="name"/>
+            <attribute default="${debug.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+            <sequential>
+                <nbjpdastart addressproperty="jpda.address" name="@{name}" transport="${debug-transport}">
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                </nbjpdastart>
+            </sequential>
+        </macrodef>
+        <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute default="${build.classes.dir}" name="dir"/>
+            <sequential>
+                <nbjpdareload>
+                    <fileset dir="@{dir}" includes="${fix.classes}">
+                        <include name="${fix.includes}*.class"/>
+                    </fileset>
+                </nbjpdareload>
+            </sequential>
+        </macrodef>
+        <macrodef name="nbjpdaappreloaded" uri="http://www.netbeans.org/ns/web-project/1">
+            <sequential>
+                <nbjpdaappreloaded/>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-debug-args">
+        <property name="version-output" value="java version &quot;${ant.java.version}"/>
+        <condition property="have-jdk-older-than-1.4">
+            <or>
+                <contains string="${version-output}" substring="java version &quot;1.0"/>
+                <contains string="${version-output}" substring="java version &quot;1.1"/>
+                <contains string="${version-output}" substring="java version &quot;1.2"/>
+                <contains string="${version-output}" substring="java version &quot;1.3"/>
+            </or>
+        </condition>
+        <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
+            <istrue value="${have-jdk-older-than-1.4}"/>
+        </condition>
+        <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
+            <os family="windows"/>
+        </condition>
+        <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
+            <isset property="debug.transport"/>
+        </condition>
+    </target>
+    <target depends="-init-debug-args" name="-init-macrodef-debug">
+        <macrodef name="debug" uri="http://www.netbeans.org/ns/web-project/1">
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${debug.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+            <attribute default="${application.args.param}" name="args"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <java classname="@{classname}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg line="${debug-args-line}"/>
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                    <jvmarg line="${runmain.jvmargs}"/>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <arg line="@{args}"/>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-taskdefs">
+        <fail unless="libs.CopyLibs.classpath">
+The libs.CopyLibs.classpath property is not set up.
+This property must point to 
+org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
+of NetBeans IDE installation and is usually located at 
+&lt;netbeans_installation&gt;/java&lt;version&gt;/ant/extra folder.
+Either open the project in the IDE and make sure CopyLibs library
+exists or setup the property manually. For example like this:
+ ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
+                </fail>
+        <taskdef classpath="${libs.CopyLibs.classpath}" resource="org/netbeans/modules/java/j2seproject/copylibstask/antlib.xml"/>
+    </target>
+    <target name="-init-ap-cmdline-properties">
+        <property name="annotation.processing.enabled" value="true"/>
+        <property name="annotation.processing.processors.list" value=""/>
+        <property name="annotation.processing.run.all.processors" value="true"/>
+        <property name="javac.processorpath" value="${javac.classpath}"/>
+        <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
+        <condition property="ap.supported.internal" value="true">
+            <not>
+                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
+            </not>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
+        <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
+            <isfalse value="${annotation.processing.run.all.processors}"/>
+        </condition>
+        <condition else="" property="ap.proc.none.internal" value="-proc:none">
+            <isfalse value="${annotation.processing.enabled}"/>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
+        <property name="ap.cmd.line.internal" value=""/>
+    </target>
+    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-check" name="profile-init"/>
+    <target name="-profile-pre-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-profile-post-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="-profile-pre-init, init, -profile-post-init" name="-profile-init-check">
+        <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
+        <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-java,-init-macrodef-nbjpda,-init-macrodef-nbjsdebug,-init-macrodef-debug,-init-taskdefs,-init-ap-cmdline" name="init"/>
+    <!--
+                COMPILATION SECTION
+            -->
+    <target depends="init" if="no.dist.ear.dir" name="deps-module-jar" unless="no.deps"/>
+    <target depends="init" if="dist.ear.dir" name="deps-ear-jar" unless="no.deps"/>
+    <target depends="init, deps-module-jar, deps-ear-jar" name="deps-jar" unless="no.deps"/>
+    <target depends="init,deps-jar" name="-pre-pre-compile">
+        <mkdir dir="${build.classes.dir}"/>
+    </target>
+    <target name="-pre-compile">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-copy-webdir">
+        <copy todir="${build.web.dir}">
+            <fileset dir="${web.docbase.dir}" excludes="${build.web.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+        <copy todir="${build.web.dir}/WEB-INF">
+            <fileset dir="${webinf.dir}" excludes="${build.web.excludes}"/>
+        </copy>
+    </target>
+    <target depends="init, deps-jar, -pre-pre-compile, -pre-compile, -copy-manifest, -copy-persistence-xml, -copy-webdir, library-inclusion-in-archive,library-inclusion-in-manifest" if="have.sources" name="-do-compile">
+        <webproject2:javac destdir="${build.classes.dir}" gensrcdir="${build.generated.sources.dir}"/>
+        <copy todir="${build.classes.dir}">
+            <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target if="has.custom.manifest" name="-copy-manifest">
+        <mkdir dir="${build.meta.inf.dir}"/>
+        <copy todir="${build.meta.inf.dir}">
+            <fileset dir="${conf.dir}" includes="MANIFEST.MF"/>
+        </copy>
+    </target>
+    <target if="has.persistence.xml" name="-copy-persistence-xml">
+        <mkdir dir="${build.web.dir}/WEB-INF/classes/META-INF"/>
+        <copy todir="${build.web.dir}/WEB-INF/classes/META-INF">
+            <fileset dir="${persistence.xml.dir}" includes="persistence.xml"/>
+        </copy>
+    </target>
+    <target name="-post-compile">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
+    <target name="-pre-compile-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
+        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+        <webproject2:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}"/>
+        <copy todir="${build.classes.dir}">
+            <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target name="-post-compile-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
+    <property name="jspc.schemas" value="/resources/schemas/"/>
+    <property name="jspc.dtds" value="/resources/dtds/"/>
+    <target depends="compile" description="Test compile JSP pages to expose compilation errors." if="do.compile.jsps" name="compile-jsps">
+        <mkdir dir="${build.generated.dir}/src"/>
+        <java classname="org.netbeans.modules.web.project.ant.JspC" failonerror="true" fork="true">
+            <arg value="-uriroot"/>
+            <arg file="${basedir}/${build.web.dir}"/>
+            <arg value="-d"/>
+            <arg file="${basedir}/${build.generated.dir}/src"/>
+            <arg value="-die1"/>
+            <arg value="-schemas ${jspc.schemas}"/>
+            <arg value="-dtds ${jspc.dtds}"/>
+            <arg value="-compilerSourceVM ${javac.source}"/>
+            <arg value="-compilerTargetVM ${javac.target}"/>
+            <arg value="-javaEncoding ${source.encoding}"/>
+            <arg value="-sysClasspath ${libs.jsp-compilation-syscp.classpath}"/>
+            <classpath path="${java.home}/../lib/tools.jar:${libs.jsp-compiler.classpath}:${libs.jsp-compilation.classpath}"/>
+        </java>
+        <mkdir dir="${build.generated.dir}/classes"/>
+        <webproject2:javac classpath="${build.classes.dir}:${libs.jsp-compilation.classpath}:${javac.classpath}:${j2ee.platform.classpath}" destdir="${build.generated.dir}/classes" srcdir="${build.generated.dir}/src"/>
+    </target>
+    <target depends="compile" if="jsp.includes" name="-do-compile-single-jsp">
+        <fail unless="javac.jsp.includes">Must select some files in the IDE or set javac.jsp.includes</fail>
+        <mkdir dir="${build.generated.dir}/src"/>
+        <java classname="org.netbeans.modules.web.project.ant.JspCSingle" failonerror="true" fork="true">
+            <arg value="-uriroot"/>
+            <arg file="${basedir}/${build.web.dir}"/>
+            <arg value="-d"/>
+            <arg file="${basedir}/${build.generated.dir}/src"/>
+            <arg value="-die1"/>
+            <arg value="-schemas ${jspc.schemas}"/>
+            <arg value="-dtds ${jspc.dtds}"/>
+            <arg value="-sysClasspath ${libs.jsp-compilation-syscp.classpath}"/>
+            <arg value="-jspc.files"/>
+            <arg path="${jsp.includes}"/>
+            <arg value="-compilerSourceVM ${javac.source}"/>
+            <arg value="-compilerTargetVM ${javac.target}"/>
+            <arg value="-javaEncoding ${source.encoding}"/>
+            <classpath path="${java.home}/../lib/tools.jar:${libs.jsp-compiler.classpath}:${libs.jsp-compilation.classpath}"/>
+        </java>
+        <mkdir dir="${build.generated.dir}/classes"/>
+        <webproject2:javac classpath="${build.classes.dir}:${libs.jsp-compilation.classpath}:${javac.classpath}:${j2ee.platform.classpath}" destdir="${build.generated.dir}/classes" srcdir="${build.generated.dir}/src">
+            <customize>
+                <patternset includes="${javac.jsp.includes}"/>
+            </customize>
+        </webproject2:javac>
+    </target>
+    <target name="compile-single-jsp">
+        <fail unless="jsp.includes">Must select a file in the IDE or set jsp.includes</fail>
+        <antcall target="-do-compile-single-jsp"/>
+    </target>
+    <!--
+                DIST BUILDING SECTION
+            -->
+    <target name="-pre-dist">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,compile-jsps,-pre-dist" if="do.war.package.without.custom.manifest" name="-do-dist-without-manifest">
+        <dirname file="${dist.war}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+        <jar compress="${jar.compress}" jarfile="${dist.war}">
+            <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*"/>
+        </jar>
+    </target>
+    <target depends="init,compile,compile-jsps,-pre-dist" if="do.war.package.with.custom.manifest" name="-do-dist-with-manifest">
+        <dirname file="${dist.war}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+        <jar compress="${jar.compress}" jarfile="${dist.war}" manifest="${build.meta.inf.dir}/MANIFEST.MF">
+            <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*"/>
+        </jar>
+    </target>
+    <target depends="init,compile,compile-jsps,-pre-dist" if="do.tmp.war.package.without.custom.manifest" name="-do-tmp-dist-without-manifest">
+        <dirname file="${dist.war}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+        <jar compress="${jar.compress}" jarfile="${dist.war}">
+            <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*"/>
+        </jar>
+    </target>
+    <target depends="init,compile,compile-jsps,-pre-dist" if="do.tmp.war.package.with.custom.manifest" name="-do-tmp-dist-with-manifest">
+        <dirname file="${dist.war}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+        <jar compress="${jar.compress}" jarfile="${dist.war}" manifest="${build.meta.inf.dir}/MANIFEST.MF">
+            <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*"/>
+        </jar>
+    </target>
+    <target depends="init,compile,compile-jsps,-pre-dist,-do-dist-with-manifest,-do-dist-without-manifest" name="do-dist"/>
+    <target depends="init" if="dist.ear.dir" name="library-inclusion-in-manifest">
+        <copyfiles files="${libs.jsf20.classpath}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
+        <copyfiles files="${libs.jstl11.classpath}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
+        <copyfiles files="${libs.primefaces.classpath}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
+        <copyfiles files="${file.reference.ui-darkness-1.0.2.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
+        <mkdir dir="${build.web.dir}/META-INF"/>
+        <manifest file="${build.web.dir}/META-INF/MANIFEST.MF" mode="update"/>
+    </target>
+    <target depends="init" name="library-inclusion-in-archive" unless="dist.ear.dir">
+        <copyfiles files="${libs.jsf20.classpath}" todir="${build.web.dir}/WEB-INF/lib"/>
+        <copyfiles files="${libs.jstl11.classpath}" todir="${build.web.dir}/WEB-INF/lib"/>
+        <copyfiles files="${libs.primefaces.classpath}" todir="${build.web.dir}/WEB-INF/lib"/>
+        <copyfiles files="${file.reference.ui-darkness-1.0.2.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
+    </target>
+    <target depends="init" if="dist.ear.dir" name="-clean-webinf-lib">
+        <delete dir="${build.web.dir}/WEB-INF/lib"/>
+    </target>
+    <target depends="init,-clean-webinf-lib,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest" if="do.tmp.war.package" name="do-ear-dist">
+        <dirname file="${dist.ear.war}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+        <jar compress="${jar.compress}" jarfile="${dist.ear.war}" manifest="${build.web.dir}/META-INF/MANIFEST.MF">
+            <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*"/>
+        </jar>
+    </target>
+    <target name="-post-dist">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-dist,do-dist,-post-dist" description="Build distribution (WAR)." name="dist"/>
+    <target depends="init,-clean-webinf-lib,-init-cos,compile,-pre-dist,do-ear-dist,-post-dist" description="Build distribution (WAR) to be packaged into an EAR." name="dist-ear"/>
+    <!--
+                EXECUTION SECTION
+            -->
+    <target depends="run-deploy,run-display-browser" description="Deploy to server and show in browser." name="run"/>
+    <target name="-pre-run-deploy">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-post-run-deploy">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-pre-nbmodule-run-deploy">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. -->
+    </target>
+    <target name="-post-nbmodule-run-deploy">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. -->
+    </target>
+    <target name="-run-deploy-am">
+        <!-- Task to deploy to the Access Manager runtime. -->
+    </target>
+    <target depends="init,-init-cos,compile,compile-jsps,-do-compile-single-jsp,-pre-dist,-do-tmp-dist-with-manifest,-do-tmp-dist-without-manifest,-pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,-post-run-deploy,-do-update-breakpoints" name="run-deploy"/>
+    <target if="netbeans.home" name="-run-deploy-nb">
+        <nbdeploy clientUrlPart="${client.urlPart}" debugmode="false" forceRedeploy="${forceRedeploy}"/>
+    </target>
+    <target name="-init-deploy-ant" unless="netbeans.home">
+        <property name="deploy.ant.archive" value="${dist.war}"/>
+        <property name="deploy.ant.docbase.dir" value="${web.docbase.dir}"/>
+        <property name="deploy.ant.resource.dir" value="${resource.dir}"/>
+        <property name="deploy.ant.enabled" value="true"/>
+    </target>
+    <target depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant" name="run-undeploy"/>
+    <target if="netbeans.home" name="-run-undeploy-nb">
+        <fail message="Undeploy is not supported from within the IDE"/>
+    </target>
+    <target depends="init,-pre-dist,dist,-post-dist" name="verify">
+        <nbverify file="${dist.war}"/>
+    </target>
+    <target depends="run-deploy,-init-display-browser,-display-browser-nb,-display-browser-cl" name="run-display-browser"/>
+    <target if="do.display.browser" name="-init-display-browser">
+        <condition property="do.display.browser.nb">
+            <isset property="netbeans.home"/>
+        </condition>
+        <condition property="do.display.browser.cl">
+            <isset property="deploy.ant.enabled"/>
+        </condition>
+    </target>
+    <target if="do.display.browser.nb" name="-display-browser-nb">
+        <nbbrowse url="${client.url}"/>
+    </target>
+    <target if="do.display.browser.cl" name="-get-browser" unless="browser">
+        <condition property="browser" value="rundll32">
+            <os family="windows"/>
+        </condition>
+        <condition else="" property="browser.args" value="url.dll,FileProtocolHandler">
+            <os family="windows"/>
+        </condition>
+        <condition property="browser" value="/usr/bin/open">
+            <os family="mac"/>
+        </condition>
+        <property environment="env"/>
+        <condition property="browser" value="${env.BROWSER}">
+            <isset property="env.BROWSER"/>
+        </condition>
+        <condition property="browser" value="/usr/bin/firefox">
+            <available file="/usr/bin/firefox"/>
+        </condition>
+        <condition property="browser" value="/usr/local/firefox/firefox">
+            <available file="/usr/local/firefox/firefox"/>
+        </condition>
+        <condition property="browser" value="/usr/bin/mozilla">
+            <available file="/usr/bin/mozilla"/>
+        </condition>
+        <condition property="browser" value="/usr/local/mozilla/mozilla">
+            <available file="/usr/local/mozilla/mozilla"/>
+        </condition>
+        <condition property="browser" value="/usr/sfw/lib/firefox/firefox">
+            <available file="/usr/sfw/lib/firefox/firefox"/>
+        </condition>
+        <condition property="browser" value="/opt/csw/bin/firefox">
+            <available file="/opt/csw/bin/firefox"/>
+        </condition>
+        <condition property="browser" value="/usr/sfw/lib/mozilla/mozilla">
+            <available file="/usr/sfw/lib/mozilla/mozilla"/>
+        </condition>
+        <condition property="browser" value="/opt/csw/bin/mozilla">
+            <available file="/opt/csw/bin/mozilla"/>
+        </condition>
+    </target>
+    <target depends="-get-browser" if="do.display.browser.cl" name="-display-browser-cl">
+        <fail unless="browser">
+                    Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable.
+                </fail>
+        <property name="browse.url" value="${deploy.ant.client.url}${client.urlPart}"/>
+        <echo>Launching ${browse.url}</echo>
+        <exec executable="${browser}" spawn="true">
+            <arg line="${browser.args} ${browse.url}"/>
+        </exec>
+    </target>
+    <target depends="init,-init-cos,compile-single" name="run-main">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <webproject1:java classname="${run.class}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single" name="run-test-with-main">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <webproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
+    </target>
+    <target depends="init" if="netbeans.home" name="-do-update-breakpoints">
+        <webproject1:nbjpdaappreloaded/>
+    </target>
+    <!--
+                DEBUGGING SECTION
+            -->
+    <target depends="init,-init-cos,compile,compile-jsps,-do-compile-single-jsp,-pre-dist,-do-tmp-dist-with-manifest,-do-tmp-dist-without-manifest" description="Debug project in IDE." if="netbeans.home" name="debug">
+        <nbstartserver debugmode="true"/>
+        <antcall target="connect-debugger"/>
+        <nbdeploy clientUrlPart="${client.urlPart}" debugmode="true" forceRedeploy="true"/>
+        <antcall target="debug-display-browser"/>
+        <antcall target="connect-client-debugger"/>
+    </target>
+    <target if="do.debug.server" name="connect-debugger" unless="is.debugged">
+        <nbjpdaconnect address="${jpda.address}" host="${jpda.host}" name="${name}" transport="${jpda.transport}">
+            <classpath>
+                <path path="${debug.classpath}:${j2ee.platform.classpath}"/>
+            </classpath>
+            <sourcepath>
+                <path path="${web.docbase.dir}"/>
+            </sourcepath>
+        </nbjpdaconnect>
+    </target>
+    <target if="do.display.browser.debug" name="debug-display-browser">
+        <nbbrowse url="${client.url}"/>
+    </target>
+    <target if="do.debug.client" name="connect-client-debugger">
+        <webproject1:nbjsdebugstart webUrl="${client.url}"/>
+    </target>
+    <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
+        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
+        <webproject1:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
+    </target>
+    <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
+    <target depends="init,compile,compile-jsps,-do-compile-single-jsp,debug" if="netbeans.home" name="debug-single"/>
+    <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
+        <webproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
+    </target>
+    <target depends="init" if="netbeans.home" name="-debug-start-debugger">
+        <webproject1:nbjpdastart name="${debug.class}"/>
+    </target>
+    <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
+        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
+        <webproject1:debug classname="${debug.class}"/>
+    </target>
+    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single-main"/>
+    <target depends="init" name="-pre-debug-fix">
+        <fail unless="fix.includes">Must set fix.includes</fail>
+        <property name="javac.includes" value="${fix.includes}.java"/>
+    </target>
+    <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
+        <webproject1:nbjpdareload/>
+    </target>
+    <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
+    <!--
+            =================
+            PROFILING SECTION
+            =================
+            -->
+    <target description="Profile a J2EE project in the IDE." name="profile">
+        <condition else="start-profiled-server" property="profiler.startserver.target" value="start-profiled-server-extraargs">
+            <isset property="profiler.info.jvmargs.extra"/>
+        </condition>
+        <antcall target="${profiler.startserver.target}"/>
+        <antcall target="run"/>
+        <antcall target="start-loadgen"/>
+    </target>
+    <target name="start-profiled-server">
+        <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
+            <jvmarg value="${profiler.info.jvmargs.agent}"/>
+            <jvmarg value="${profiler.j2ee.agentID}"/>
+        </nbstartprofiledserver>
+    </target>
+    <target name="start-profiled-server-extraargs">
+        <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
+            <jvmarg value="${profiler.info.jvmargs.extra}"/>
+            <jvmarg value="${profiler.info.jvmargs.agent}"/>
+            <jvmarg value="${profiler.j2ee.agentID}"/>
+        </nbstartprofiledserver>
+    </target>
+    <target if="profiler.loadgen.path" name="start-loadgen">
+        <loadgenstart path="${profiler.loadgen.path}"/>
+    </target>
+    <!--
+                JAVADOC SECTION
+            -->
+    <target depends="init" if="have.sources" name="javadoc-build">
+        <mkdir dir="${dist.javadoc.dir}"/>
+        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
+            <classpath>
+                <path path="${javac.classpath}:${j2ee.platform.classpath}"/>
+            </classpath>
+            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
+                <filename name="**/*.java"/>
+            </fileset>
+            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+                <include name="**/*.java"/>
+            </fileset>
+        </javadoc>
+        <copy todir="${dist.javadoc.dir}">
+            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+                <include name="**/doc-files/**"/>
+            </fileset>
+        </copy>
+    </target>
+    <target depends="init,javadoc-build" if="netbeans.home" name="javadoc-browse" unless="no.javadoc.preview">
+        <nbbrowse file="${dist.javadoc.dir}/index.html"/>
+    </target>
+    <target depends="init,javadoc-build,javadoc-browse" description="Build Javadoc." name="javadoc"/>
+    <!--
+                
+                JUNIT COMPILATION SECTION
+            -->
+    <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
+        <mkdir dir="${build.test.classes.dir}"/>
+        <property name="j2ee.platform.embeddableejb.classpath" value=""/>
+    </target>
+    <target name="-pre-compile-test">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test" if="have.tests" name="-do-compile-test">
+        <webproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
+        <copy todir="${build.test.classes.dir}">
+            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target name="-post-compile-test">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
+    <target name="-pre-compile-test-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
+        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+        <webproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" srcdir="${test.src.dir}"/>
+        <copy todir="${build.test.classes.dir}">
+            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target name="-post-compile-test-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
+    <!--
+                
+                JUNIT EXECUTION SECTION
+            -->
+    <target depends="init" if="have.tests" name="-pre-test-run">
+        <mkdir dir="${build.test.results.dir}"/>
+    </target>
+    <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
+        <webproject2:junit testincludes="**/*Test.java"/>
+    </target>
+    <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+    </target>
+    <target depends="init" if="have.tests" name="test-report"/>
+    <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
+    <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
+    <target depends="init" if="have.tests" name="-pre-test-run-single">
+        <mkdir dir="${build.test.results.dir}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
+        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
+        <webproject2:junit excludes="" includes="${test.includes}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
+    <!--
+                
+                JUNIT DEBUGGING SECTION
+            -->
+    <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">
+        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
+        <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>
+        <delete file="${test.report.file}"/>
+        <!-- must exist, otherwise the XML formatter would fail -->
+        <mkdir dir="${build.test.results.dir}"/>
+        <webproject1:debug args="${test.class}" classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" classpath="${ant.home}/lib/ant.jar:${ant.home}/lib/ant-junit.jar:${debug.test.classpath}:${j2ee.platform.embeddableejb.classpath}">
+            <customize>
+                <arg value="showoutput=true"/>
+                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>
+                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>
+            </customize>
+        </webproject1:debug>
+    </target>
+    <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
+        <webproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
+    </target>
+    <target depends="init,compile-test,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
+    <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
+        <webproject1:nbjpdareload dir="${build.test.classes.dir}"/>
+    </target>
+    <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
+    <!--
+        =========================
+        TESTS PROFILING  SECTION
+        =========================
+        -->
+    <target depends="profile-init,compile-test-single" if="netbeans.home" name="profile-test-single">
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+                <path path="${j2ee.platform.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
+            <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
+            <jvmarg value="${profiler.info.jvmargs.agent}"/>
+            <jvmarg line="${profiler.info.jvmargs}"/>
+            <test name="${profile.class}"/>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+                <path path="${j2ee.platform.classpath}"/>
+            </classpath>
+            <syspropertyset>
+                <propertyref prefix="test-sys-prop."/>
+                <mapper from="test-sys-prop.*" to="*" type="glob"/>
+            </syspropertyset>
+            <formatter type="brief" usefile="false"/>
+            <formatter type="xml"/>
+        </junit>
+    </target>
+    <!--
+                
+                CLEANUP SECTION
+            -->
+    <target depends="init" name="deps-clean" unless="no.deps"/>
+    <target depends="init" name="do-clean">
+        <condition property="build.dir.to.clean" value="${build.web.dir}">
+            <isset property="dist.ear.dir"/>
+        </condition>
+        <property name="build.dir.to.clean" value="${build.web.dir}"/>
+        <delete includeEmptyDirs="true" quiet="true">
+            <fileset dir="${build.dir.to.clean}/WEB-INF/lib"/>
+        </delete>
+        <delete dir="${build.dir}"/>
+        <available file="${build.dir.to.clean}/WEB-INF/lib" property="status.clean-failed" type="dir"/>
+        <delete dir="${dist.dir}"/>
+    </target>
+    <target depends="do-clean" if="status.clean-failed" name="check-clean">
+        <echo message="Warning: unable to delete some files in ${build.web.dir}/WEB-INF/lib - they are probably locked by the J2EE server. "/>
+        <echo level="info" message="To delete all files undeploy the module from Server Registry in Runtime tab and then use Clean again."/>
+    </target>
+    <target depends="init" if="netbeans.home" name="undeploy-clean">
+        <nbundeploy failOnError="false" startServer="false"/>
+    </target>
+    <target name="-post-clean">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,undeploy-clean,deps-clean,do-clean,check-clean,-post-clean" description="Clean build products." name="clean"/>
+    <target depends="clean" description="Clean build products." name="clean-ear"/>
+</project>
diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties
new file mode 100644
index 00000000..f8869a55
--- /dev/null
+++ b/nbproject/genfiles.properties
@@ -0,0 +1,8 @@
+build.xml.data.CRC32=8812c641
+build.xml.script.CRC32=4b29385e
+build.xml.stylesheet.CRC32=651128d4@1.36.1.1
+# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
+# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
+nbproject/build-impl.xml.data.CRC32=8812c641
+nbproject/build-impl.xml.script.CRC32=1c0d8dde
+nbproject/build-impl.xml.stylesheet.CRC32=b7883b1f@1.36.1.1
diff --git a/nbproject/project.properties b/nbproject/project.properties
new file mode 100644
index 00000000..6f230f7f
--- /dev/null
+++ b/nbproject/project.properties
@@ -0,0 +1,87 @@
+annotation.processing.enabled=true
+annotation.processing.enabled.in.editor=true
+annotation.processing.processors.list=
+annotation.processing.run.all.processors=true
+annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+auxiliary.org-netbeans-modules-projectapi.jsf_2e_language=Facelets
+build.classes.dir=${build.web.dir}/WEB-INF/classes
+build.classes.excludes=**/*.java,**/*.form
+build.dir=build
+build.generated.dir=${build.dir}/generated
+build.generated.sources.dir=${build.dir}/generated-sources
+build.test.classes.dir=${build.dir}/test/classes
+build.test.results.dir=${build.dir}/test/results
+build.web.dir=${build.dir}/web
+build.web.excludes=${build.classes.excludes}
+client.urlPart=
+compile.jsps=false
+conf.dir=${source.root}/conf
+debug.classpath=${build.classes.dir}:${javac.classpath}
+debug.test.classpath=\
+    ${run.test.classpath}
+display.browser=true
+dist.dir=dist
+dist.ear.war=${dist.dir}/${war.ear.name}
+dist.javadoc.dir=${dist.dir}/javadoc
+dist.war=${dist.dir}/${war.name}
+endorsed.classpath=\
+    ${libs.javaee-endorsed-api-6.0.classpath}
+excludes=
+file.reference.ui-darkness-1.0.2.jar=lib\\ui-darkness-1.0.2.jar
+includes=**
+j2ee.compile.on.save=true
+j2ee.deploy.on.save=true
+j2ee.platform=1.6-web
+j2ee.platform.classpath=${j2ee.server.home}/lib/annotations-api.jar:${j2ee.server.home}/lib/catalina-ant.jar:${j2ee.server.home}/lib/catalina-ha.jar:${j2ee.server.home}/lib/catalina-tribes.jar:${j2ee.server.home}/lib/catalina.jar:${j2ee.server.home}/lib/ecj-3.6.2.jar:${j2ee.server.home}/lib/el-api.jar:${j2ee.server.home}/lib/jasper-el.jar:${j2ee.server.home}/lib/jasper.jar:${j2ee.server.home}/lib/jsp-api.jar:${j2ee.server.home}/lib/jstl-api-1.2.jar:${j2ee.server.home}/lib/jstl-impl-1.2.jar:${j2ee.server.home}/lib/primefaces-2.2.1.jar:${j2ee.server.home}/lib/servlet-api.jar:${j2ee.server.home}/lib/tomcat-api.jar:${j2ee.server.home}/lib/tomcat-coyote.jar:${j2ee.server.home}/lib/tomcat-dbcp.jar:${j2ee.server.home}/lib/tomcat-i18n-es.jar:${j2ee.server.home}/lib/tomcat-i18n-fr.jar:${j2ee.server.home}/lib/tomcat-i18n-ja.jar:${j2ee.server.home}/lib/tomcat-util.jar
+j2ee.server.type=Tomcat
+jar.compress=false
+javac.classpath=\
+    ${libs.jsf20.classpath}:\
+    ${libs.jstl11.classpath}:\
+    ${libs.primefaces.classpath}:\
+    ${file.reference.ui-darkness-1.0.2.jar}
+# Space-separated list of extra javac options
+javac.compilerargs=
+javac.debug=true
+javac.deprecation=false
+javac.processorpath=\
+    ${javac.classpath}
+javac.source=1.6
+javac.target=1.6
+javac.test.classpath=\
+    ${javac.classpath}:\
+    ${build.classes.dir}
+javac.test.processorpath=\
+    ${javac.test.classpath}
+javadoc.additionalparam=
+javadoc.author=false
+javadoc.encoding=${source.encoding}
+javadoc.noindex=false
+javadoc.nonavbar=false
+javadoc.notree=false
+javadoc.preview=true
+javadoc.private=false
+javadoc.splitindex=true
+javadoc.use=true
+javadoc.version=false
+javadoc.windowtitle=
+lib.dir=${web.docbase.dir}/WEB-INF/lib
+no.dependencies=false
+persistence.xml.dir=${conf.dir}
+platform.active=default_platform
+resource.dir=setup
+run.test.classpath=\
+    ${javac.test.classpath}:\
+    ${build.test.classes.dir}
+# Space-separated list of JVM arguments used when running a class with a main method or a unit test
+# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value):
+runmain.jvmargs=
+source.encoding=UTF-8
+source.root=src
+src.dir=${source.root}/java
+test.src.dir=test
+war.content.additional=
+war.ear.name=${war.name}
+war.name=Kieker.WebGUI.war
+web.docbase.dir=web
+webinf.dir=web/WEB-INF
diff --git a/nbproject/project.xml b/nbproject/project.xml
new file mode 100644
index 00000000..f4b40df8
--- /dev/null
+++ b/nbproject/project.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://www.netbeans.org/ns/project/1">
+    <type>org.netbeans.modules.web.project</type>
+    <configuration>
+        <data xmlns="http://www.netbeans.org/ns/web-project/3">
+            <name>Kieker.WebGUI</name>
+            <minimum-ant-version>1.6.5</minimum-ant-version>
+            <web-module-libraries>
+                <library dirs="200">
+                    <file>${libs.jsf20.classpath}</file>
+                    <path-in-war>WEB-INF/lib</path-in-war>
+                </library>
+                <library dirs="200">
+                    <file>${libs.jstl11.classpath}</file>
+                    <path-in-war>WEB-INF/lib</path-in-war>
+                </library>
+                <library dirs="200">
+                    <file>${libs.primefaces.classpath}</file>
+                    <path-in-war>WEB-INF/lib</path-in-war>
+                </library>
+                <library dirs="200">
+                    <file>${file.reference.ui-darkness-1.0.2.jar}</file>
+                    <path-in-war>WEB-INF/lib</path-in-war>
+                </library>
+            </web-module-libraries>
+            <web-module-additional-libraries/>
+            <source-roots>
+                <root id="src.dir" name="Source Packages"/>
+            </source-roots>
+            <test-roots>
+                <root id="test.src.dir" name="Test Packages"/>
+            </test-roots>
+        </data>
+    </configuration>
+</project>
diff --git a/src/conf/MANIFEST.MF b/src/conf/MANIFEST.MF
new file mode 100644
index 00000000..59499bce
--- /dev/null
+++ b/src/conf/MANIFEST.MF
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
diff --git a/src/java/beans/ComponentBean.java b/src/java/beans/ComponentBean.java
new file mode 100644
index 00000000..05eae4b2
--- /dev/null
+++ b/src/java/beans/ComponentBean.java
@@ -0,0 +1,35 @@
+package beans;
+
+import javax.faces.bean.ApplicationScoped;
+import javax.faces.bean.ManagedBean;
+import org.primefaces.model.DefaultTreeNode;
+import org.primefaces.model.TreeNode;
+
+/**
+ *
+ * @author Nils Christian Ehmke
+ */
+@ManagedBean
+@ApplicationScoped
+public class ComponentBean {
+
+    private TreeNode root;
+
+    public ComponentBean() {
+        root = new DefaultTreeNode("Root", null);
+        TreeNode node0 = new DefaultTreeNode("Reader", root);
+        TreeNode node1 = new DefaultTreeNode("Analysis Plugins", root);
+
+        TreeNode node00 = new DefaultTreeNode("FSReader", node0);
+        TreeNode node01 = new DefaultTreeNode("JMXReader", node0);
+
+        TreeNode node10 = new DefaultTreeNode("DummyRecordConsumer", node1);
+        TreeNode node11 = new DefaultTreeNode("SilentCountingRecordConsumer", node1);
+        TreeNode node12 = new DefaultTreeNode("TraceEquivalenceClassFilter", node1);
+        TreeNode node13 = new DefaultTreeNode("ExecutionRecordTransformationFilter", node1);
+    }
+
+    public TreeNode getRoot() {
+        return root;
+    }
+}
diff --git a/src/java/beans/TreeBean.java b/src/java/beans/TreeBean.java
new file mode 100644
index 00000000..363d779e
--- /dev/null
+++ b/src/java/beans/TreeBean.java
@@ -0,0 +1,32 @@
+package beans;
+
+import javax.faces.bean.ApplicationScoped;
+import javax.faces.bean.ManagedBean;
+import org.primefaces.model.DefaultTreeNode;
+import org.primefaces.model.TreeNode;
+
+/**
+ *
+ * @author Nils Christian Ehmke
+ */
+@ManagedBean
+@ApplicationScoped
+public class TreeBean {
+
+    private TreeNode root;
+
+    public TreeBean() {
+        root = new DefaultTreeNode("Root", null);
+        TreeNode node0 = new DefaultTreeNode("Some Analysis Project", root);
+        TreeNode node1 = new DefaultTreeNode("Another Analysis Project", root);
+
+        TreeNode node00 = new DefaultTreeNode("Depend1.jar", node0);
+        TreeNode node01 = new DefaultTreeNode("Depend2.jar", node0);
+
+        TreeNode node10 = new DefaultTreeNode("Depend3.jar", node1);
+    }
+
+    public TreeNode getRoot() {
+        return root;
+    }
+}
diff --git a/web/META-INF/context.xml b/web/META-INF/context.xml
new file mode 100644
index 00000000..94faf711
--- /dev/null
+++ b/web/META-INF/context.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Context antiJARLocking="true" path="/Kieker.WebGUI"/>
diff --git a/web/WEB-INF/beans.xml b/web/WEB-INF/beans.xml
new file mode 100644
index 00000000..4ca8195b
--- /dev/null
+++ b/web/WEB-INF/beans.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://java.sun.com/xml/ns/javaee"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+</beans>
diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml
new file mode 100644
index 00000000..4a909841
--- /dev/null
+++ b/web/WEB-INF/web.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
+    <context-param>
+        <param-name>javax.faces.PROJECT_STAGE</param-name>
+        <param-value>Development</param-value>
+    </context-param>
+    <context-param>
+        <param-name>primefaces.THEME</param-name>
+        <param-value>ui-darkness</param-value>
+    </context-param>
+    <servlet>
+        <servlet-name>Faces Servlet</servlet-name>
+        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+        <load-on-startup>1</load-on-startup>
+    </servlet>
+    <servlet-mapping>
+        <servlet-name>Faces Servlet</servlet-name>
+        <url-pattern>/faces/*</url-pattern>
+    </servlet-mapping>
+    <session-config>
+        <session-timeout>
+            30
+        </session-timeout>
+    </session-config>
+    <welcome-file-list>
+        <welcome-file>faces/main.xhtml</welcome-file>
+    </welcome-file-list>
+</web-app>
diff --git a/web/main.xhtml b/web/main.xhtml
new file mode 100644
index 00000000..ba82e2c0
--- /dev/null
+++ b/web/main.xhtml
@@ -0,0 +1,61 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:p="http://primefaces.prime.com.tr/ui" >
+    <h:head>
+        <title>Kieker.WebGUI</title>
+    </h:head>
+    <h:body>
+        <h:form>		
+
+            <p:layout fullPage="true">  
+
+                <p:layoutUnit position="top" height="105" collapsible="true"> 
+                    <div style="padding-top:10px" align="center">
+                        <p:button value="New Project"/>
+                        <p:spacer width="35" height="10" />
+                        <p:button value="Save Project"/>  
+                        <p:spacer width="35" height="10" />
+                        <p:button value="Delete Project"/>
+                    </div>
+                </p:layoutUnit> 
+
+
+                <p:layoutUnit header="Projects" collapsible="true" position="left" width="200" resizable="true" minWidth="100">  
+                    <p:tree value="#{treeBean.root}" var="node" expanded="true" >  
+                        <p:treeNode>  
+                            <h:outputText value="#{node}"/>  
+                        </p:treeNode>  
+                    </p:tree>
+                </p:layoutUnit>  
+
+                <p:layoutUnit position="center" scrollable="true">  
+                    <p:panel style="width:150px" id="handlepnl" header="FSReader">
+                        <h:outputText value="SomeReader" />
+                    </p:panel>
+                    <p:draggable for="handlepnl" handle=".ui-panel-titlebar" />
+                    
+                    <p:panel style="width:350px" id="handlepn2" header="SilentCountingRecordConsumer">
+                        <h:outputText value="Counter" />
+                    </p:panel>
+                    <p:draggable for="handlepn2" handle=".ui-panel-titlebar" />
+                    
+                     <p:panel style="width:350px" id="handlepn3" header="TraceEquivalenceClassFilter">
+                        <h:outputText value="Filter" />
+                    </p:panel>
+                    <p:draggable for="handlepn3" handle=".ui-panel-titlebar" />
+                </p:layoutUnit>  
+
+                <p:layoutUnit position="right" width="200" scrollable="true" header="Tool Palette" resizable="true" collapsible="true">  
+                    <p:tree value="#{componentBean.root}" var="node" expanded="true" >  
+                        <p:treeNode>  
+                            <h:outputText value="#{node}"/>  
+                        </p:treeNode>  
+                    </p:tree>
+                </p:layoutUnit>  
+            </p:layout>  
+        </h:form>        
+    </h:body>
+</html>
+
-- 
GitLab