diff --git a/common.ant.xml b/common.ant.xml
index ad002f1..d688af8 100755
--- a/common.ant.xml
+++ b/common.ant.xml
@@ -96,7 +96,16 @@
     <isset property="build.host.iswindows" />
   </condition>
   <fail unless="build.host.platform" message="Building on ${os.name} is not supported" />
+  
+  <!-- JVM -->
+  <condition property="build.jvm.is15">
+     <equals arg1="${ant.java.version}" arg2="1.5"/>
+  </condition>  
 
+  <condition property="build.jvm.is16">
+     <equals arg1="${ant.java.version}" arg2="1.6"/>
+  </condition> 
+  
   <!-- JUnit support -->
   <property name="gwt.dev.staging.jar" location="${gwt.build.staging}/gwt-${gwt.version}/gwt-dev.jar" />
   <property name="gwt.junit.port" value="8888" />
diff --git a/distro-source/core/src/samples/build.xml b/distro-source/core/src/samples/build.xml
index 1ef868b..b8b4386 100644
--- a/distro-source/core/src/samples/build.xml
+++ b/distro-source/core/src/samples/build.xml
@@ -2,8 +2,10 @@
 
   <target name="-do">
     <ant target="${target}" dir="DynaTable"/>
+    <ant target="${target}" dir="DynaTableRf"/>
     <ant target="${target}" dir="Hello"/>
     <ant target="${target}" dir="JSON"/>
+    <ant target="${target}" dir="LogExample"/>
     <ant target="${target}" dir="Mail"/>
     <ant target="${target}" dir="Showcase"/>
   </target>
diff --git a/samples/common.ant.xml b/samples/common.ant.xml
index 0152144..aa2939f 100755
--- a/samples/common.ant.xml
+++ b/samples/common.ant.xml
@@ -28,6 +28,11 @@
     <pathelement location="${gwt.tools.lib}/appengine/datanucleus-appengine-1.0.7.final.jar"/>
   </path>
 
+  <!-- The libraries required by the server that will be copied into WEB-INF/lib. -->
+  <fileset id="sample.server.libs" dir="${gwt.tools.lib}">
+    <include name="" />
+  </fileset>
+
   <target name="source" description="Copy source to the output folder">
     <mkdir dir="${sample.build}/src" />
     <copy todir="${sample.build}/src">
@@ -57,14 +62,20 @@
     </if>
   </target>
 
+  <target name="serverlibs" description="Copy server libs to the output folder">
+    <mkdir dir="${sample.build}/war/WEB-INF/lib" />
+    <copy todir="${sample.build}/war/WEB-INF/lib/" flatten="true">
+      <fileset refid="sample.server.libs" />
+    </copy>
+  </target>
+
   <target name="compile" description="Compile all java files">
     <mkdir dir="${sample.build}/war/WEB-INF/classes" />
     <gwt.javac destdir="${sample.build}/war/WEB-INF/classes">
       <classpath>
         <pathelement location="${gwt.user.jar}" />
         <pathelement location="${gwt.dev.jar}" />
-        <pathelement location="${gwt.tools.lib}/jsr107cache/jsr107cache-1.1.jar"/>
-        <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar"/>
+        <path refid="sample.extraclasspath" />
         <path refid="gae.extraclasspath" />
       </classpath>
     </gwt.javac>
@@ -77,15 +88,22 @@
         <fileset dir="${sample.build}/war/WEB-INF/classes" />
         <fileset file="${gwt.user.jar}" />
         <fileset file="${gwt.dev.jar}" />
+        <path refid="sample.extraclasspath" />
       </sourcefiles>
       <targetfiles path="${sample.build}/war/${sample.lower}/${sample.lower}.nocache.js" />
       <sequential>
         <mkdir dir="${sample.build}/war" />
         <gwt.timer name="${sample.upper} with ${gwt.samples.localworkers} localWorkers">
           <java dir="${sample.build}" classname="com.google.gwt.dev.Compiler"
-                classpath="${sample.path}:${sample.build}/war/WEB-INF/classes:${gwt.user.jar}:${gwt.dev.jar}:${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar:${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA-sources.jar"
-		fork="yes" failonerror="true">
-            <jvmarg value="-Xmx256M"/>
+                		fork="yes" failonerror="true">
+            <classpath>
+              <pathelement path="${sample.path}" />
+              <path refid="sample.extraclasspath" />
+              <pathelement location="${sample.build}/war/WEB-INF/classes" />
+              <pathelement location="${gwt.user.jar}" />
+              <pathelement location="${gwt.dev.jar}" />
+            </classpath>
+            <jvmarg value="-Xmx256M" />
             <arg value="-localWorkers" />
             <arg value="${gwt.samples.localworkers}" />
             <arg value="-war" />
@@ -132,7 +150,7 @@
     <webAppCreator platform="mac" />
   </target>
 
