[jboss-cvs] JBossAS SVN: r62246 - in trunk/embedded: docs/tutorial/junit and 11 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Apr 10 18:31:24 EDT 2007


Author: bill.burke at jboss.com
Date: 2007-04-10 18:31:24 -0400 (Tue, 10 Apr 2007)
New Revision: 62246

Added:
   trunk/embedded/docs/tutorial/junit/README.html
   trunk/embedded/docs/tutorial/junit/README.wiki
   trunk/embedded/docs/tutorial/junit/build.xml
   trunk/embedded/docs/tutorial/junit/example.iml
   trunk/embedded/docs/tutorial/junit/example.ipr
   trunk/embedded/docs/tutorial/junit/example.iws
   trunk/embedded/docs/tutorial/junit/src/
   trunk/embedded/docs/tutorial/junit/src/main/
   trunk/embedded/docs/tutorial/junit/src/main/java/
   trunk/embedded/docs/tutorial/junit/src/main/java/org/
   trunk/embedded/docs/tutorial/junit/src/main/java/org/jboss/
   trunk/embedded/docs/tutorial/junit/src/main/resources/
   trunk/embedded/docs/tutorial/junit/src/main/resources/META-INF/
   trunk/embedded/docs/tutorial/junit/src/main/resources/META-INF/persistence.xml
   trunk/embedded/docs/tutorial/junit/src/main/resources/queue-service.xml
   trunk/embedded/docs/tutorial/junit/src/main/resources/tutorial-persistence.xml
   trunk/embedded/docs/tutorial/junit/src/test/
   trunk/embedded/docs/tutorial/junit/src/test/java/
   trunk/embedded/docs/tutorial/junit/src/test/java/org/
   trunk/embedded/docs/tutorial/junit/src/test/java/org/jboss/
   trunk/embedded/docs/tutorial/plain-java-application/README.html
   trunk/embedded/docs/tutorial/plain-java-application/README.wiki
   trunk/embedded/docs/tutorial/tomcat/README.html
   trunk/embedded/docs/tutorial/tomcat/README.wiki
Removed:
   trunk/embedded/docs/tutorial/junit/ide/
   trunk/embedded/docs/tutorial/junit/src/main/java/org/jboss/
   trunk/embedded/docs/tutorial/junit/src/test/java/org/jboss/
Modified:
   trunk/embedded/build.xml
Log:
expand tomcat tutorial

Modified: trunk/embedded/build.xml
===================================================================
--- trunk/embedded/build.xml	2007-04-10 20:24:04 UTC (rev 62245)
+++ trunk/embedded/build.xml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -458,6 +458,8 @@
          <zipfileset dir="docs" prefix="${embedded.version}/docs">
             <include name="**"/>
             <exclude name="**/.svn/**"/>
+            <exclude name="tutorial/junit/ide"/>
+            <exclude name="tutorial/junit/ide/**"/>
             <exclude name="**/*.wiki"/>
             <exclude name="**/.project"/>
             <exclude name="**/.classpath"/>

Added: trunk/embedded/docs/tutorial/junit/README.html
===================================================================
--- trunk/embedded/docs/tutorial/junit/README.html	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/README.html	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,97 @@
+<html>
+<body>
+<p>
+<h2> Junit testing with Embedded JBoss</h2>
+
+</p><p>
+This tutorial project can be built and run in three different ways:
+</p><p>
+<ul>
+<li> Within Intellij IDEA 6.0.x.  Double click on the example.ipr file.  Right click to run any of the example tests.</li>
+<li> Within Eclipse 3.2.2.  We couldn't find a good of packaging this (probably due to Eclipse ignorance), but import the .project file that is in the root of the Embedded JBoss distribution.  This will set up this example.</li>
+<li> As a standalone Ant script, build.xml within the root directory.  There are a few ant tasks that you can run:</li>
+<ul>
+<li> <i>tests</i> will run every junit test under src/test/org/jboss/embedded/tutorial/junit.  It will create a text and XML report in build/reports for each test case</li>
+<li> <i>all-tests</i> will run the single junit test src/test/org/jboss/embedded/tutorial/AllTests.java.  It will create a text and XML report in build/reports.  Compare the run times between the <i>tests</i> target and the <i>all-tests</i> target.</li>
+<li> <i>tests-report-html</i> creates a nice HTML view of the test generated reports that you can find under build/reports/html/index.html</li>
+</ul>
+</ul>
+</p><p>
+Each unit test shows a different way of doing things and use different pieces of the Bootstrap and AssembledDirectory APIs.
+</p><p>
+<h2> Learning about junit testing</h2>
+
+</p><p>
+There are certain issues with Embedded JBoss that you have to worry about when doing unit testing.
+</p><p>
+<h3>Bootstrap.bootstrap() and shutdown() can only be called once per JVM</h3>
+
+</p><p>
+This is perhaps the biggest problem when using Embedded JBoss in unit testing.  There are various situations where you run unit tests:
+</p><p>
+<ol>
+<li> Running one test method in a particular class</li>
+
+<li> Running all tests in a particular class</li>
+
+<li> Running all test classes in your IDE that are within a directory structure</li>
+</ol>
+
+</p><p>
+How do you write your junit classes so that they can run in each of these scenarios?  Solving #1 is easy.  Just call bootstrap() and shutdown() in overriden setup() and tearDown() methods of your test class.  The problem with this approach is that you will no longer be able to run in situations #2 and #3 because junit instantiates, by default, an instance of each test class per test method.  In scenario #3, it becomes even worse because many IDE's will run all unit tests within the same JVM, thus you'll have the same exact problem.
+</p><p>
+The solution is a simple one.  Call bootstrap() only once, and never call shutdown().  Here's how you might do it:
+</p><p>
+<pre>
+
+public class MyTestCase extends TestCase
+{
+
+
+   @Override
+   protected void setUp() throws Exception
+   {
+      if (!Bootstrap.getInstance().isStarted()) Bootstrap.getInstance().bootstrap();
+   }
+
+...
+
+}
+
+</pre>
+</p><p>
+<h3>How do I deploy something only once per test run?</h3>
+
+</p><p>
+At first thought, deploying your embedded archives in the setUp() method and undeploying in tearDown() of your TestCases sounds like a good idea.
+But what if you only want to deploy these archives once per test class?  Maybe deployment of any one of these archives takes a long time,
+or maybe you want to retain state between test method invocations.
+To do this, you need to wrap your test class in a TestSetup, yet you want to write your test class so that in can run in scenarios #1-3 shown above.
+One way of doing this is shown in <a href="src/test/java/org/jboss/embedded/tutorial/junit/EjbTestCase.java">org.jboss.embedded.tutorial.junit.EjbTestCase</a>
+</p><p>
+The suite() method creates a TestSuite using a TestSetup that does Bootstrap().bootstrap() in its setUp() method as well as calls the static deploy() method.
+This deploy method deploys the archive you are interested in deploying.
+The overriden setUp() and tearDown() methods determine whether or not initialize happened within the suite() method, or
+whether an individual test method was run from your IDE.  If the test class had not been initialized, it calls Bootstrap.bootstrap() and the deploy() method.
+</p><p>
+Looking at EjbTestCase, that's a lot of code to write.  Embedded JBoss provides a base test class to make it easier for you:  org.jboss.embedded.junit.BaseTestCase.
+<a href="src/test/java/org/jboss/embedded/tutorial/junit/EasierEjbTestCase.java">org.jboss.embedded.tutorial.junit.EasierEjbTestCase</a> shows how you could rewrite EjbTestCase
+using BaseTestCase.
+</p><p>
+BaseTestCase creates the same template internally that we showed explicitly previously.  It looks to see if the test class has implemented a static deploy and/or undeploy method and calls those methods via reflection at the appropriate times.
+</p><p>
+</p><p>
+<h3> Bootstrap.bootstrap() takes 5-6 seconds.  (measured on a 2.4 ghz Core 2 platform)</h3>
+
+</p><p>
+5-6 seconds isn't that long in the grand scheme of things, but starts to add up.  A common thing to do is to automate junit test runs by creating an Ant
+batchtest target within your build.xml file.  The problem with this scenario is that each test will bootstrap Embedded JBoss and
+your entire suite will run very slowly.  In this scenario, it is best to create a suite class that runs all the tests.
+<a href="src/test/java/org/jboss/embedded/tutorial/AllTests.java">org.jboss.embedded.tutorial.AllTests</a>  exemplifies this.
+</p><p>
+</p><p>
+</p><p>
+</p><p>
+</p>
+</body>
+</html>