-  <target name="build" depends="source, compile, gwtc, scripts" description="Build and package this project" />
+  <target name="build" depends="source, serverlibs, compile, gwtc, scripts" description="Build and package this project" />
 
   <target name="checkstyle" description="Static analysis of source">
     <gwt.checkstyle outputdirectory="${sample.build}">
diff --git a/samples/dynatable/build.xml b/samples/dynatable/build.xml
index ddb6b09..d04532e 100755
--- a/samples/dynatable/build.xml
+++ b/samples/dynatable/build.xml
@@ -3,4 +3,8 @@
   <property name="sample.module" value="DynaTable" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools etc -->
+  <path id="sample.extraclasspath">
+    <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
+  </path>
 </project>
diff --git a/samples/dynatablerf/build.xml b/samples/dynatablerf/build.xml
index ee78ce3..2848b88 100755
--- a/samples/dynatablerf/build.xml
+++ b/samples/dynatablerf/build.xml
@@ -3,4 +3,15 @@
   <property name="sample.module" value="DynaTableRf" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools etc -->
+  <path id="sample.extraclasspath">
+    <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
+    <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA-sources.jar" />
+  </path>
+  <fileset id="sample.server.libs" dir="${gwt.tools.lib}">
+    <include name="hibernate/validator/hibernate-validator-4.1.0.Final.jar" />
+    <include name="apache/log4j/log4j-1.2.16.jar" />
+    <include name="slf4j/slf4j-api/slf4j-api-1.6.1.jar" />
+    <include name="slf4j/slf4j-log4j12/slf4j-log4j12-1.6.1.jar" />
+  </fileset>
 </project>
diff --git a/samples/expenses/build.xml b/samples/expenses/build.xml
index 0f624d9..9606721 100755
--- a/samples/expenses/build.xml
+++ b/samples/expenses/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="Expenses" />
   <property name="sample.path" value="src/main/java" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/hello/build.xml b/samples/hello/build.xml
index ff34e18..c9ee01f 100755
--- a/samples/hello/build.xml
+++ b/samples/hello/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="Hello" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/json/build.xml b/samples/json/build.xml
index 1b9100f..a4e384a 100755
--- a/samples/json/build.xml
+++ b/samples/json/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="JSON" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/logexample/build.xml b/samples/logexample/build.xml
index 2437018..070a1de 100755
--- a/samples/logexample/build.xml
+++ b/samples/logexample/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="LogExample" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/logexample/war/WEB-INF/web.xml b/samples/logexample/war/WEB-INF/web.xml
index 480d05e..7d448ab 100644
--- a/samples/logexample/war/WEB-INF/web.xml
+++ b/samples/logexample/war/WEB-INF/web.xml
@@ -9,7 +9,7 @@
   
   <servlet-mapping>
     <servlet-name>myServlet</servlet-name>
-    <url-pattern>/logexample/log</url-pattern>
+    <url-pattern>logexample/my_service</url-pattern>
   </servlet-mapping>
 
   <servlet>
diff --git a/samples/mail/build.xml b/samples/mail/build.xml
index a211cb8..6c5e8da 100755
--- a/samples/mail/build.xml
+++ b/samples/mail/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="Mail" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/showcase/build.xml b/samples/showcase/build.xml
index 60cb9b4..fde94a5 100755
--- a/samples/showcase/build.xml
+++ b/samples/showcase/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="Showcase" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/simplerpc/build.xml b/samples/simplerpc/build.xml
index 8dd550e..798f3cc 100644
--- a/samples/simplerpc/build.xml
+++ b/samples/simplerpc/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="SimpleRPC" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/simplexml/build.xml b/samples/simplexml/build.xml
index 3c0b995..b1ae6b0 100755
--- a/samples/simplexml/build.xml
+++ b/samples/simplexml/build.xml
@@ -3,4 +3,7 @@
   <property name="sample.module" value="SimpleXML" />
   <property name="sample.path" value="src" />
   <import file="../common.ant.xml" />
+  <!-- these are after the common.ant.xml so they have gwt.tools... -->
+  <path id="sample.extraclasspath">
+  </path>
 </project>