Added: trunk/embedded/docs/tutorial/junit/README.wiki
===================================================================
--- trunk/embedded/docs/tutorial/junit/README.wiki	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/README.wiki	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,77 @@
+!!! Junit testing with Embedded JBoss
+
+This tutorial project can be built and run in three different ways:
+
+* Within Intellij IDEA 6.0.x.  Double click on the example.ipr file.  Right click to run any of the example tests.
+* Within Eclipse 3.2.2.  We couldn't find a good of packaging this (probably due to Eclipse ignorance), but import the .project file that is in the root of the Embedded JBoss distribution.  This will set up this example.
+* As a standalone Ant script, build.xml within the root directory.  There are a few ant tasks that you can run:
+** ''tests'' will run every junit test under src/test/org/jboss/embedded/tutorial/junit.  It will create a text and XML report in build/reports for each test case
+** ''all-tests'' will run the single junit test src/test/org/jboss/embedded/tutorial/AllTests.java.  It will create a text and XML report in build/reports.  Compare the run times between the ''tests'' target and the ''all-tests'' target.
+** ''tests-report-html'' creates a nice HTML view of the test generated reports that you can find under build/reports/html/index.html
+
+Each unit test shows a different way of doing things and use different pieces of the Bootstrap and AssembledDirectory APIs.
+
+!!! Learning about junit testing
+
+There are certain issues with Embedded JBoss that you have to worry about when doing unit testing.
+
+!!Bootstrap.bootstrap() and shutdown() can only be called once per JVM
+
+This is perhaps the biggest problem when using Embedded JBoss in unit testing.  There are various situations where you run unit tests:
+
+# Running one test method in a particular class
+# Running all tests in a particular class
+# Running all test classes in your IDE that are within a directory structure
+
+How do you write your junit classes so that they can run in each of these scenarios?  Solving #1 is easy.  Just call bootstrap() and shutdown() in overriden setup() and tearDown() methods of your test class.  The problem with this approach is that you will no longer be able to run in situations #2 and #3 because junit instantiates, by default, an instance of each test class per test method.  In scenario #3, it becomes even worse because many IDE's will run all unit tests within the same JVM, thus you'll have the same exact problem.
+
+The solution is a simple one.  Call bootstrap() only once, and never call shutdown().  Here's how you might do it:
+
+{{{
+
+public class MyTestCase extends TestCase
+{
+
+
+   @Override
+   protected void setUp() throws Exception
+   {
+      if (!Bootstrap.getInstance().isStarted()) Bootstrap.getInstance().bootstrap();
+   }
+
+...
+
+}
+
+}}}
+
+!!How do I deploy something only once per test run?
+
+At first thought, deploying your embedded archives in the setUp() method and undeploying in tearDown() of your TestCases sounds like a good idea.
+But what if you only want to deploy these archives once per test class?  Maybe deployment of any one of these archives takes a long time,
+or maybe you want to retain state between test method invocations.
+To do this, you need to wrap your test class in a TestSetup, yet you want to write your test class so that in can run in scenarios #1-3 shown above.
+One way of doing this is shown in [org.jboss.embedded.tutorial.junit.EjbTestCase|src/test/java/org/jboss/embedded/tutorial/junit/EjbTestCase.java]
+
+The suite() method creates a TestSuite using a TestSetup that does Bootstrap().bootstrap() in its setUp() method as well as calls the static deploy() method.
+This deploy method deploys the archive you are interested in deploying.
+The overriden setUp() and tearDown() methods determine whether or not initialize happened within the suite() method, or
+whether an individual test method was run from your IDE.  If the test class had not been initialized, it calls Bootstrap.bootstrap() and the deploy() method.
+
+Looking at EjbTestCase, that's a lot of code to write.  Embedded JBoss provides a base test class to make it easier for you:  org.jboss.embedded.junit.BaseTestCase.
+[org.jboss.embedded.tutorial.junit.EasierEjbTestCase|src/test/java/org/jboss/embedded/tutorial/junit/EasierEjbTestCase.java] shows how you could rewrite EjbTestCase
+using BaseTestCase.
+
+BaseTestCase creates the same template internally that we showed explicitly previously.  It looks to see if the test class has implemented a static deploy and/or undeploy method and calls those methods via reflection at the appropriate times.
+
+
+!! Bootstrap.bootstrap() takes 5-6 seconds.  (measured on a 2.4 ghz Core 2 platform)
+
+5-6 seconds isn't that long in the grand scheme of things, but starts to add up.  A common thing to do is to automate junit test runs by creating an Ant
+batchtest target within your build.xml file.  The problem with this scenario is that each test will bootstrap Embedded JBoss and
+your entire suite will run very slowly.  In this scenario, it is best to create a suite class that runs all the tests.
+[org.jboss.embedded.tutorial.AllTests|src/test/java/org/jboss/embedded/tutorial/AllTests.java]  exemplifies this.
+
+
+
+

Copied: trunk/embedded/docs/tutorial/junit/build.xml (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/build.xml)
===================================================================
--- trunk/embedded/docs/tutorial/junit/build.xml	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/build.xml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,180 @@
+<?xml version="1.0"?>
+
+<!-- ======================================================================= -->
+<!-- JBoss build file                                                       -->
+<!-- ======================================================================= -->
+
+<project name="JBoss" default="tests" basedir=".">
+   <property name="src.dir" value="${basedir}/src/main/java"/>
+   <property name="test.src.dir" value="${basedir}/src/test/java"/>
+   <property name="build.dir" value="${basedir}/build"/>
+   <property name="build.reports" value="${basedir}/build/reports"/>
+   <property name="build.stylesheets" value="${basedir}/build/stylesheets"/>
+   <property name="src.stylesheets" value="${basedir}/stylesheets"/>
+   <property name="build.classes.dir" value="${build.dir}/classes"/>
+   <property name="build.test.classes.dir" value="${build.dir}/test-classes"/>
+   <property name="lib.dir" value="../../../lib"/>
+   <property name="optional.lib.dir" value="../../../optional-lib"/>
+   <property name="conf.dir" value="../../../bootstrap"/>
+
+   <!-- =================================================================== -->
+   <!-- Prepares the build directory                                        -->
+   <!-- =================================================================== -->
+   <target name="prepare">
+      <mkdir dir="${build.dir}"/>
+      <mkdir dir="${build.classes.dir}"/>
+      <mkdir dir="${build.test.classes.dir}"/>
+      <!-- Build classpath -->
+      <path id="build.classpath">
+         <fileset dir="${lib.dir}">
+            <include name="*.jar"/>
+         </fileset>
+         <fileset dir="${optional.lib.dir}">
+            <include name="*.jar"/>
+         </fileset>
+         <pathelement location="${build.classes.dir}"/>
+      </path>
+
+      <path id="junit.classpath">
+         <pathelement location="${conf.dir}"/>
+         <pathelement location="${build.test.classes.dir}"/>
+         <fileset dir="${lib.dir}">
+            <include name="*.jar"/>
+         </fileset>
+         <fileset dir="${optional.lib.dir}">
+            <include name="*.jar"/>
+         </fileset>
+         <fileset dir="${build.dir}">
+            <include name="tutorial.jar"/>
+         </fileset>
+      </path>
+
+   </target>
+
+   <!-- =================================================================== -->
+   <!-- Compiles the source code                                            -->
+   <!-- =================================================================== -->
+   <target name="compile" depends="prepare">
+      <javac srcdir="${src.dir}"
+             destdir="${build.classes.dir}"
+             debug="on"
+             deprecation="on"
+             optimize="off"
+             includes="**">
+         <classpath refid="build.classpath"/>
+      </javac>
+      <javac srcdir="${test.src.dir}"
+             destdir="${build.test.classes.dir}"
+             debug="on"
+             deprecation="on"
+             optimize="off"
+             includes="**">
+         <classpath refid="build.classpath"/>
+      </javac>
+   </target>
+
+   <target name="ejbjar" depends="compile">
+      <jar jarfile="build/tutorial.jar">
+         <fileset dir="${build.classes.dir}">
+            <include name="**/beans/*.class"/>
+         </fileset>
+         <fileset dir="src/main/resources">
+            <include name="*.xml"/>
+            <include name="META-INF/persistence.xml"/>
+         </fileset>
+      </jar>
+   </target>
+
+   <target name="tests" depends="ejbjar">
+
+      <mkdir dir="${build.reports}"/>
+      <junit printsummary="yes"
+             haltonerror="false"
+             haltonfailure="false"
+             fork="true">
+
+         <!-- clean shutdown so we don't keep any file locks -->
+         <sysproperty key="shutdown.embedded.jboss" value="true"/>
+
+         <classpath>
+            <path refid="junit.classpath"/>
+         </classpath>
+
+         <formatter type="plain" usefile="true"/>
+         <formatter type="xml" usefile="true"/>
+
+         <batchtest todir="${build.reports}"
+                    haltonerror="false"
+                    haltonfailure="false"
+                    fork="true">
+
+            <fileset dir="${build.test.classes.dir}">
+               <include name="**/*TestCase.class"/>
+            </fileset>
+         </batchtest>
+      </junit>
+   </target>
+
+   <target name="all-tests" depends="ejbjar">
+
+      <mkdir dir="${build.reports}"/>
+      <junit printsummary="yes"
+             haltonerror="false"
+             haltonfailure="false"
+             fork="true">
+
+         <classpath>
+            <path refid="junit.classpath"/>
+         </classpath>
+
+         <formatter type="plain" usefile="true"/>
+         <formatter type="xml" usefile="true"/>
+
+         <test
+                 name="org.jboss.embedded.tutorial.AllTests"
+                 todir="${build.reports}"
+                 haltonerror="false"
+                 haltonfailure="false"
+                 fork="true"/>
+      </junit>
+   </target>
+
+
+   <target name="compile-stylesheets">
+      <mkdir dir="${build.stylesheets}"/>
+      <copy todir="${build.stylesheets}" filtering="yes">
+         <fileset dir="${src.stylesheets}">
+            <include name="**/*"/>
+         </fileset>
+      </copy>
+   </target>
+
+   <target name="tests-report-html" depends="compile-stylesheets">
+      <mkdir dir="${build.reports}/html"/>
+
+      <junitreport todir="${build.reports}">
+         <fileset dir="${build.reports}">
+            <include name="TEST-*.xml"/>
+         </fileset>
+         <report format="frames"
+                 todir="${build.reports}/html"
+                 styledir="${build.stylesheets}"
+                 />
+      </junitreport>
+   </target>
+
+   <target name="tests-report-clean">
+      <delete dir="${build.reports}"/>
+   </target>
+
+
+   <!-- =================================================================== -->
+   <!-- Cleans up generated stuff                                           -->
+   <!-- =================================================================== -->
+   <target name="clean">
+      <delete dir="${build.dir}"/>
+   </target>
+
+
+</project>
+

Copied: trunk/embedded/docs/tutorial/junit/example.iml (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/example.iml)
===================================================================
--- trunk/embedded/docs/tutorial/junit/example.iml	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/example.iml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+  <component name="ModuleRootManager" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../optional-lib/jboss-test.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../lib/hibernate-all.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../optional-lib/junit.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../lib/jboss-embedded-all.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../lib/thirdparty-all.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="file://$MODULE_DIR$/../../../bootstrap" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntryProperties />
+  </component>
+</module>
+