diff --git a/samples/validation/build.xml b/samples/validation/build.xml
new file mode 100755
index 0000000..5f960a7
--- /dev/null
+++ b/samples/validation/build.xml
@@ -0,0 +1,28 @@
+<project name="validation" default="build" basedir=".">
+  <property name="sample.root" value="validation" />
+  <property name="sample.module" value="Validation" />
+  <property name="sample.path" value="src" />
+  <import file="../common.ant.xml" />
+
+  <!-- these are after the common.ant.xml so they have gwt.tools etc. -->
+  <path id="sample.extraclasspath">
+    <pathelement location="${gwt.tools.lib}/apache/log4j/log4j-1.2.16.jar" />
+    <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
+    <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA-sources.jar" />
+    <pathelement location="${gwt.tools.lib}/hibernate/validator/hibernate-validator-4.1.0.Final.jar" />
+    <pathelement location="${gwt.tools.lib}/hibernate/validator/hibernate-validator-4.1.0.Final-sources.jar" />
+    <pathelement location="${gwt.tools.lib}/slf4j/slf4j-api/slf4j-api-1.6.1.jar" />
+    <pathelement location="${gwt.tools.lib}/slf4j/slf4j-log4j12/slf4j-log4j12-1.6.1.jar" />
+    <!-- Needed for JDK 1.5-->
+    <pathelement location="${gwt.tools.lib}/javax/activation/activation-1.1.jar" />
+    <pathelement location="${gwt.tools.lib}/javax/xml/bind/jaxb-api-2.1.jar" />
+    <pathelement location="${gwt.tools.lib}/sun/jaxb/jaxb-impl-2.1.3.jar" />
+    <pathelement location="${gwt.tools.lib}/javax/xml/stream/stax-api-1.0-2.jar" />
+  </path>
+  <fileset id="sample.server.libs" dir="${gwt.tools.lib}">
+    <include name="hibernate/validator/hibernate-validator-4.1.0.Final.jar" />
+    <include name="apache/log4j/log4j-1.2.16.jar" />
+    <include name="slf4j/slf4j-api/slf4j-api-1.6.1.jar" />
+    <include name="slf4j/slf4j-log4j12/slf4j-log4j12-1.6.1.jar" />
+  </fileset>
+</project>
diff --git a/servlet/build.xml b/servlet/build.xml
index 11aa99d..6440445 100755
--- a/servlet/build.xml
+++ b/servlet/build.xml
@@ -21,6 +21,9 @@
         <exclude name="com/google/gwt/junit/server/**" />
         <exclude name="com/google/gwt/benchmarks/*" />
       </fileset>
+      <!-- The following two jars satisfy RequestFactory dependencies. -->
+      <zipfileset src="${gwt.tools.redist}/json/r2_20080312/json-1.5.jar" />
+      <zipfileset src="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
     </gwt.jar>
   </target>
 
diff --git a/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java b/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java
index b223e32..1f4da9f 100644
--- a/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java
+++ b/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java
@@ -227,19 +227,56 @@
     }
   }
 
-  private void verifyPositionNotStatic(Widget w) {
-    if (!GWT.isProdMode()) {
-      if (w.getElement().getOffsetParent() != getElement()) {
-        String className = getClass().getName();
-        GWT.log("Warning: " + className + " descendants will be incorrectly "
-            + "positioned, i.e. not relative to their parent element, when "
-            + "'position:static', which is the CSS default, is in effect. One "
-            + "possible fix is to call "
-            + "'panel.getElement().getStyle().setPosition(Position.RELATIVE)'.",
-            // Stack trace provides context for the developer
-            new IllegalStateException(className
-                + " is missing CSS 'position:{relative,absolute,fixed}'"));
-      }
+  /**
+   * Verify that the given widget is not statically positioned on the page, i.e.
+   * relative to the document window, unless the widget is in fact directly
+   * attached to the document BODY. Note that the current use of this method is
+   * not comprehensive, since we can only verify the offsetParent if both parent
+   * (AbsolutePanel) and child widget are both visible and attached to the DOM
+   * when this test is executed.
+   *
+   * @param child the widget whose position and placement should be tested
+   */
+  private void verifyPositionNotStatic(Widget child) {
+    // Only verify widget position in Development Mode
+    if (GWT.isProdMode()) {
+      return;
     }
+
+    // Non-visible or detached elements have no offsetParent
+    if (child.getElement().getOffsetParent() == null) {
+      return;
+    }
+    
+    // Check if offsetParent == parent
+    if (child.getElement().getOffsetParent() == getElement()) {
+      return;
+    }
+
+    /*
+     * When this AbsolutePanel is the document BODY, e.g. RootPanel.get(), then
+     * no explicit position:relative is needed as children are already
+     * positioned relative to their parent. For simplicity we test against
+     * parent, not offsetParent, since in IE6+IE7 (but not IE8+) standards mode,
+     * the offsetParent, for elements whose parent is the document BODY, is the
+     * HTML element, not the BODY element.
+     */
+    if ("body".equals(getElement().getNodeName().toLowerCase())) {
+      return;
+    }
+
+    /*
+     * Warn the developer, but allow the execution to continue in case legacy
+     * apps depend on broken CSS.
+     */
+    String className = getClass().getName();
+    GWT.log("Warning: " + className + " descendants will be incorrectly "
+        + "positioned, i.e. not relative to their parent element, when "
+        + "'position:static', which is the CSS default, is in effect. One "
+        + "possible fix is to call "
+        + "'panel.getElement().getStyle().setPosition(Position.RELATIVE)'.",
+        // Stack trace provides context for the developer
+        new IllegalStateException(className
+            + " is missing CSS 'position:{relative,absolute,fixed}'"));
   }
 }