Copied: trunk/embedded/docs/tutorial/junit/example.ipr (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/example.ipr)
===================================================================
--- trunk/embedded/docs/tutorial/junit/example.ipr	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/example.ipr	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,286 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="true">
+  <component name="AntConfiguration">
+    <defaultAnt bundledAnt="true" />
+  </component>
+  <component name="BuildJarProjectSettings">
+    <option name="BUILD_JARS_ON_MAKE" value="false" />
+  </component>
+  <component name="CodeStyleProjectProfileManger">
+    <option name="PROJECT_PROFILE" />
+    <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+  </component>
+  <component name="CodeStyleSettingsManager">
+    <option name="PER_PROJECT_SETTINGS" />
+    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
+  </component>
+  <component name="CompilerConfiguration">
+    <option name="DEFAULT_COMPILER" value="Javac" />
+    <option name="DEPLOY_AFTER_MAKE" value="0" />
+    <resourceExtensions>
+      <entry name=".+\.(properties|xml|html|dtd|tld)" />
+      <entry name=".+\.(gif|png|jpeg|jpg)" />
+    </resourceExtensions>
+    <wildcardResourcePatterns>
+      <entry name="?*.properties" />
+      <entry name="?*.xml" />
+      <entry name="?*.gif" />
+      <entry name="?*.png" />
+      <entry name="?*.jpeg" />
+      <entry name="?*.jpg" />
+      <entry name="?*.html" />
+      <entry name="?*.dtd" />
+      <entry name="?*.tld" />
+    </wildcardResourcePatterns>
+  </component>
+  <component name="DataSourceManagerImpl" />
+  <component name="DependenciesAnalyzeManager">
+    <option name="myForwardDirection" value="false" />
+  </component>
+  <component name="DependencyValidationManager" />
+  <component name="EclipseCompilerSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="true" />
+    <option name="DEPRECATION" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="EclipseEmbeddedCompilerSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="true" />
+    <option name="DEPRECATION" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="EntryPointsManager">
+    <entry_points />
+  </component>
+  <component name="ExportToHTMLSettings">
+    <option name="PRINT_LINE_NUMBERS" value="false" />
+    <option name="OPEN_IN_BROWSER" value="false" />
+    <option name="OUTPUT_DIRECTORY" />
+  </component>
+  <component name="GUI Designer component loader factory" />
+  <component name="IdProvider" IDEtalkID="3A2717DC122FBF4BF2CC994944233637" />
+  <component name="InspectionProjectProfileManager">
+    <option name="PROJECT_PROFILE" value="Project Default" />
+    <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+    <scopes />
+    <profiles>
+      <profile version="1.0" is_locked="false">
+        <option name="myName" value="Project Default" />
+        <option name="myLocal" value="false" />
+        <used_levels>
+          <error>
+            <option name="myName" value="ERROR" />
+            <option name="myVal" value="400" />
+          </error>
+          <warning>
+            <option name="myName" value="WARNING" />
+            <option name="myVal" value="300" />
+          </warning>
+          <information>
+            <option name="myName" value="INFO" />
+            <option name="myVal" value="200" />
+          </information>
+          <server>
+            <option name="myName" value="SERVER PROBLEM" />
+            <option name="myVal" value="100" />
+          </server>
+        </used_levels>
+      </profile>
+    </profiles>
+  </component>
+  <component name="JavacSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="DEPRECATION" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="JavadocGenerationManager">
+    <option name="OUTPUT_DIRECTORY" />
+    <option name="OPTION_SCOPE" value="protected" />
+    <option name="OPTION_HIERARCHY" value="true" />
+    <option name="OPTION_NAVIGATOR" value="true" />
+    <option name="OPTION_INDEX" value="true" />
+    <option name="OPTION_SEPARATE_INDEX" value="true" />
+    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
+    <option name="OPTION_DEPRECATED_LIST" value="true" />
+    <option name="OTHER_OPTIONS" value="" />
+    <option name="HEAP_SIZE" />
+    <option name="LOCALE" />
+    <option name="OPEN_IN_BROWSER" value="true" />
+  </component>
+  <component name="JikesSettings">
+    <option name="JIKES_PATH" value="" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="DEPRECATION" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="IS_EMACS_ERRORS_MODE" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="LogConsolePreferences">
+    <option name="FILTER_ERRORS" value="false" />
+    <option name="FILTER_WARNINGS" value="false" />
+    <option name="FILTER_INFO" value="true" />
+    <option name="CUSTOM_FILTER" />
+  </component>
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
+    </group>
+  </component>
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/example.iml" filepath="$PROJECT_DIR$/example.iml" />
+    </modules>
+  </component>
+  <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5" project-jdk-type="JavaSDK">
+    <output url="file://$PROJECT_DIR$/classes" />
+  </component>
+  <component name="ProjectRunConfigurationManager" />
+  <component name="RmicSettings">
+    <option name="IS_EANABLED" value="false" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="GENERATE_IIOP_STUBS" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="StarteamVcsAdapter" />
+  <component name="VssVcs" />
+  <component name="com.intellij.jsf.UserDefinedFacesConfigs">
+    <option name="USER_DEFINED_CONFIGS">
+      <value>
+        <list size="0" />
+      </value>
+    </option>
+  </component>
+  <component name="libraryTable" />
+  <component name="uidesigner-configuration">
+    <option name="INSTRUMENT_CLASSES" value="true" />
+    <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
+    <option name="DEFAULT_LAYOUT_MANAGER" value="GridLayoutManager" />
+  </component>
+  <UsedPathMacros />
+</project>
+

Copied: trunk/embedded/docs/tutorial/junit/example.iws (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/example.iws)
===================================================================
--- trunk/embedded/docs/tutorial/junit/example.iws	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/example.iws	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,632 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="true">
+  <component name="BookmarkManager" />
+  <component name="ChangeBrowserSettings">
+    <option name="MAIN_SPLITTER_PROPORTION" value="0.3" />
+    <option name="MESSAGES_SPLITTER_PROPORTION" value="0.8" />
+    <option name="USE_DATE_BEFORE_FILTER" value="false" />
+    <option name="USE_DATE_AFTER_FILTER" value="false" />
+    <option name="USE_CHANGE_BEFORE_FILTER" value="false" />
+    <option name="USE_CHANGE_AFTER_FILTER" value="false" />
+    <option name="DATE_BEFORE" value="" />
+    <option name="DATE_AFTER" value="" />
+    <option name="CHANGE_BEFORE" value="" />
+    <option name="CHANGE_AFTER" value="" />
+    <option name="USE_USER_FILTER" value="false" />
+    <option name="USER" value="" />
+  </component>
+  <component name="ChangeListManager">
+    <list default="true" name="Default" comment="" />
+  </component>
+  <component name="ChangeListSynchronizer" />
+  <component name="ChangesViewManager" flattened_view="true" />
+  <component name="CheckinPanelState" />
+  <component name="Commander">
+    <leftPanel />
+    <rightPanel />
+    <splitter proportion="0.5" />
+  </component>
+  <component name="CompilerWorkspaceConfiguration">
+    <option name="COMPILE_IN_BACKGROUND" value="false" />
+    <option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true" />
+    <option name="CLOSE_MESSAGE_VIEW_IF_SUCCESS" value="true" />
+    <option name="COMPILE_DEPENDENT_FILES" value="false" />
+    <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
+    <option name="ASSERT_NOT_NULL" value="true" />
+  </component>
+  <component name="CoverageDataManager" />
+  <component name="Cvs2Configuration">
+    <option name="PRUNE_EMPTY_DIRECTORIES" value="true" />
+    <option name="MERGING_MODE" value="0" />
+    <option name="MERGE_WITH_BRANCH1_NAME" value="HEAD" />
+    <option name="MERGE_WITH_BRANCH2_NAME" value="HEAD" />
+    <option name="RESET_STICKY" value="false" />
+    <option name="CREATE_NEW_DIRECTORIES" value="true" />
+    <option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv" />
+    <option name="PROCESS_UNKNOWN_FILES" value="false" />
+    <option name="PROCESS_DELETED_FILES" value="false" />
+    <option name="PROCESS_IGNORED_FILES" value="false" />
+    <option name="RESERVED_EDIT" value="false" />
+    <option name="CHECKOUT_DATE_OR_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="UPDATE_DATE_OR_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="SHOW_CHANGES_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="SHOW_OUTPUT" value="false" />
+    <option name="ADD_WATCH_INDEX" value="0" />
+    <option name="REMOVE_WATCH_INDEX" value="0" />
+    <option name="UPDATE_KEYWORD_SUBSTITUTION" />
+    <option name="MAKE_NEW_FILES_READONLY" value="false" />
+    <option name="SHOW_CORRUPTED_PROJECT_FILES" value="0" />
+    <option name="TAG_AFTER_PROJECT_COMMIT" value="false" />
+    <option name="OVERRIDE_EXISTING_TAG_FOR_PROJECT" value="true" />
+    <option name="TAG_AFTER_PROJECT_COMMIT_NAME" value="" />
+    <option name="CLEAN_COPY" value="false" />
+  </component>
+  <component name="DaemonCodeAnalyzer">
+    <disable_hints />
+  </component>
+  <component name="DebuggerManager">
+    <breakpoint_any>
+      <breakpoint>
+        <option name="NOTIFY_CAUGHT" value="true" />
+        <option name="NOTIFY_UNCAUGHT" value="true" />
+        <option name="ENABLED" value="false" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+      <breakpoint>
+        <option name="NOTIFY_CAUGHT" value="true" />
+        <option name="NOTIFY_UNCAUGHT" value="true" />
+        <option name="ENABLED" value="false" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+    </breakpoint_any>
+    <breakpoint_rules />
+    <ui_properties />
+  </component>
+  <component name="ErrorTreeViewConfiguration">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="HIDE_WARNINGS" value="false" />
+  </component>
+  <component name="FavoritesManager">
+    <favorites_list name="example" />
+  </component>
+  <component name="FavoritesProjectViewPane" />
+  <component name="FileEditorManager">
+    <leaf />
+  </component>
+  <component name="FindManager">
+    <FindUsagesManager>
+      <setting name="OPEN_NEW_TAB" value="false" />
+    </FindUsagesManager>
+  </component>
+  <component name="HierarchyBrowserManager">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="SORT_ALPHABETICALLY" value="false" />
+    <option name="HIDE_CLASSES_WHERE_METHOD_NOT_IMPLEMENTED" value="false" />
+  </component>
+  <component name="InspectionManager">
+    <option name="AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="SPLITTER_PROPORTION" value="0.5" />
+    <option name="GROUP_BY_SEVERITY" value="false" />
+    <option name="FILTER_RESOLVED_ITEMS" value="true" />
+    <option name="ANALYZE_TEST_SOURCES" value="true" />
+    <option name="SHOW_DIFF_WITH_PREVIOUS_RUN" value="false" />
+    <option name="SCOPE_TYPE" value="1" />
+    <option name="CUSTOM_SCOPE_NAME" value="" />
+    <option name="SHOW_ONLY_DIFF" value="false" />
+    <option name="myCurrentProfileName" value="Default" />
+  </component>
+  <component name="J2EEProjectPane" />
+  <component name="JspContextManager" />
+  <component name="ModuleEditorState">
+    <option name="LAST_EDITED_MODULE_NAME" />
+    <option name="LAST_EDITED_TAB_NAME" />
+  </component>
+  <component name="NamedScopeManager" />
+  <component name="PackagesPane">
+    <subPane>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="PerforceChangeBrowserSettings">
+    <option name="USE_CLIENT_FILTER" value="true" />
+    <option name="CLIENT" value="" />
+  </component>
+  <component name="PerforceDirect.Settings">
+    <option name="useP4CONFIG" value="true" />
+    <option name="port" value="&lt;perforce_server&gt;:1666" />
+    <option name="client" value="" />
+    <option name="user" value="" />
+    <option name="passwd" value="" />
+    <option name="showCmds" value="false" />
+    <option name="useNativeApi" value="true" />
+    <option name="pathToExec" value="p4" />
+    <option name="useCustomPathToExec" value="false" />
+    <option name="SYNC_FORCE" value="false" />
+    <option name="SYNC_RUN_RESOLVE" value="true" />
+    <option name="REVERT_UNCHANGED_FILES" value="true" />
+    <option name="CHARSET" value="none" />
+    <option name="SHOW_BRANCHES_HISTORY" value="true" />
+    <option name="ENABLED" value="true" />
+    <option name="USE_LOGIN" value="false" />
+    <option name="LOGIN_SILENTLY" value="false" />
+    <option name="INTEGRATE_RUN_RESOLVE" value="true" />
+    <option name="INTEGRATE_REVERT_UNCHANGED" value="true" />
+    <option name="SERVER_TIMEOUT" value="20000" />
+  </component>
+  <component name="ProjectLevelVcsManager">
+    <OptionsSetting value="true" id="Add" />
+    <OptionsSetting value="true" id="Remove" />
+    <OptionsSetting value="true" id="Checkin" />
+    <OptionsSetting value="true" id="Checkout" />
+    <OptionsSetting value="true" id="Update" />
+    <OptionsSetting value="true" id="Status" />
+    <OptionsSetting value="true" id="Edit" />
+    <OptionsSetting value="true" id="Undo Check Out" />
+    <OptionsSetting value="true" id="Compare with SourceSafe Version" />
+    <OptionsSetting value="true" id="Get Latest Version" />
+    <ConfirmationsSetting value="0" id="Add" />
+    <ConfirmationsSetting value="0" id="Remove" />
+  </component>
+  <component name="ProjectPane">
+    <subPane>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\test" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\test\java" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\test\java\org\jboss\embedded\tutorial\junit" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\main" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\main\resources" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="example" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\main" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\main\java" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\jboss\jboss-head\embedded\embedded-jboss-beta2\docs\tutorial\junit\ide\src\main\java\org\jboss\embedded\tutorial\junit\beans" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="ProjectReloadState">
+    <option name="STATE" value="2" />
+  </component>
+  <component name="ProjectView">
+    <navigator currentView="ProjectPane" proportions="0.16666667" version="1" splitterProportion="0.5">
+      <flattenPackages />
+      <showMembers />
+      <showModules />
+      <showLibraryContents />
+      <hideEmptyPackages />
+      <abbreviatePackageNames />
+      <showStructure PackagesPane="false" Scope="false" ProjectPane="false" />
+      <autoscrollToSource />
+      <autoscrollFromSource />
+      <sortByType />
+    </navigator>
+  </component>
+  <component name="PropertiesComponent">
+    <property name="MemberChooser.copyJavadoc" value="false" />
+    <property name="GoToClass.includeLibraries" value="false" />
+    <property name="MemberChooser.showClasses" value="true" />
+    <property name="MemberChooser.sorted" value="false" />
+    <property name="GoToFile.includeJavaFiles" value="false" />
+    <property name="GoToClass.toSaveIncludeLibraries" value="false" />
+  </component>
+  <component name="ReadonlyStatusHandler">
+    <option name="SHOW_DIALOG" value="true" />
+  </component>
+  <component name="RecentsManager" />
+  <component name="RestoreUpdateTree" />
+  <component name="RunManager" selected="JUnit.org.jboss.embedded.tutorial.junit in example">
+    <tempConfiguration default="false" name="org.jboss.embedded.tutorial.junit in example" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
+      <module name="example" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="PACKAGE_NAME" value="org.jboss.embedded.tutorial.junit" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="METHOD_NAME" />
+      <option name="TEST_OBJECT" value="package" />
+      <option name="VM_PARAMETERS" />
+      <option name="PARAMETERS" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ADDITIONAL_CLASS_PATH" />
+      <option name="TEST_SEARCH_SCOPE">
+        <value defaultName="singleModule" />
+      </option>
+      <RunnerSettings RunnerId="Run" />
+      <ConfigurationWrapper RunnerId="Run" />
+      <method>
+        <option name="Make" value="true" />
+      </method>
+    </tempConfiguration>
+    <configuration default="true" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
+      <module name="" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="PACKAGE_NAME" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="METHOD_NAME" />
+      <option name="TEST_OBJECT" value="class" />
+      <option name="VM_PARAMETERS" />
+      <option name="PARAMETERS" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ADDITIONAL_CLASS_PATH" />
+      <option name="TEST_SEARCH_SCOPE">
+        <value defaultName="wholeProject" />
+      </option>
+      <method>
+        <option name="Make" value="true" />
+      </method>
+    </configuration>
+    <configuration default="true" type="Applet" factoryName="Applet">
+      <module name="" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="HTML_FILE_NAME" />
+      <option name="HTML_USED" value="false" />
+      <option name="WIDTH" value="400" />
+      <option name="HEIGHT" value="300" />
+      <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+      <option name="VM_PARAMETERS" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+    </configuration>
+    <configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false">
+      <option name="MAIN_CLASS_NAME" />
+      <option name="VM_PARAMETERS" />
+      <option name="PROGRAM_PARAMETERS" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="ENABLE_SWING_INSPECTOR" value="false" />
+      <module name="" />
+    </configuration>
+    <configuration default="true" type="Remote" factoryName="Remote">
+      <option name="USE_SOCKET_TRANSPORT" value="true" />
+      <option name="SERVER_MODE" value="false" />
+      <option name="SHMEM_ADDRESS" value="javadebug" />
+      <option name="HOST" value="localhost" />
+      <option name="PORT" value="5005" />
+    </configuration>
+    <configuration name="&lt;template&gt;" type="WebApp" default="true" selected="false">
+      <Host>localhost</Host>
+      <Port>5050</Port>
+    </configuration>
+  </component>
+  <component name="ScopeViewComponent">
+    <subPane subId="Project">
+      <PATH>
+        <PATH_ELEMENT USER_OBJECT="Root">
+          <option name="myItemId" value="" />
+          <option name="myItemType" value="" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="SelectInManager" />
+  <component name="StarteamConfiguration">
+    <option name="SERVER" value="" />
+    <option name="PORT" value="49201" />
+    <option name="USER" value="" />
+    <option name="PASSWORD" value="" />
+    <option name="PROJECT" value="" />
+    <option name="VIEW" value="" />
+    <option name="ALTERNATIVE_WORKING_PATH" value="" />
+    <option name="LOCK_ON_CHECKOUT" value="false" />
+    <option name="UNLOCK_ON_CHECKIN" value="false" />
+  </component>
+  <component name="StructuralSearchPlugin" />
+  <component name="StructureViewFactory">
+    <option name="AUTOSCROLL_MODE" value="true" />
+    <option name="AUTOSCROLL_FROM_SOURCE" value="false" />
+    <option name="ACTIVE_ACTIONS" value="" />
+  </component>
+  <component name="Struts Assistant">
+    <option name="showInputs" value="true" />
+    <option name="resources">
+      <value>
+        <option name="strutsPath" />
+        <option name="strutsHelp" />
+      </value>
+    </option>
+    <option name="selectedTaglibs" />
+    <option name="selectedTaglibs" />
+    <option name="myStrutsValidationEnabled" value="true" />
+    <option name="myTilesValidationEnabled" value="true" />
+    <option name="myValidatorValidationEnabled" value="true" />
+    <option name="myReportErrorsAsWarnings" value="true" />
+  </component>
+  <component name="SvnChangesBrowserSettings">
+    <option name="USE_AUTHOR_FIELD" value="true" />
+    <option name="AUTHOR" value="" />
+    <option name="LOCATION" value="" />
+    <option name="USE_PROJECT_SETTINGS" value="true" />
+    <option name="USE_ALTERNATE_LOCATION" value="false" />
+  </component>
+  <component name="SvnConfiguration">
+    <option name="USER" value="" />
+    <option name="PASSWORD" value="" />
+    <option name="PROCESS_UNRESOLVED" value="false" />
+    <option name="LAST_MERGED_REVISION" />
+    <option name="UPDATE_RUN_STATUS" value="false" />
+    <option name="UPDATE_RECURSIVELY" value="true" />
+    <option name="MERGE_DRY_RUN" value="false" />
+    <checkoutURL>http://svn.jboss.org</checkoutURL>
+  </component>
+  <component name="TodoView" selected-index="0">
+    <todo-panel id="selected-file">
+      <are-packages-shown value="false" />
+      <are-modules-shown value="false" />
+      <flatten-packages value="false" />
+      <is-autoscroll-to-source value="true" />
+    </todo-panel>
+    <todo-panel id="all">
+      <are-packages-shown value="true" />
+      <are-modules-shown value="false" />
+      <flatten-packages value="false" />
+      <is-autoscroll-to-source value="true" />
+    </todo-panel>
+  </component>
+  <component name="ToolWindowManager">
+    <frame x="-4" y="-4" width="1928" height="1174" extended-state="0" />
+    <editor active="true" />
+    <layout>
+      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32995194" order="0" />
+      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="1" />
+      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32919848" order="8" />
+      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" />
+      <window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+      <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3298279" order="2" />
+      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+      <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="4" />
+      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="0" />
+      <window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="0" />
+      <window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+      <window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="3" />
+      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="5" />
+    </layout>
+  </component>
+  <component name="VCS.FileViewConfiguration">
+    <option name="SELECTED_STATUSES" value="DEFAULT" />
+    <option name="SELECTED_COLUMNS" value="DEFAULT" />
+    <option name="SHOW_FILTERS" value="true" />
+    <option name="CUSTOMIZE_VIEW" value="true" />
+    <option name="SHOW_FILE_HISTORY_AS_TREE" value="true" />
+  </component>
+  <component name="VcsManagerConfiguration">
+    <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
+    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
+    <option name="PERFORM_UPDATE_IN_BACKGROUND" value="false" />
+    <option name="PERFORM_COMMIT_IN_BACKGROUND" value="false" />
+    <option name="PUT_FOCUS_INTO_COMMENT" value="false" />
+    <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
+    <option name="LAST_COMMIT_MESSAGE" />
+    <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
+    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
+    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
+    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
+    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
+    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
+    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
+    <option name="ERROR_OCCURED" value="false" />
+    <option name="ACTIVE_VCS_NAME" />
+    <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
+    <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
+    <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+  </component>
+  <component name="VssConfiguration">
+    <option name="CLIENT_PATH" value="" />
+    <option name="SRCSAFEINI_PATH" value="" />
+    <option name="USER_NAME" value="" />
+    <option name="PWD" value="" />
+    <option name="VSS_IS_INITIALIZED" value="true" />
+    <CheckoutOptions>
+      <option name="COMMENT" value="" />
+      <option name="DO_NOT_GET_LATEST_VERSION" value="false" />
+      <option name="REPLACE_WRITABLE" value="false" />
+      <option name="RECURSIVE" value="false" />
+    </CheckoutOptions>
+    <CheckinOptions>
+      <option name="COMMENT" value="" />
+      <option name="KEEP_CHECKED_OUT" value="false" />
+      <option name="RECURSIVE" value="false" />
+    </CheckinOptions>
+    <AddOptions>
+      <option name="COMMENT" value="" />
+      <option name="STORE_ONLY_LATEST_VERSION" value="false" />
+      <option name="CHECK_OUT_IMMEDIATELY" value="false" />
+      <option name="FILE_TYPE" value="0" />
+    </AddOptions>
+    <UndocheckoutOptions>
+      <option name="MAKE_WRITABLE" value="false" />
+      <option name="REPLACE_LOCAL_COPY" value="0" />
+      <option name="RECURSIVE" value="false" />
+    </UndocheckoutOptions>
+    <GetOptions>
+      <option name="REPLACE_WRITABLE" value="0" />
+      <option name="MAKE_WRITABLE" value="false" />
+      <option name="ANSWER_NEGATIVELY" value="false" />
+      <option name="ANSWER_POSITIVELY" value="false" />
+      <option name="RECURSIVE" value="false" />
+      <option name="VERSION" />
+    </GetOptions>
+    <VssConfigurableExcludedFilesTag />
+  </component>
+  <component name="antWorkspaceConfiguration">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="FILTER_TARGETS" value="false" />
+  </component>
+  <component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1">
+    <option name="myLastEditedConfigurable" />
+  </component>
+  <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.16666667" version="1">
+    <option name="myPlainMode" value="false" />
+    <option name="myLastEditedConfigurable" value="jboss-embedded-all.jar" />
+  </component>
+  <component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="" version="1">
+    <option name="myLastEditedConfigurable" />
+  </component>
+  <component name="editorHistoryManager">
+    <entry file="file://$PROJECT_DIR$/src/main/java/org/jboss/embedded/tutorial/junit/beans/CustomerDAOLocal.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="23" column="17" selection-start="1099" selection-end="1099" vertical-scroll-proportion="0.050246306">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+  </component>
+</project>
+

Copied: trunk/embedded/docs/tutorial/junit/src/main/java/org (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/src/main/java/org)

Copied: trunk/embedded/docs/tutorial/junit/src/main/java/org/jboss (from rev 62245, trunk/embedded/docs/tutorial/junit/ide/src/main/java/org/jboss)

Copied: trunk/embedded/docs/tutorial/junit/src/main/resources/META-INF/persistence.xml (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/src/main/resources/META-INF/persistence.xml)
===================================================================
--- trunk/embedded/docs/tutorial/junit/src/main/resources/META-INF/persistence.xml	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/src/main/resources/META-INF/persistence.xml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence>
+   <persistence-unit name="custdb">
+      <jta-data-source>java:/DefaultDS</jta-data-source>
+      <properties>
+         <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+         <property name="jboss.entity.manager.jndi.name" value="java:/EntityManagers/custdb"/>
+      </properties>
+   </persistence-unit>
+</persistence>

Copied: trunk/embedded/docs/tutorial/junit/src/main/resources/queue-service.xml (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/src/main/resources/queue-service.xml)
===================================================================
--- trunk/embedded/docs/tutorial/junit/src/main/resources/queue-service.xml	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/src/main/resources/queue-service.xml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,7 @@
+<server>
+   <mbean code="org.jboss.mq.server.jmx.Queue"
+      name="jboss.mq.destination:service=Queue,name=example">
+      <attribute name="JNDIName">queue/example</attribute>
+      <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
+   </mbean>
+</server>
\ No newline at end of file

Copied: trunk/embedded/docs/tutorial/junit/src/main/resources/tutorial-persistence.xml (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/src/main/resources/tutorial-persistence.xml)
===================================================================
--- trunk/embedded/docs/tutorial/junit/src/main/resources/tutorial-persistence.xml	                        (rev 0)
+++ trunk/embedded/docs/tutorial/junit/src/main/resources/tutorial-persistence.xml	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence>
+   <persistence-unit name="custdb">
+      <jta-data-source>java:/DefaultDS</jta-data-source>
+      <properties>
+         <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+         <property name="jboss.entity.manager.jndi.name" value="java:/EntityManagers/custdb"/>
+      </properties>
+   </persistence-unit>
+</persistence>

Copied: trunk/embedded/docs/tutorial/junit/src/test/java/org (from rev 62195, trunk/embedded/docs/tutorial/junit/ide/src/test/java/org)

Copied: trunk/embedded/docs/tutorial/junit/src/test/java/org/jboss (from rev 62245, trunk/embedded/docs/tutorial/junit/ide/src/test/java/org/jboss)

Added: trunk/embedded/docs/tutorial/plain-java-application/README.html
===================================================================
--- trunk/embedded/docs/tutorial/plain-java-application/README.html	                        (rev 0)
+++ trunk/embedded/docs/tutorial/plain-java-application/README.html	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,18 @@
+<html>
+<body>
+<p>
+<h2> Using Embedded JBoss</h2>
+
+</p><p>
+This project is built using Ant and the build.xml file included in the tomcat directory.  There are a number ways to deploy things in Embedded JBoss.  There are different Ant tasks and Java files that represent some of those different ways:
+</p><p>
+<ul>
+<li> <i>run.classpath.deploy</i> target runs the <a href="src/org/jboss/embedded/tutorial/javase/ClasspathDeploy.java">ClasspathDeploy</a> class.  This class uses Bootstrap.scanClasspath() method to deploy the example EJBs and persistence units.</li>
+<li> <i>run.jar</i> target runs the <a href="src/org/jboss/embedded/tutorial/javase/DeployJarFromResourceBase.java">DeployJarFromResourceBase</a> class. This class uses the Bootstrap.deployBaseResource method to deploy the example EJBs.</li>
+<li> <i>run.virtual</i> target runs the <a href="src/org/jboss/embedded/tutorial/javase/VirtualArchiveDeploy.java">VirtualArchiveDeploy</a> class.  This class uses the VFS to create a virtual archive that you can deploy.</li>
+<li> <i>run.virtual2</i> target runs the <a href="src/org/jboss/embedded/tutorial/javase/VirtualArchiveDeploy2.java">VirtualArchiveDeploy2</a> class.  This class shows a different way of using the VFS to create a virtual archive that you can deploy.</li>
+</ul>
+</p><p>
+</p>
+</body>
+</html>

Added: trunk/embedded/docs/tutorial/plain-java-application/README.wiki
===================================================================
--- trunk/embedded/docs/tutorial/plain-java-application/README.wiki	                        (rev 0)
+++ trunk/embedded/docs/tutorial/plain-java-application/README.wiki	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,9 @@
+!!! Using Embedded JBoss
+
+This project is built using Ant and the build.xml file included in the tomcat directory.  There are a number ways to deploy things in Embedded JBoss.  There are different Ant tasks and Java files that represent some of those different ways:
+
+* ''run.classpath.deploy'' target runs the [ClasspathDeploy|src/org/jboss/embedded/tutorial/javase/ClasspathDeploy.java] class.  This class uses Bootstrap.scanClasspath() method to deploy the example EJBs and persistence units.
+* ''run.jar'' target runs the [DeployJarFromResourceBase|src/org/jboss/embedded/tutorial/javase/DeployJarFromResourceBase.java] class. This class uses the Bootstrap.deployBaseResource method to deploy the example EJBs.
+* ''run.virtual'' target runs the [VirtualArchiveDeploy|src/org/jboss/embedded/tutorial/javase/VirtualArchiveDeploy.java] class.  This class uses the VFS to create a virtual archive that you can deploy.
+* ''run.virtual2'' target runs the [VirtualArchiveDeploy2|src/org/jboss/embedded/tutorial/javase/VirtualArchiveDeploy2.java] class.  This class shows a different way of using the VFS to create a virtual archive that you can deploy.
+

Added: trunk/embedded/docs/tutorial/tomcat/README.html
===================================================================
--- trunk/embedded/docs/tutorial/tomcat/README.html	                        (rev 0)
+++ trunk/embedded/docs/tutorial/tomcat/README.html	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,45 @@
+<html>
+<body>
+<p>
+<h2> Using Embedded JBoss with Tomcat 5.5</h2>
+
+</p><p>
+This project is built using Ant and the build.xml file included in the tomcat directory.  There are a number ways to deploy things to Tomcat.  The examples here show a few different ways:
+</p><p>
+<ul>
+<li> <i>scan.webinf.lib.war</i> Ant target builds an embedded-jboss.war file in the build directory.  This war's <a href="resources/scan.webinf.lib.xml">web.xml</a> is set up so that every jar in WEB-INF/lib of the war file is scanned for possible JBoss deployments.</li>
+<li> <i>finegrain.war</i> Ant target builds the war.  This war's <a href="resources/finegrain.web.xml">web.xml</a> sets up a Listener that explicitly loads one particular resource from the ServletContext.</li>
+<li> <i>builtin.war</i> Ant target just builds a regular war file.  No special things were configured in web.xml.  For this example, you need to turn on default scanning at the Tomcat level.  Here's how.</li>
+</ul>
+</p><p>
+</p><p>
+<h2> Scanning every WAR by default</h2>
+
+</p><p>
+Perhaps the simplest way to deploy your EJBs, datasources, and other JBoss components is to put these .jars and files directly in the <tt>WEB-INF/lib</tt> and <tt>WEB-INF/classes</tt> directories of your deployed web apps.  You can have Embedded JBoss automatically scan each and every web app Tomcat deploys for JBoss components.  To do this you modify the default context configuration file of tomcat located in <tt>apache-tomcat/conf/context.xml</tt> and add the Embedded JBoss <tt>org.jboss.embedded.tomcat.WebinfScanner</tt> listener class.
+</p><p>
+<b>context.xml</b>
+<pre>
+&lt;!-- The contents of this file will be loaded for each web application --&gt;
+&lt;Context&gt;
+
+    &lt;!-- Default set of monitored resources --&gt;
+    &lt;WatchedResource&gt;WEB-INF/web.xml&lt;/WatchedResource&gt;
+
+    &lt;!-- Uncomment this to disable session persistence across Tomcat restarts --&gt;
+    &lt;!--
+    &lt;Manager pathname="" /&gt;
+    --&gt;
+</pre>
+<b><pre>
+  &lt;Listener className="org.jboss.embedded.tomcat.WebinfScanner" /&gt;</pre></b>
+<pre>
+
+&lt;/Context&gt;
+</pre>
+</p><p>
+The advantage of this approach is that you do not have to put any special configuration in your WAR files to deploy JBoss components.  The disadvantage is that deployment time may slow down as deployers like the EJB3 container need to scan every .jar file for classes annotated with EJB3 annotations.
+</p><p>
+</p>
+</body>
+</html>

Added: trunk/embedded/docs/tutorial/tomcat/README.wiki
===================================================================
--- trunk/embedded/docs/tutorial/tomcat/README.wiki	                        (rev 0)
+++ trunk/embedded/docs/tutorial/tomcat/README.wiki	2007-04-10 22:31:24 UTC (rev 62246)
@@ -0,0 +1,35 @@
+!!! Using Embedded JBoss with Tomcat 5.5
+
+This project is built using Ant and the build.xml file included in the tomcat directory.  There are a number ways to deploy things to Tomcat.  The examples here show a few different ways:
+
+* ''scan.webinf.lib.war'' Ant target builds an embedded-jboss.war file in the build directory.  This war's [web.xml|resources/scan.webinf.lib.xml] is set up so that every jar in WEB-INF/lib of the war file is scanned for possible JBoss deployments.
+* ''finegrain.war'' Ant target builds the war.  This war's [web.xml|resources/finegrain.web.xml] sets up a Listener that explicitly loads one particular resource from the ServletContext.
+* ''builtin.war'' Ant target just builds a regular war file.  No special things were configured in web.xml.  For this example, you need to turn on default scanning at the Tomcat level.  Here's how.
+
+
+!!! Scanning every WAR by default
+
+Perhaps the simplest way to deploy your EJBs, datasources, and other JBoss components is to put these .jars and files directly in the {{WEB-INF/lib}} and {{WEB-INF/classes}} directories of your deployed web apps.  You can have Embedded JBoss automatically scan each and every web app Tomcat deploys for JBoss components.  To do this you modify the default context configuration file of tomcat located in {{apache-tomcat/conf/context.xml}} and add the Embedded JBoss {{org.jboss.embedded.tomcat.WebinfScanner}} listener class.
+
+__context.xml__
+{{{
+<!-- The contents of this file will be loaded for each web application -->
+<Context>
+
+    <!-- Default set of monitored resources -->
+    <WatchedResource>WEB-INF/web.xml</WatchedResource>
+
+    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
+    <!--
+    <Manager pathname="" />
+    -->
+}}}
+__{{{
+  <Listener className="org.jboss.embedded.tomcat.WebinfScanner" />}}}__
+{{{
+
+</Context>
+}}}
+
+The advantage of this approach is that you do not have to put any special configuration in your WAR files to deploy JBoss components.  The disadvantage is that deployment time may slow down as deployers like the EJB3 container need to scan every .jar file for classes annotated with EJB3 annotations.
+




More information about the jboss-cvs-commits mailing list