Merge branch 'master' into master.jdk11
diff --git a/Jenkinsfile b/Jenkinsfile
index 883d289..f177c19 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -67,7 +67,12 @@
                       try {
                           retry(3) {
                               timeout(time: 2, unit: 'HOURS') {
-                                sh "./appserver/tests/gftest.sh run_test ${job}"
+                                sh """
+                                  export JAVA_HOME=/usr/lib/jvm/jdk11
+                                  export PATH=${JAVA_HOME}/bin:${PATH}
+                                  export CLASSPATH=$WORKSPACE/glassfish6/javadb
+                                  ./appserver/tests/gftest.sh run_test ${job}
+                                """
                               }
                           }
                       } finally {
@@ -147,7 +152,7 @@
         cpu: "1"
   - name: glassfish-ci
     # Docker image defined in this project in [glassfish]/etc/docker/Dockerfile
-    image: ee4jglassfish/ci:tini-jdk-8.181 
+    image: ee4jglassfish/ci:tini-jdk-8.252-11.0.7
     args:
     - cat
     tty: true
diff --git a/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml b/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
index 1d9cbb4..f790b84 100644
--- a/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
+++ b/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
@@ -198,7 +198,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/appserver/admin/template/src/main/resources/config/default-web.xml b/appserver/admin/template/src/main/resources/config/default-web.xml
index 2af5d47..fee23dd 100644
--- a/appserver/admin/template/src/main/resources/config/default-web.xml
+++ b/appserver/admin/template/src/main/resources/config/default-web.xml
@@ -288,6 +288,14 @@
       <param-value>GET,POST,HEAD</param-value>
     </init-param>
     <init-param>
+      <param-name>compilerSourceVM</param-name>
+      <param-value>1.8</param-value>
+    </init-param>
+    <init-param>
+      <param-name>compilerTargetVM</param-name>
+      <param-value>1.8</param-value>
+    </init-param>
+    <init-param>
       <param-name>system-jar-includes</param-name>
       <param-value>
         /lib/
diff --git a/appserver/admin/template/src/main/resources/config/domain.xml b/appserver/admin/template/src/main/resources/config/domain.xml
index 75d9ebc..016f165 100644
--- a/appserver/admin/template/src/main/resources/config/domain.xml
+++ b/appserver/admin/template/src/main/resources/config/domain.xml
@@ -154,7 +154,7 @@
         </message-security-config>
 	<property value="SHA-256" name="default-digest-algorithm" />
       </security-service>
-      <java-config classpath-suffix="" system-classpath="" debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=%%%JAVA_DEBUGGER_PORT%%%">
+      <java-config classpath-suffix="" system-classpath="" debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:%%%JAVA_DEBUGGER_PORT%%%">
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-client</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
@@ -163,14 +163,12 @@
         <jvm-options>-Djavax.xml.accessExternalSchema=all</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
         <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks</jvm-options>
         <jvm-options>-Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks</jvm-options>
-        <jvm-options>-Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instanceRoot}/lib/ext</jvm-options>
         <jvm-options>-Djdbc.drivers=org.apache.derby.jdbc.ClientDriver</jvm-options>
 		<jvm-options>-DANTLR_USE_DIRECT_CLASS_LOADING=true</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory</jvm-options>
@@ -206,6 +204,12 @@
         <jvm-options>-XX:NewRatio=2</jvm-options>
         <!-- Woodstox property needed to pass StAX TCK -->
         <jvm-options>-Dcom.ctc.wstx.returnNullForDefaultNamespace=true</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.annotation-api.jar</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.xml.bind-api.jar</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/webservices-api-osgi.jar</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/endorsed/grizzly-npn-bootstrap.jar</jvm-options>
+        <jvm-options>--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED</jvm-options>
+        <jvm-options>--add-opens=java.base/sun.net.www.protocol.jrt=ALL-UNNAMED</jvm-options>
       </java-config>
       <network-config>
         <protocols>
@@ -340,20 +344,18 @@
          </security-service>
          <transaction-service tx-log-dir="${com.sun.aas.instanceRoot}/logs" automatic-recovery="true" />
          <diagnostic-service />
-         <java-config debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=${JAVA_DEBUGGER_PORT}" system-classpath="" classpath-suffix="">
+         <java-config debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:${JAVA_DEBUGGER_PORT}" system-classpath="" classpath-suffix="">
              <jvm-options>-XX:MaxPermSize=192m</jvm-options>
              <jvm-options>-server</jvm-options>
              <jvm-options>-Djava.awt.headless=true</jvm-options>
              <jvm-options>-Djdk.corba.allowOutputStreamSubclass=true</jvm-options>
              <jvm-options>-Djdk.tls.rejectClientInitiatedRenegotiation=true</jvm-options>
              <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-             <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
              <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
              <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
              <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
              <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks</jvm-options>
              <jvm-options>-Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks</jvm-options>
-             <jvm-options>-Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instanceRoot}/lib/ext</jvm-options>
              <jvm-options>-Djdbc.drivers=org.apache.derby.jdbc.ClientDriver</jvm-options>
              <jvm-options>-DANTLR_USE_DIRECT_CLASS_LOADING=true</jvm-options>
              <jvm-options>-Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory</jvm-options>
@@ -387,6 +389,12 @@
              -->
              <jvm-options>-Dfelix.fileinstall.disableConfigSave=false</jvm-options>
              <!-- End of OSGi bundle configurations -->
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.annotation-api.jar</jvm-options>
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.xml.bind-api.jar</jvm-options>
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/webservices-api-osgi.jar</jvm-options>
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/endorsed/grizzly-npn-bootstrap.jar</jvm-options>
+             <jvm-options>--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED</jvm-options>
+             <jvm-options>--add-opens=java.base/sun.net.www.protocol.jrt=ALL-UNNAMED</jvm-options>
          </java-config>
          <availability-service>
              <web-container-availability/>
diff --git a/appserver/admingui/war/src/main/webapp/META-INF/MANIFEST.MF b/appserver/admingui/war/src/main/webapp/META-INF/MANIFEST.MF
index 100b0a0..4633e1b 100644
--- a/appserver/admingui/war/src/main/webapp/META-INF/MANIFEST.MF
+++ b/appserver/admingui/war/src/main/webapp/META-INF/MANIFEST.MF
@@ -6,5 +6,4 @@
 Glassfish-require-repository: console-plugins=${com.sun.aas.installRoo
  t}/lib/console-plugins
 Glassfish-require-services: org.glassfish.api.admingui.ConsoleProvider
-HK2-Import-Bundles: org.glassfish.admingui.console-common,com.sun.enterprise.hk2,org.glassfish.admingui.console-plugin-service, org.glassfish.deployment.deployment-client, org.glassfish.jakarta.servlet, jakarta.servlet.jsp, org.glassfish.jsftemplating, org.glassfish.admingui.dataprovider
-s
+HK2-Import-Bundles: org.glassfish.admingui.console-common,com.sun.enterprise.hk2,org.glassfish.admingui.console-plugin-service, org.glassfish.deployment.deployment-client, org.glassfish.jakarta.servlet, org.glassfish.jsftemplating, org.glassfish.admingui.dataprovider
diff --git a/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/ACCAgentClassLoader.java b/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/ACCAgentClassLoader.java
index 4b28d81..5b88ccb 100644
--- a/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/ACCAgentClassLoader.java
+++ b/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/ACCAgentClassLoader.java
@@ -18,6 +18,7 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
@@ -82,6 +83,10 @@
         super(urls, parent, factory);
     }
 
+    // a custom system class loader need to define this method in order to load the java agent.
+    public void appendToClassPathForInstrumentation(String path) throws MalformedURLException {
+        addURL(new File(path).toURI().toURL());
+    }
 
     @Override
     public synchronized Class<?> loadClass(String name) throws ClassNotFoundException {
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/CLIBootstrap.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/CLIBootstrap.java
index 7e760f3..8b174b6 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/CLIBootstrap.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/CLIBootstrap.java
@@ -26,6 +26,9 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+import java.util.jar.Attributes;
+import java.util.jar.JarFile;
+import java.util.jar.Manifest;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import org.glassfish.appclient.client.acc.UserError;
@@ -790,6 +793,11 @@
                         if (path.endsWith(".ear")) {
                             introducer = "-jar";
                             values.set(values.size() - 1, gfInfo.agentJarPath());
+                        } else if(path.endsWith(".jar")){
+                            introducer = null;
+                            values.set(values.size() - 1, "-classpath");
+                            values.add(gfInfo.agentJarPath() + File.pathSeparator + path);
+                            values.add(getMainClassOf(clientSpec));
                         }
                     }
                     return result;
@@ -806,6 +814,25 @@
                 
             }
         }
+
+        private String getMainClassOf(File clientSpec) {
+            JarFile jarFile = null;
+            try {
+                try {
+                    jarFile = new JarFile(clientSpec);
+                    Manifest manifest = jarFile.getManifest();
+                    Attributes mainAttributes = manifest.getMainAttributes();
+                    String mainClass = mainAttributes.getValue("Main-Class");
+                    return mainClass == null ? "" : mainClass;
+                } finally {
+                    if (jarFile != null) {
+                        jarFile.close();
+                    }
+                }
+            } catch (IOException e) {
+                throw new RuntimeException(e);
+            }
+        }
         
         @Override
         boolean format(final StringBuilder commandLine) {
diff --git a/appserver/connectors/admin/src/test/resources/DomainTest.xml b/appserver/connectors/admin/src/test/resources/DomainTest.xml
index 9488218..0e9429d 100644
--- a/appserver/connectors/admin/src/test/resources/DomainTest.xml
+++ b/appserver/connectors/admin/src/test/resources/DomainTest.xml
@@ -134,7 +134,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml b/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
index 63c7e11..81e6116 100644
--- a/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
+++ b/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
@@ -128,7 +128,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml b/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
index 79c638a..9224925 100644
--- a/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
+++ b/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
@@ -137,7 +137,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/appserver/distributions/glassfish/src/main/assembly/glassfish.xml b/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
index 4f7fd89..378c1c0 100644
--- a/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
+++ b/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
@@ -255,6 +255,7 @@
                 <include>javaee.jar</include>
                 <include>appserv-rt.jar</include>
                 <include>gf-client.jar</include>
+                <include>grizzly-npn-bootstrap.jar</include>
             </includes>
             <outputDirectory>${install.dir.name}/glassfish/lib</outputDirectory>
         </fileSet>
diff --git a/appserver/ejb/ejb-container/osgi.bundle b/appserver/ejb/ejb-container/osgi.bundle
index c97d585..9cf0a43 100644
--- a/appserver/ejb/ejb-container/osgi.bundle
+++ b/appserver/ejb/ejb-container/osgi.bundle
@@ -38,6 +38,7 @@
                         jakarta.jws;resolution:=optional, \
                         org.glassfish.apf.context, \
                         org.glassfish.ejb.deployment.archive, \
+                        org.glassfish.rmic, \
                         *
 
 Bundle-SymbolicName: \
diff --git a/appserver/ejb/ejb-container/pom.xml b/appserver/ejb/ejb-container/pom.xml
index 208ede1..1ecb13f 100755
--- a/appserver/ejb/ejb-container/pom.xml
+++ b/appserver/ejb/ejb-container/pom.xml
@@ -225,5 +225,9 @@
             <artifactId>logging-annotation-processor</artifactId>
             <optional>true</optional>
         </dependency>
+        <dependency>
+            <groupId>org.glassfish.corba</groupId>
+            <artifactId>rmic</artifactId>
+        </dependency>
     </dependencies>
 </project>
diff --git a/appserver/ejb/ejb-container/src/main/java/com/sun/ejb/codegen/StaticRmiStubGenerator.java b/appserver/ejb/ejb-container/src/main/java/com/sun/ejb/codegen/StaticRmiStubGenerator.java
index 10f5a1b..f563a08 100644
--- a/appserver/ejb/ejb-container/src/main/java/com/sun/ejb/codegen/StaticRmiStubGenerator.java
+++ b/appserver/ejb/ejb-container/src/main/java/com/sun/ejb/codegen/StaticRmiStubGenerator.java
@@ -34,6 +34,7 @@
 import com.sun.enterprise.deployment.EjbDescriptor;
 import com.sun.enterprise.deployment.EjbBundleDescriptor;
 import com.sun.enterprise.deployment.util.TypeUtil;
+import com.sun.enterprise.util.JDK;
 import com.sun.enterprise.util.OS;
 import org.glassfish.api.admin.ServerEnvironment;
 
@@ -242,7 +243,7 @@
             return;
         }
 
-        if( toolsJarPath == null && !OS.isDarwin()) {
+        if( toolsJarPath == null && !OS.isDarwin() && JDK.getMajor() < 9) {
             _logger.log(Level.INFO,  "[RMIC] tools.jar location was not found");
             return;
         }
@@ -271,7 +272,7 @@
         _logger.info("[RMIC] options: " + cmds);
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
 
-        sun.rmi.rmic.Main compiler = new sun.rmi.rmic.Main(baos, "rmic");
+        org.glassfish.rmic.Main compiler = new org.glassfish.rmic.Main(baos, "rmic");
         boolean success = compiler.compile(cmds.toArray(new String[cmds.size()]));
         //success = true;  // it ALWAYS returns an "error" if -Xnocompile is used!!
 
diff --git a/appserver/extras/embedded/all/pom.xml b/appserver/extras/embedded/all/pom.xml
index d65d0de..06d7cd0 100644
--- a/appserver/extras/embedded/all/pom.xml
+++ b/appserver/extras/embedded/all/pom.xml
@@ -504,11 +504,6 @@
         </dependency>
         <dependency>
             <groupId>org.glassfish.pfl</groupId>
-            <artifactId>pfl-asm</artifactId>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.pfl</groupId>
             <artifactId>pfl-basic</artifactId>
             <optional>true</optional>
         </dependency>
diff --git a/appserver/extras/embedded/shell/glassfish-embedded-static-shell/pom.xml b/appserver/extras/embedded/shell/glassfish-embedded-static-shell/pom.xml
index 179a8f0..ee05d94 100755
--- a/appserver/extras/embedded/shell/glassfish-embedded-static-shell/pom.xml
+++ b/appserver/extras/embedded/shell/glassfish-embedded-static-shell/pom.xml
@@ -364,11 +364,6 @@
         </dependency>
         <dependency>
             <groupId>org.glassfish.pfl</groupId>
-            <artifactId>pfl-asm</artifactId>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.pfl</groupId>
             <artifactId>pfl-basic</artifactId>
             <optional>true</optional>
         </dependency>
diff --git a/appserver/extras/embedded/web/pom.xml b/appserver/extras/embedded/web/pom.xml
index 8ec3b35..4a059b0 100644
--- a/appserver/extras/embedded/web/pom.xml
+++ b/appserver/extras/embedded/web/pom.xml
@@ -894,11 +894,6 @@
     </dependency>
     <dependency>
         <groupId>org.glassfish.pfl</groupId>
-        <artifactId>pfl-asm</artifactId>
-        <optional>true</optional>
-    </dependency>
-    <dependency>
-        <groupId>org.glassfish.pfl</groupId>
         <artifactId>pfl-basic</artifactId>
         <optional>true</optional>
     </dependency>
diff --git a/appserver/featuresets/glassfish/pom.xml b/appserver/featuresets/glassfish/pom.xml
index 9e45f2b..6e1ddad 100644
--- a/appserver/featuresets/glassfish/pom.xml
+++ b/appserver/featuresets/glassfish/pom.xml
@@ -390,6 +390,16 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>org.glassfish.corba</groupId>
+            <artifactId>rmic</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
 
         <!-- metro package -->
         <dependency>
@@ -489,6 +499,16 @@
         </dependency>
         <dependency>
             <groupId>org.glassfish.metro</groupId>
+            <artifactId>webservices-rt</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.metro</groupId>
             <artifactId>webservices-extra-jdk-packages</artifactId>
             <exclusions>
                 <exclusion>
@@ -552,6 +572,36 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>javax.xml.ws</groupId>
+            <artifactId>jaxws-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>javax.xml.soap</groupId>
+            <artifactId>javax.xml.soap-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.jws</groupId>
+            <artifactId>jakarta.jws-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
 
         <!-- glassfish-appclient -->
         <dependency>
@@ -793,5 +843,15 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>com.sun.activation</groupId>
+            <artifactId>jakarta.activation</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
     </dependencies>
 </project>
diff --git a/appserver/featuresets/web/pom.xml b/appserver/featuresets/web/pom.xml
index fc92a84..4ab4e86 100644
--- a/appserver/featuresets/web/pom.xml
+++ b/appserver/featuresets/web/pom.xml
@@ -114,6 +114,58 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>javax.xml.ws</groupId>
+            <artifactId>jaxws-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>javax.xml.soap</groupId>
+            <artifactId>javax.xml.soap-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.jws</groupId>
+            <artifactId>jakarta.jws-api</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
+        <!-- glassfish-corba -->
+        <dependency>
+            <groupId>org.glassfish.corba</groupId>
+            <artifactId>glassfish-corba-orb</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.corba</groupId>
+            <artifactId>rmic</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
 
         <!-- shoal -->
          <dependency>
diff --git a/appserver/jdbc/admin/src/test/resources/DomainTest.xml b/appserver/jdbc/admin/src/test/resources/DomainTest.xml
index 81d282f..ed36202 100644
--- a/appserver/jdbc/admin/src/test/resources/DomainTest.xml
+++ b/appserver/jdbc/admin/src/test/resources/DomainTest.xml
@@ -118,7 +118,6 @@
       <diagnostic-service></diagnostic-service>
       <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar" classpath-suffix="">
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml b/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
index 396d644..47a2415 100644
--- a/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
+++ b/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
@@ -142,7 +142,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/libpam4j/src/main/java/org/jvnet/libpam/PAM.java b/appserver/libpam4j/src/main/java/org/jvnet/libpam/PAM.java
index ff14fae..fc54e5e 100644
--- a/appserver/libpam4j/src/main/java/org/jvnet/libpam/PAM.java
+++ b/appserver/libpam4j/src/main/java/org/jvnet/libpam/PAM.java
@@ -65,7 +65,7 @@
      */
     public PAM(String serviceName) throws PAMException {
         pam_conv conv = new pam_conv(new PamCallback() {
-            public int callback(int num_msg, Pointer msg, Pointer resp, Pointer _) {
+            public int callback(int num_msg, Pointer msg, Pointer resp, Pointer pointer) {
                 if(LOGGER.isLoggable(Level.FINE))
                     LOGGER.fine("pam_conv num_msg="+num_msg);
                 if(password==null)
diff --git a/appserver/libpam4j/src/main/java/org/jvnet/libpam/impl/PAMLibrary.java b/appserver/libpam4j/src/main/java/org/jvnet/libpam/impl/PAMLibrary.java
index 8c2068e..0fa4ef7 100644
--- a/appserver/libpam4j/src/main/java/org/jvnet/libpam/impl/PAMLibrary.java
+++ b/appserver/libpam4j/src/main/java/org/jvnet/libpam/impl/PAMLibrary.java
@@ -122,17 +122,17 @@
              * resp and its member string both needs to be allocated by malloc,
              * to be freed by the caller.
              */
-            int callback(int num_msg, Pointer msg, Pointer resp, Pointer _);
+            int callback(int num_msg, Pointer msg, Pointer resp, Pointer pointer);
         }
         public PamCallback conv;
-        public Pointer _;
+        public Pointer pointer;
 
         public pam_conv(PamCallback conv) {
             this.conv = conv;
         }
 
         protected List getFieldOrder() {
-            return Arrays.asList("conv", "_");
+            return Arrays.asList("conv", "pointer");
         }
         protected PamCallback getConv(){
             return conv;
diff --git a/appserver/orb/orb-connector/src/test/resources/DomainTest.xml b/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
index 586a079..ebf7266 100644
--- a/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
+++ b/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
@@ -128,7 +128,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/pom.xml b/appserver/pom.xml
index cce68d3..dd20762 100644
--- a/appserver/pom.xml
+++ b/appserver/pom.xml
@@ -147,6 +147,14 @@
         <!-- Jakarta Server Pages -->
         <jsp-api.version>3.0.0</jsp-api.version>
         <wasp.version>3.0.1</wasp.version>
+        
+        <!-- Used for Jakarta XML Web Services -->
+        <woodstox.version>6.2.1</woodstox.version>
+        <stax2-api.version>4.2.1</stax2-api.version>
+  
+        <jaxws-api.version>2.3.1</jaxws-api.version>
+        <soap-api.version>1.4.0</soap-api.version>
+        <jakarta.jws-api.version>2.1.0</jakarta.jws-api.version>
 
         <!-- Jakarta Standard Tag Library -->
         <jstl-api.version>2.0.0</jstl-api.version>
@@ -157,12 +165,6 @@
         <weld.version>4.0.0.Final</weld.version>
         <jboss.classfilewriter.version>1.2.4.Final</jboss.classfilewriter.version>
 
-
-        
-        <!-- Used for Jakarta XML Web Services -->
-        <woodstox.version>6.2.1</woodstox.version>
-        <stax2-api.version>4.2.1</stax2-api.version>
-
         <!-- Admin console components -->
         <jsftemplating.version>3.0.0</jsftemplating.version>
         <jsf-ext.version>0.2</jsf-ext.version>
@@ -427,6 +429,11 @@
                 <version>${webservices.version}</version>
             </dependency>
             <dependency>
+                <groupId>org.glassfish.metro</groupId>
+                <artifactId>webservices-rt</artifactId>
+                <version>${webservices.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>com.fasterxml.woodstox</groupId>
                 <artifactId>woodstox-core</artifactId>
                 <version>${woodstox.version}</version>
@@ -436,6 +443,21 @@
                 <artifactId>stax2-api</artifactId>
                 <version>${stax2-api.version}</version>
             </dependency>
+            <dependency>
+                <groupId>javax.xml.ws</groupId>
+                <artifactId>jaxws-api</artifactId>
+                <version>${jaxws-api.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.xml.soap</groupId>
+                <artifactId>javax.xml.soap-api</artifactId>
+                <version>${soap-api.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.jws</groupId>
+                <artifactId>jakarta.jws-api</artifactId>
+                <version>${jakarta.jws-api.version}</version>
+            </dependency>
             
             <!-- Jakarta XML Binding -->
             <dependency>
diff --git a/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml b/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
index 9488218..0e9429d 100644
--- a/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
+++ b/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
@@ -134,7 +134,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/resources/resources-connector/src/test/resources/DomainTest.xml b/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
index 5e7b3bd..cd5d85c 100644
--- a/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
+++ b/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
@@ -134,7 +134,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/perms/SMGlobalPolicyUtil.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/perms/SMGlobalPolicyUtil.java
index b46501f..2a6733c 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/perms/SMGlobalPolicyUtil.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/perms/SMGlobalPolicyUtil.java
@@ -26,8 +26,11 @@
 import java.util.Enumeration;
 import java.util.Map;
 import java.util.HashMap;
+import java.util.List;
 import java.util.logging.Level;
 import java.util.logging.Logger;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 
@@ -159,7 +162,12 @@
     
     private static final AllPermission ALL_PERM = new AllPermission();
 
-    
+    //JDK-8173082: JDK required permissions needed by applications using java.desktop module
+    private static final List<String> JDK_REQUIRED_PERMISSIONS = Stream.of(
+        "accessClassInPackage.com.sun.beans",
+        "accessClassInPackage.com.sun.beans.*",
+        "accessClassInPackage.com.sun.java.swing.plaf.*",
+        "accessClassInPackage.com.apple.*").collect(Collectors.toList());
 
     //convert a string type to the CommponentType
     public static CommponentType convertComponentType(String type) {        
@@ -389,7 +397,7 @@
         Enumeration<Permission> checkEnum = toBeCheckedPC.elements();
         while (checkEnum.hasMoreElements()) {
             Permission p = checkEnum.nextElement();
-            if (containPC.implies(p)) {
+            if (!JDK_REQUIRED_PERMISSIONS.contains(p.getName()) && containPC.implies(p)) {
                 throw new SecurityException("Restricted permission " + p 
                         + " is declared or implied in the " + containPC);
             }
diff --git a/appserver/security/ejb.security/src/main/java/com/sun/enterprise/iiop/security/GSSUtils.java b/appserver/security/ejb.security/src/main/java/com/sun/enterprise/iiop/security/GSSUtils.java
index 9350924..ba6ab1f 100644
--- a/appserver/security/ejb.security/src/main/java/com/sun/enterprise/iiop/security/GSSUtils.java
+++ b/appserver/security/ejb.security/src/main/java/com/sun/enterprise/iiop/security/GSSUtils.java
@@ -155,7 +155,7 @@
         byte[] deroid = new byte[mechoidlen];
 	System.arraycopy(externalName, 4, deroid, 0, mechoidlen);
         ObjectIdentifier oid1 = getOID(deroid);
-        if  ( ! oid1.equals(oid) )
+        if  ( ! oid1.equals((Object)oid) )
             throw e;
 
         int pos = 4 + mechoidlen;
@@ -213,7 +213,7 @@
         byte[] deroid = new byte[mechoidlen];
 	System.arraycopy(externalName, 4, deroid, 0, mechoidlen);
         ObjectIdentifier oid1 = getOID(deroid);
-        if  ( ! oid1.equals(oid) )
+        if  ( ! oid1.equals((Object)oid) )
             return false;
         else
             return true;
@@ -440,7 +440,7 @@
             _logger.log(Level.FINE,"expected mech OID: " + dumpHex(getDER(oid)));
 	}
 
-        if ( ! mechoid.equals(oid)) {
+        if ( ! mechoid.equals((Object)oid)) {
             if(_logger.isLoggable(Level.FINE)) {
                 _logger.log(Level.FINE,"mech OID in token does not match expected mech OID");
             }
diff --git a/appserver/tests/appserv-tests/config/common.xml b/appserver/tests/appserv-tests/config/common.xml
index 15ee5f5..3cca059 100644
--- a/appserver/tests/appserv-tests/config/common.xml
+++ b/appserver/tests/appserv-tests/config/common.xml
@@ -76,7 +76,6 @@
     debug="on"
     includeantruntime="false"
     failonerror="true">
-    <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
    </javac>
 </target>
 
diff --git a/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v2domain.xml b/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v2domain.xml
index 6994fdb..0bc1235 100644
--- a/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v2domain.xml
+++ b/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v2domain.xml
@@ -188,7 +188,6 @@
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.ee.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-Dcom.sun.appserv.pluggable.features=com.sun.enterprise.ee.server.pluggable.EEPluggableFeatureImpl</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
@@ -335,7 +334,6 @@
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.ee.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-Dcom.sun.appserv.pluggable.features=com.sun.enterprise.ee.server.pluggable.EEPluggableFeatureImpl</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
@@ -487,7 +485,6 @@
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.ee.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-Dcom.sun.appserv.pluggable.features=com.sun.enterprise.ee.server.pluggable.EEPluggableFeatureImpl</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
@@ -639,7 +636,6 @@
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.ee.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-Dcom.sun.appserv.pluggable.features=com.sun.enterprise.ee.server.pluggable.EEPluggableFeatureImpl</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v3_0_1domain.xml b/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v3_0_1domain.xml
index 58148eb..39da184 100644
--- a/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v3_0_1domain.xml
+++ b/appserver/tests/appserv-tests/devtests/admin/cli/resources/configs/v3_0_1domain.xml
@@ -154,7 +154,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/appserver/tests/appserv-tests/devtests/cdi/javaee-component-resources/em-resource-injection-with-resource-declaration-in-another-jar/build.xml b/appserver/tests/appserv-tests/devtests/cdi/javaee-component-resources/em-resource-injection-with-resource-declaration-in-another-jar/build.xml
index 8539621..d3106fb 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/javaee-component-resources/em-resource-injection-with-resource-declaration-in-another-jar/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/javaee-component-resources/em-resource-injection-with-resource-declaration-in-another-jar/build.xml
@@ -50,7 +50,6 @@
         </antcall>
 
 	    <javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
         </javac>
     </target>
 
diff --git a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/bean-in-lib-dir-used-by-ejb-in-ear/build.xml b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/bean-in-lib-dir-used-by-ejb-in-ear/build.xml
index bef55c1..b0d5372 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/bean-in-lib-dir-used-by-ejb-in-ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/bean-in-lib-dir-used-by-ejb-in-ear/build.xml
@@ -53,7 +53,6 @@
 
 
 		<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-			<compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed" />
 		</javac>
 	</target>
 
diff --git a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/normal-bean-injection-ear/build.xml b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/normal-bean-injection-ear/build.xml
index 5cb4fe7..1603605 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/normal-bean-injection-ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/normal-bean-injection-ear/build.xml
@@ -47,7 +47,6 @@
         </antcall>
 
 	<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/modules/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
 	 
         </javac>
 <!--
diff --git a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/programmatic-lookup-ear/build.xml b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/programmatic-lookup-ear/build.xml
index 5cb4fe7..1603605 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/programmatic-lookup-ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/javaee-integration/programmatic-lookup-ear/build.xml
@@ -47,7 +47,6 @@
         </antcall>
 
 	<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/modules/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
 	 
         </javac>
 <!--
diff --git a/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/build.xml b/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/build.xml
index dd65477..1fc4423 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/build.xml
@@ -116,9 +116,9 @@
         In 1.1.10.Final the test passes.
         In 2.0 Beta it fails.
         -->
+<!--
         <ant dir="simple-mdb" target="${smoke-target}"/>
         <ant dir="simple-ejb-singleton/hello" target="${smoke-target}"/>
-<!--
             <ant dir="singleton-startup/hello" target="${smoke-target}"/>
 -->
             <ant dir="simple-managed-bean" target="${smoke-target}"/>
diff --git a/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/simple-ear/build.xml b/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/simple-ear/build.xml
index 1694525..5b75ecf 100644
--- a/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/simple-ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/cdi/smoke-tests/simple-ear/build.xml
@@ -47,7 +47,6 @@
         </antcall>
 
 	<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
 	 
         </javac>
 <!--
diff --git a/appserver/tests/appserv-tests/devtests/connector/v3/securitymapweb/client/WebTest.java b/appserver/tests/appserv-tests/devtests/connector/v3/securitymapweb/client/WebTest.java
index 5ab1194..aa938d9 100755
--- a/appserver/tests/appserv-tests/devtests/connector/v3/securitymapweb/client/WebTest.java
+++ b/appserver/tests/appserv-tests/devtests/connector/v3/securitymapweb/client/WebTest.java
@@ -26,6 +26,7 @@
 import java.io.BufferedReader;
 import java.io.OutputStream;
 import java.net.Socket;
+import java.util.Base64;
 
 import com.sun.ejte.ccl.reporter.*;
 
@@ -165,8 +166,7 @@
     }
 
     public static String encode(String userpass) {
-        sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
-        return new String(enc.encodeBuffer(userpass.getBytes()));
+        return new String(Base64.getEncoder().encodeToString(userpass.getBytes()));
     }
 
 }
diff --git a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/slowCopy/build.xml b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/slowCopy/build.xml
index 8a8a10a..37170d2 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/slowCopy/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/slowCopy/build.xml
@@ -118,7 +118,6 @@
                 resultproperty="slow.autodeploy.deployResult"
                 output="${build}/1.output.log"
             >
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <arg value="timed"/>
             <arg value="${inputArchive}"/>
             <arg value="${outputArchive}"/>
@@ -187,7 +186,6 @@
                 resultproperty="autodeployResult"
                 output="${build}/${log.id}.output.log"
             >
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <jvmarg value="-Dmonitor.debug=true"/>
 
             <classpath refid="autodeploy.compile.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/util/util.xml b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/util/util.xml
index 462903e..f5b39f5 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/util/util.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/util/util.xml
@@ -53,7 +53,6 @@
                 resultproperty="autodeployResult"
                 output="${build}/${log.id}.output.log"
             >
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <jvmarg value="-Dmonitor.debug=true"/>
 
             <classpath refid="autodeploy.compile.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/withEJB/build.xml b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/withEJB/build.xml
index dc0ad66..c5e0e84 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/autodeploy/withEJB/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/autodeploy/withEJB/build.xml
@@ -109,7 +109,6 @@
                 resultproperty="autodeployResult"
                 output="${build}/${log.id}.output.log"
             >
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <jvmarg value="-Dmonitor.debug=true"/>
 
             <classpath>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/config/common.xml b/appserver/tests/appserv-tests/devtests/deployment/config/common.xml
index e691480..3cba4c0 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/config/common.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/config/common.xml
@@ -824,7 +824,6 @@
         <sysproperty key="server" value="${appserver.instance.name}"/>
         <sysproperty key="java.library.path" value="${inst}/lib"/>
         <sysproperty key="com.sun.aas.configRoot" value="${inst}/config"/>
-        <sysproperty key="java.endorsed.dirs" value="${inst}/lib/endorsed"/>
 <!--
         <jvmarg value="-Xdebug"/>
         <jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9999"/>
@@ -1268,7 +1267,6 @@
         <jvmarg value="-Dcom.sun.aas.installRoot=${inst}"/>
         <jvmarg value="-Djava.library.path=${inst}/lib"/>
         <jvmarg value="-Dcom.sun.aas.configRoot=${inst}/config"/>
-        <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/> 
         <classpath>
             <pathelement path="${build}:${inst}/lib/j2ee.jar:${inst}/lib/appserv-rt.jar:${inst}/lib/appserv-admin.jar:${inst}/lib/dom.jar:${inst}/lib/xalan.jar:${inst}/lib/xercesImpl.jar"/>
         </classpath>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ear/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ear/build.xml
index ca8cf2d..2866114 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ear/build.xml
@@ -144,7 +144,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/earwithsuffix/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/earwithsuffix/build.xml
index a33a318..0d304a8 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/earwithsuffix/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/earwithsuffix/build.xml
@@ -145,7 +145,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>                
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejb/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejb/build.xml
index a7cd025..d8cd5c5 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejb/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejb/build.xml
@@ -114,7 +114,6 @@
                                                                                 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${tgtPort}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejbwithsuffix/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejbwithsuffix/build.xml
index 6bd1f7a..09314b2 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejbwithsuffix/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/ejbwithsuffix/build.xml
@@ -115,7 +115,6 @@
                                                                                 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${tgtPort}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/war/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/war/build.xml
index 04b07be..5cef10e 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/war/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/war/build.xml
@@ -114,7 +114,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/warwithsuffix/build.xml b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/warwithsuffix/build.xml
index 865c695..9aad7d4 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/warwithsuffix/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/directorydeploy/warwithsuffix/build.xml
@@ -114,7 +114,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
                                                                                 
             <classpath>
                  <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/dol/override/build.xml b/appserver/tests/appserv-tests/devtests/deployment/dol/override/build.xml
index 38442dd..5f53e7e 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/dol/override/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/dol/override/build.xml
@@ -41,7 +41,6 @@
                destdir="${build}"
                debug="on"
                failonerror="true">
-           <compilerarg line="-endorseddirs ${inst}/modules/endorsed"/>
            <classpath>
                 <path refid="gfv3.classpath"/>
             </classpath>
@@ -71,7 +70,6 @@
 -->
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <jvmarg value="-Dcom.sun.aas.installRoot=${inst}"/>
             <jvmarg value="-Dwriteout.xml=true"/>
             <jvmarg value="-Djakarta.enterprise.system.tools.deployment.org.glassfish.deployment.common=FINE"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/dol/validation/build.xml b/appserver/tests/appserv-tests/devtests/deployment/dol/validation/build.xml
index 877a655..adfab82 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/dol/validation/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/dol/validation/build.xml
@@ -164,7 +164,6 @@
 -->
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
             <jvmarg value="-Dcom.sun.aas.installRoot=${inst}"/>
             <jvmarg value="-Dwriteout.xml=true"/>
             <jvmarg value="-Djakarta.enterprise.system.tools.deployment.org.glassfish.deployment.common=FINE"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/appmgt/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/appmgt/build.xml
index 2d1716e..f8a2d99 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/appmgt/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/appmgt/build.xml
@@ -172,7 +172,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall/build.xml
index 69eac2b..3e4d9f3 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall/build.xml
@@ -181,7 +181,6 @@
             output="${build}/${log.id}.output.log"
             resultproperty="result">
 
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall2/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall2/build.xml
index be41f0e..0f3ce51 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall2/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithall2/build.xml
@@ -301,7 +301,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithejb/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithejb/build.xml
index 9653942..49acd2c 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithejb/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithejb/build.xml
@@ -196,7 +196,6 @@
 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${tgtPort}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithwar/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithwar/build.xml
index 62e7aaa..24bbdb7 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/earwithwar/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/earwithwar/build.xml
@@ -177,7 +177,6 @@
 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/libClassPath/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/libClassPath/build.xml
index 2ee28e3..dc231d1 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/libClassPath/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/libClassPath/build.xml
@@ -92,7 +92,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/manifestClassPath/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/manifestClassPath/build.xml
index ac7f9bb..ef4ae92 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/manifestClassPath/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/manifestClassPath/build.xml
@@ -92,7 +92,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ear/uniquecr/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ear/uniquecr/build.xml
index 42d20ef..cc350ae 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ear/uniquecr/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ear/uniquecr/build.xml
@@ -113,7 +113,6 @@
 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ejb/statelesshello/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ejb/statelesshello/build.xml
index 0bee494..4c073e7 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ejb/statelesshello/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ejb/statelesshello/build.xml
@@ -167,7 +167,6 @@
 
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${tgtPort}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ejb/webservice/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ejb/webservice/build.xml
index 4e4146b..55018c7 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ejb/webservice/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ejb/webservice/build.xml
@@ -154,7 +154,6 @@
             output="${build}/${log.id}.output.log"
             resultproperty="result">
 
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/mdb/webclient/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/mdb/webclient/build.xml
index ccfbe21..80c8b05 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/mdb/webclient/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/mdb/webclient/build.xml
@@ -88,7 +88,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${depltest.orbport}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/xmloverride/build.xml b/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/xmloverride/build.xml
index 1f1bec9..bc8db5a 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/xmloverride/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/ejb30/ear/xmloverride/build.xml
@@ -38,7 +38,6 @@
 
     <target name="compile" depends="prepare">
         <javac srcdir="ejb" destdir="${build}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${inst}/modules/endorsed"/>
           <classpath refid="gfv3.classpath"/>
          </javac>
         <javac srcdir="client" destdir="${build}" debug="on" failonerror="true">
diff --git a/appserver/tests/appserv-tests/devtests/deployment/jsr88/apitests/build.xml b/appserver/tests/appserv-tests/devtests/deployment/jsr88/apitests/build.xml
index 326ebfb..9f9663f 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/jsr88/apitests/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/jsr88/apitests/build.xml
@@ -117,7 +117,6 @@
             <sysproperty key="server" value="${appserver.instance.name}"/>
             <sysproperty key="java.library.path" value="${inst}/lib"/>
             <sysproperty key="com.sun.aas.configRoot" value="${inst}/config"/>
-            <sysproperty key="java.endorsed.dirs" value="${inst}/lib/endorsed"/>
 
             <arg line="${arg.list}" />
         </javaWithResult>
@@ -149,7 +148,6 @@
             <sysproperty key="server" value="${appserver.instance.name}"/>
             <sysproperty key="java.library.path" value="${inst}/lib"/>
             <sysproperty key="com.sun.aas.configRoot" value="${inst}/config"/>
-            <sysproperty key="java.endorsed.dirs" value="${inst}/lib/endorsed"/>
 -->
             <arg line="${arg.list}" />
         </java>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/jsr88/misc/build.xml b/appserver/tests/appserv-tests/devtests/deployment/jsr88/misc/build.xml
index 2923264..fb3d878 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/jsr88/misc/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/jsr88/misc/build.xml
@@ -195,7 +195,6 @@
             <sysproperty key="jsr88client.host" value="${admin.host}"/>
             <sysproperty key="jsr88client.port" value="${admin.port}"/>
             <sysproperty key="com.sun.aas.installRoot" value="${inst}"/>
-            <sysproperty key="java.endorsed.dirs" value="${inst}/lib/endorsed"/>
 
             <classpath>
                 <pathelement location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/osgi/simple/build.xml b/appserver/tests/appserv-tests/devtests/deployment/osgi/simple/build.xml
index 172b567..b0d4b79 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/osgi/simple/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/osgi/simple/build.xml
@@ -111,7 +111,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/versioning/versioning-common.xml b/appserver/tests/appserv-tests/devtests/deployment/versioning/versioning-common.xml
index 65005ff..ae05d65 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/versioning/versioning-common.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/versioning/versioning-common.xml
@@ -774,7 +774,7 @@
     failonerror="false"
     jvm="${JAVA}"
     classname="${classname}"
-    classpath="${classpath}"
+    classpath="${inst}/lib/gf-client.jar:${classpath}"
     output="${outputLog}"
     append="yes"
     resultproperty="result">
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/appmgt/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/appmgt/build.xml
index 5ed56ea..3de1950 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/appmgt/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/appmgt/build.xml
@@ -169,7 +169,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/deploydir/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/deploydir/build.xml
index 5f898e3..74bfbcc 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/deploydir/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/deploydir/build.xml
@@ -127,7 +127,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/htmlonly/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/htmlonly/build.xml
index ce382be..0e08cc5 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/htmlonly/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/htmlonly/build.xml
@@ -155,7 +155,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/jsponly/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/jsponly/build.xml
index 29069c3..41fdd84 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/jsponly/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/jsponly/build.xml
@@ -139,7 +139,6 @@
                 resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
 	       <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/nojarexpansion/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/nojarexpansion/build.xml
index 4a788bc..8bf2f66 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/nojarexpansion/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/nojarexpansion/build.xml
@@ -167,7 +167,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path refid="gfv3.classpath"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/servletonly/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/servletonly/build.xml
index e536455..8b7a75a 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/servletonly/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/servletonly/build.xml
@@ -202,7 +202,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/virtualserver/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/virtualserver/build.xml
index b4afd4e..759abbe 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/virtualserver/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/virtualserver/build.xml
@@ -130,7 +130,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/webinflib/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/webinflib/build.xml
index 2a2bc33..5084285 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/webinflib/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/webinflib/build.xml
@@ -165,7 +165,6 @@
             resultproperty="result">
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/>
             <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/>
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/deployment/war/webservices/helloservice/build.xml b/appserver/tests/appserv-tests/devtests/deployment/war/webservices/helloservice/build.xml
index 662dfc8..4740bd5 100644
--- a/appserver/tests/appserv-tests/devtests/deployment/war/webservices/helloservice/build.xml
+++ b/appserver/tests/appserv-tests/devtests/deployment/war/webservices/helloservice/build.xml
@@ -150,7 +150,6 @@
             output="${build}/${log.id}.output.log"
             resultproperty="result">
 
-            <jvmarg value="-Djava.endorsed.dirs=${inst}/lib/endorsed"/>
 
             <classpath>
                 <path location="${inst}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/ejb/cli/negative/build.xml b/appserver/tests/appserv-tests/devtests/ejb/cli/negative/build.xml
index 97a4065..f394341 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/cli/negative/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/cli/negative/build.xml
@@ -69,7 +69,7 @@
                srcdir="${env.APS_HOME}/devtests/admin/cli/src" includes="**/*BaseDevTest.java">
         </javac>
         <javac fork="true" includeAntRuntime="false" 
-               classpath="${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar"
+               classpath="${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar:${s1astest.classpath}"
                destdir="${build.classes.dir}" debug="true" srcdir="client" includes="**/*.java">
             <classpath path="${classpath}"/>
         </javac>
diff --git a/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/ear/build.xml b/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/ear/build.xml
index 3577404..757b2b2 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/ear/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/ear/build.xml
@@ -47,7 +47,6 @@
         </antcall>
 
 	<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed${path.separator}${env.S1AS_HOME}/modules"/>
 	 
         </javac>
 <!--
diff --git a/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/jcdifull/build.xml b/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/jcdifull/build.xml
index f55538a..014811e 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/jcdifull/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/ejb31/full/jcdifull/build.xml
@@ -38,7 +38,6 @@
     <target name="compile" depends="clean">
       <mkdir dir="${build.classes.dir}"/>
       <javac classpath="${env.S1AS_HOME}/modules/weld-osgi-bundle.jar:${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="ejb" destdir="${build.classes.dir}" debug="on" failonerror="true" includeantruntime="false" >
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed${path.separator}${env.S1AS_HOME}/modules"/>
         </javac>
     </target>
 
diff --git a/appserver/tests/appserv-tests/devtests/ejb/ejb31/security/simple/build.xml b/appserver/tests/appserv-tests/devtests/ejb/ejb31/security/simple/build.xml
index 6d4e512..558e3d2 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/ejb31/security/simple/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/ejb31/security/simple/build.xml
@@ -41,7 +41,6 @@
             <param name="src" value="ejb"/>
         </antcall>
 	<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
-          <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed${path.separator}${env.S1AS_HOME}/modules"/>
 	 
         </javac>
     </target>
diff --git a/appserver/tests/appserv-tests/devtests/ejb/ejb31/singleton/build.xml b/appserver/tests/appserv-tests/devtests/ejb/ejb31/singleton/build.xml
index ff4b137..1f84f81 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/ejb31/singleton/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/ejb31/singleton/build.xml
@@ -30,7 +30,7 @@
 
     <target name="all">
         <antcall target="cache"/>
-        <antcall target="hello"/>
+<!--        <antcall target="hello"/>  -->
         <antcall target="three-modules"/>
         <antcall target="multi-module"/>
     </target>
diff --git a/appserver/tests/appserv-tests/devtests/ejb/webservice/ksink/build.xml b/appserver/tests/appserv-tests/devtests/ejb/webservice/ksink/build.xml
index 268e03c..e800c42 100644
--- a/appserver/tests/appserv-tests/devtests/ejb/webservice/ksink/build.xml
+++ b/appserver/tests/appserv-tests/devtests/ejb/webservice/ksink/build.xml
@@ -233,7 +233,6 @@
      <antcall target="build-standalone"/>
      <java fork="true" classname="com.sun.s1asdev.ejb.webservice.ksink.standalone.StandAloneClient"
           failonerror="true">
-      <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/lib/endorsed"/>
       <arg line="spellng http://${http.host}:${http.port}/ejb_webservice_ksink_GoogleServlet/GoogleSearch"/>
       <classpath>
         <pathelement location="${env.S1AS_HOME}/lib/j2ee.jar"/>
diff --git a/appserver/tests/appserv-tests/devtests/jdbc/v3/v3_jdbc_dev_tests/nbproject/build-impl.xml b/appserver/tests/appserv-tests/devtests/jdbc/v3/v3_jdbc_dev_tests/nbproject/build-impl.xml
index 25d30bc..ebc0de5 100644
--- a/appserver/tests/appserv-tests/devtests/jdbc/v3/v3_jdbc_dev_tests/nbproject/build-impl.xml
+++ b/appserver/tests/appserv-tests/devtests/jdbc/v3/v3_jdbc_dev_tests/nbproject/build-impl.xml
@@ -163,12 +163,6 @@
             </and>
         </condition>
         <property name="javadoc.encoding.used" value="${source.encoding}"/>
-        <condition else="" property="javac.compilerargs.jaxws" value="-Djava.endorsed.dirs='${jaxws.endorsed.dir}'">
-            <and>
-                <isset property="jaxws.endorsed.dir"/>
-                <available file="nbproject/jaxws-build.xml"/>
-            </and>
-        </condition>
     </target>
     <target name="-post-init">
         <!-- Empty placeholder for easier customization. -->
diff --git a/appserver/tests/appserv-tests/devtests/jms/annotation/sessionBean/build.xml b/appserver/tests/appserv-tests/devtests/jms/annotation/sessionBean/build.xml
index d8eb150..7ffc9f8 100644
--- a/appserver/tests/appserv-tests/devtests/jms/annotation/sessionBean/build.xml
+++ b/appserver/tests/appserv-tests/devtests/jms/annotation/sessionBean/build.xml
@@ -44,7 +44,6 @@
             debug="on"
             includeantruntime="false"
             failonerror="true">
-            <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
         </javac>
         <antcall target="compile-common">
             <param name="src" value="client"/>
diff --git a/appserver/tests/appserv-tests/devtests/jms/defaultCF/build.xml b/appserver/tests/appserv-tests/devtests/jms/defaultCF/build.xml
index a79f60d..17615c8 100644
--- a/appserver/tests/appserv-tests/devtests/jms/defaultCF/build.xml
+++ b/appserver/tests/appserv-tests/devtests/jms/defaultCF/build.xml
@@ -44,7 +44,6 @@
             debug="on"
             includeantruntime="false"
             failonerror="true">
-            <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
         </javac>
         <antcall target="compile-common">
             <param name="src" value="client"/>
diff --git a/appserver/tests/appserv-tests/devtests/naming/naming2/context/pom.xml b/appserver/tests/appserv-tests/devtests/naming/naming2/context/pom.xml
index dd120e6..1c3fa92 100644
--- a/appserver/tests/appserv-tests/devtests/naming/naming2/context/pom.xml
+++ b/appserver/tests/appserv-tests/devtests/naming/naming2/context/pom.xml
@@ -65,7 +65,6 @@
                 <configuration>
                     <source>1.6</source>
                     <target>1.6</target>
-                    <compilerArgument>-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed</compilerArgument>
                 </configuration>
             </plugin>
             <plugin>
@@ -73,7 +72,6 @@
                 <artifactId>maven-surefire-plugin</artifactId>
                 <version>2.9</version>
                 <configuration>
-                    <argLine>-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed</argLine>
                     <enableAssertions>false</enableAssertions>
                 </configuration>
             </plugin>
diff --git a/appserver/tests/appserv-tests/devtests/security/container-auth/testConfig/domain.xml b/appserver/tests/appserv-tests/devtests/security/container-auth/testConfig/domain.xml
index 5c6f0df..1abdee7 100644
--- a/appserver/tests/appserv-tests/devtests/security/container-auth/testConfig/domain.xml
+++ b/appserver/tests/appserv-tests/devtests/security/container-auth/testConfig/domain.xml
@@ -200,7 +200,6 @@
       <java-config classpath-suffix="${com.sun.aas.installRoot}/pointbase/lib/pbclient.jar${path.separator}${com.sun.aas.installRoot}/pointbase/lib/pbembedded.jar" debug-enabled="false" debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044" env-classpath-ignored="true" java-home="${com.sun.aas.javaRoot}" javac-options="-g" rmic-options="-iiop -poa -alwaysgenerate -keepgenerated -g" server-classpath="${com.sun.aas.javaRoot}/lib/tools.jar${path.separator}${com.sun.aas.installRoot}/lib/install/applications/jmsra/imqjmsra.jar${path.separator}${com.sun.aas.imqLib}/jaxm-api.jar${path.separator}${com.sun.aas.imqLib}/fscontext.jar${path.separator}${com.sun.aas.installRoot}/lib/ant/lib/ant.jar">
         <!-- various required jvm-options -->
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/addJspFile/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/addJspFile/build.xml
index ba90a13..84b8d6d 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/addJspFile/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/addJspFile/build.xml
@@ -73,7 +73,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/compositeTrailerSupplier/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/compositeTrailerSupplier/build.xml
index 0f9d194..78d7c39 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/compositeTrailerSupplier/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/compositeTrailerSupplier/build.xml
@@ -70,7 +70,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/contextCharEncoding/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/contextCharEncoding/build.xml
index 0f9d194..78d7c39 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/contextCharEncoding/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/contextCharEncoding/build.xml
@@ -70,7 +70,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPath/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPath/build.xml
index 896638b..ca48582 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPath/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPath/build.xml
@@ -69,7 +69,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPathEar/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPathEar/build.xml
index 56d4d1d..17a54c6 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPathEar/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/defaultContextPathEar/build.xml
@@ -73,7 +73,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/mappingDiscovery/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/mappingDiscovery/build.xml
index 95a1887..fef7251 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/mappingDiscovery/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/mappingDiscovery/build.xml
@@ -69,7 +69,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <arg value="${http.host}"/>
             <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushArbitraryMethod/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushArbitraryMethod/build.xml
index 046d9e6..6d8561d 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushArbitraryMethod/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushArbitraryMethod/build.xml
@@ -65,7 +65,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushAuthorization/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushAuthorization/build.xml
index 66d35b6..e2cdfc0 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushAuthorization/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushAuthorization/build.xml
@@ -79,7 +79,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushCacheable/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushCacheable/build.xml
index e517460..831745f 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushCacheable/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushCacheable/build.xml
@@ -65,7 +65,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushDynamic/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushDynamic/build.xml
index 046d9e6..6d8561d 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushDynamic/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushDynamic/build.xml
@@ -65,7 +65,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushQueryString/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushQueryString/build.xml
index e517460..831745f 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushQueryString/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushQueryString/build.xml
@@ -65,7 +65,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushStatic/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushStatic/build.xml
index e517460..831745f 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushStatic/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/pushStatic/build.xml
@@ -65,7 +65,6 @@
 
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-            <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
             <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
             <sysproperty key="debug" value="true"/>
             <arg value="${http.host}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/reqResEncoding/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/reqResEncoding/build.xml
index 0f9d194..78d7c39 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/reqResEncoding/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/reqResEncoding/build.xml
@@ -70,7 +70,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/setSessionTimeout/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/setSessionTimeout/build.xml
index da07be1..229d336 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/setSessionTimeout/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/setSessionTimeout/build.xml
@@ -72,7 +72,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/trailer/build.xml b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/trailer/build.xml
index 0f9d194..78d7c39 100644
--- a/appserver/tests/appserv-tests/devtests/web/servlet-4.0/trailer/build.xml
+++ b/appserver/tests/appserv-tests/devtests/web/servlet-4.0/trailer/build.xml
@@ -70,7 +70,6 @@
     
     <target name="run" depends="init-common">
         <java classname="WebTest" fork="true">
-          <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
           <sysproperty key="S1AS_HOME" value="${env.S1AS_HOME}"/>
           <arg value="${http.host}"/>
           <arg value="${https.port}"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/mappedname/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/mappedname/build.xml
index 15b89cc..8efe2f1 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/mappedname/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/mappedname/build.xml
@@ -152,7 +152,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/msgctxt/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/msgctxt/build.xml
index 9ef15ab..203a74d 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/msgctxt/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/msgctxt/build.xml
@@ -98,7 +98,6 @@
           <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
                 includes="webclient/**">
              <classpath refid="classpath"/>
-             <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
           </javac>
           <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/noname/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/noname/build.xml
index d13f3ed..e752c92 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/noname/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/noname/build.xml
@@ -92,7 +92,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/noname2/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/noname2/build.xml
index 9d8596a..227aea4 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/noname2/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/noname2/build.xml
@@ -98,7 +98,6 @@
           <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
                 includes="webclient/**">
              <classpath refid="classpath"/>
-             <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
           </javac>
           <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/oneway/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/oneway/build.xml
index 4fca5d5..a5df82c 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/oneway/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/oneway/build.xml
@@ -97,7 +97,6 @@
           <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
                 includes="webclient/**">
              <classpath refid="classpath"/>
-             <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
           </javac>
           <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/postconstruct/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/postconstruct/build.xml
index c93cedc..6a52c3f 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/postconstruct/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/postconstruct/build.xml
@@ -99,7 +99,6 @@
           <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
                 includes="webclient/**">
              <classpath refid="classpath"/>
-             <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
           </javac>
           <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-cobundle/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-cobundle/build.xml
index eaa3cba..5d003d2 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-cobundle/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-cobundle/build.xml
@@ -62,7 +62,6 @@
         classpath="${s1astest.classpath}"
         debug="on"
         failonerror="true">
-            <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
         </javac>
     </target>
 
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-lookup/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-lookup/build.xml
index e000617..d2a8f72 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-lookup/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webserviceref-lookup/build.xml
@@ -83,7 +83,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
  
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-2/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-2/build.xml
index 079e3fd..6389e73 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-2/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-2/build.xml
@@ -83,7 +83,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
  
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-appclient/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-appclient/build.xml
index 3cfcf86..7ffa7b0 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-appclient/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing-appclient/build.xml
@@ -75,7 +75,6 @@
 <javac srcdir="." destdir="${build.classes.dir}/appclient"
             includes="appclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
       </javac>
 
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing/build.xml
index 07cb2d1..bccc7ab 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-addressing/build.xml
@@ -83,7 +83,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
  
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-clientdds/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-clientdds/build.xml
index 6659198..e85eb0d 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-clientdds/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-clientdds/build.xml
@@ -83,7 +83,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
  
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-respectbinding/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-respectbinding/build.xml
index 1c5911e..a86a237 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-respectbinding/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/webservices13-respectbinding/build.xml
@@ -86,7 +86,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
  
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/annotations/wsctxt/build.xml b/appserver/tests/appserv-tests/devtests/webservice/annotations/wsctxt/build.xml
index 8723960..4e70668 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/annotations/wsctxt/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/annotations/wsctxt/build.xml
@@ -72,7 +72,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
 
       </javac>
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/ejb_annotations/wsRef-webservice-features/build.xml b/appserver/tests/appserv-tests/devtests/webservice/ejb_annotations/wsRef-webservice-features/build.xml
index 8797c23..71c7167 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/ejb_annotations/wsRef-webservice-features/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/ejb_annotations/wsRef-webservice-features/build.xml
@@ -97,7 +97,6 @@
       <javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
             includes="webclient/**">
          <classpath refid="classpath"/>
-         <compilerarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/modules/endorsed"/>
       </javac>
 
       <copy file="client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
diff --git a/appserver/tests/appserv-tests/devtests/webservice/googleserver/build.xml b/appserver/tests/appserv-tests/devtests/webservice/googleserver/build.xml
index 425fdf6..05d12b0 100644
--- a/appserver/tests/appserv-tests/devtests/webservice/googleserver/build.xml
+++ b/appserver/tests/appserv-tests/devtests/webservice/googleserver/build.xml
@@ -234,7 +234,6 @@
      <antcall target="build-standalone"/>
      <java fork="true" classname="standalone.StandAloneClient"
           failonerror="true">
-      <jvmarg value="-Djava.endorsed.dirs=${env.S1AS_HOME}/lib/endorsed"/>
       <arg line="spellng http://${http.host}:${http.port}/google/GoogleSearch"/>
       <classpath>
         <pathelement location="${env.S1AS_HOME}/lib/j2ee.jar"/>
diff --git a/appserver/tests/quicklook/gfproject/build-impl.xml b/appserver/tests/quicklook/gfproject/build-impl.xml
index 2a6ac89..335e5b6 100644
--- a/appserver/tests/quicklook/gfproject/build-impl.xml
+++ b/appserver/tests/quicklook/gfproject/build-impl.xml
@@ -49,6 +49,17 @@
             <include name="**/glassfish-api.jar"/>
             <include name="**/amx-core.jar"/>
             <include name="**/amx-javaee.jar"/>
+            <include name="**/gf-client.jar"/>
+            <include name="**/jaxws-api.jar"/>
+            <include name="**/webservices-osgi.jar"/>
+            <include name="**/webservices-rt.jar"/>
+            <include name="**/jaxb-osgi.jar"/>
+            <include name="**/jakarta.activation-api.jar"/>
+        </fileset>
+        <fileset dir="${glassfish.home}/modules/endorsed">
+            <include name="**/webservices-api-osgi.jar"/>
+            <include name="**/jakarta.xml.bind-api.jar"/>
+            <include name="**/jakarta.annotation-api.jar"/>
             <include name="**/gf-client-module.jar"/>
         </fileset>
 	<fileset dir="${maven.repo.local}/com/beust/jcommander">
diff --git a/appserver/tests/quicklook/pom.xml b/appserver/tests/quicklook/pom.xml
index 74df876..ac14688 100644
--- a/appserver/tests/quicklook/pom.xml
+++ b/appserver/tests/quicklook/pom.xml
@@ -36,7 +36,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-antrun-plugin</artifactId>
-		<version>1.7</version>
+		<version>1.8</version>
                 <executions>
                     <execution>
                         <id>default-test</id>
@@ -184,13 +184,6 @@
                         <version>1.10.1</version>
                         <scope>runtime</scope>
                     </dependency>
-                    <dependency>
-                        <groupId>com.sun</groupId>
-                        <artifactId>tools-jar</artifactId>
-                        <version>1</version>
-                        <scope>system</scope>
-                        <systemPath>${java.home}/../lib/tools.jar</systemPath>
-                    </dependency>
 		    <dependency>
 			<groupId>com.beust</groupId>
 			<artifactId>jcommander</artifactId>
diff --git a/appserver/tests/quicklook/weld/extensions/build.xml b/appserver/tests/quicklook/weld/extensions/build.xml
index ede1fb8..cb193d4 100644
--- a/appserver/tests/quicklook/weld/extensions/build.xml
+++ b/appserver/tests/quicklook/weld/extensions/build.xml
@@ -61,8 +61,8 @@
         <mkdir dir="${class.output}"/>
         <mkdir dir="${dist.dir}/lib"/>
         <javac   debug="true"
-    source="1.5"
-    target="1.5"
+    source="1.8"
+    target="1.8"
     classpathref="class.path"
     srcdir="src/java"
     failonerror="false"
diff --git a/appserver/tests/quicklook/weld/extensions/src/java/extensions/ExtensionBean.java b/appserver/tests/quicklook/weld/extensions/src/java/extensions/ExtensionBean.java
index b8656a0..2ae2106 100644
--- a/appserver/tests/quicklook/weld/extensions/src/java/extensions/ExtensionBean.java
+++ b/appserver/tests/quicklook/weld/extensions/src/java/extensions/ExtensionBean.java
@@ -53,7 +53,7 @@
         adv = true;
     }
 
-    void processAnnotatedType(@Observes ProcessAnnotatedType<?> _) {
+    void processAnnotatedType(@Observes ProcessAnnotatedType<?> type) {
         pat = true;
     }
 
diff --git a/appserver/tests/quicklook/weld/extensions/src/java/jar/ExtensionBean.java b/appserver/tests/quicklook/weld/extensions/src/java/jar/ExtensionBean.java
index 68855da..63061b7 100644
--- a/appserver/tests/quicklook/weld/extensions/src/java/jar/ExtensionBean.java
+++ b/appserver/tests/quicklook/weld/extensions/src/java/jar/ExtensionBean.java
@@ -53,7 +53,7 @@
         adv = true;
     }
 
-    void processAnnotatedType(@Observes ProcessAnnotatedType<?> _) {
+    void processAnnotatedType(@Observes ProcessAnnotatedType<?> type) {
         pat = true;
     }
 
diff --git a/appserver/tests/quicklook/wsit/JaxwsFromWsdl/build.xml b/appserver/tests/quicklook/wsit/JaxwsFromWsdl/build.xml
index 124b63f..7a2e96d 100644
--- a/appserver/tests/quicklook/wsit/JaxwsFromWsdl/build.xml
+++ b/appserver/tests/quicklook/wsit/JaxwsFromWsdl/build.xml
@@ -51,7 +51,7 @@
         <javac
             srcdir="${basedir}/src"
             destdir="${build.classes.home}"
-            includes="**/server/**,**/common/**">
+            includes="**/server/**,**/common/**" classpathref="class.path">
             <classpath refid="wsit.classpath"/>
         </javac>
     </target>
diff --git a/appserver/tests/quicklook/wsit/jsr109tester/build.xml b/appserver/tests/quicklook/wsit/jsr109tester/build.xml
index e28f37c..52a2213 100644
--- a/appserver/tests/quicklook/wsit/jsr109tester/build.xml
+++ b/appserver/tests/quicklook/wsit/jsr109tester/build.xml
@@ -43,7 +43,7 @@
         <javac
                 srcdir="${basedir}/src"
                 destdir="${build.classes.home}"
-                includes="**/server/**,**/common/**">
+                includes="**/server/**,**/common/**" classpathref="class.path">
             <classpath refid="wsit.classpath"/>
         </javac>
     </target>
diff --git a/appserver/tests/v2-tests/appserv-tests/config/common.xml b/appserver/tests/v2-tests/appserv-tests/config/common.xml
index 5ca0c0d..a9ee5de 100644
--- a/appserver/tests/v2-tests/appserv-tests/config/common.xml
+++ b/appserver/tests/v2-tests/appserv-tests/config/common.xml
@@ -76,7 +76,6 @@
     debug="on"
     includeantruntime="false"
     failonerror="true">
-    <compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed"/>
    </javac>
 </target>
 
diff --git a/appserver/tests/v2-tests/appserv-tests/devtests/admin/framework/testfiles/test.xml b/appserver/tests/v2-tests/appserv-tests/devtests/admin/framework/testfiles/test.xml
index 21601de..e762504 100755
--- a/appserver/tests/v2-tests/appserv-tests/devtests/admin/framework/testfiles/test.xml
+++ b/appserver/tests/v2-tests/appserv-tests/devtests/admin/framework/testfiles/test.xml
@@ -182,7 +182,6 @@
       <diagnostic-service capture-app-dd="true" capture-hadb-info="true" capture-install-log="true" capture-system-info="true" compute-checksum="true" max-log-entries="500" min-log-level="INFO" verify-config="true"/>
       <java-config classpath-suffix="" debug-enabled="false" debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" env-classpath-ignored="true" java-home="${com.sun.aas.javaRoot}" javac-options="-g" rmic-options="-iiop -poa -alwaysgenerate -keepgenerated -g" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar">
         <!-- various required jvm-options -->
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
@@ -330,7 +329,6 @@
       <diagnostic-service capture-app-dd="true" capture-hadb-info="true" capture-install-log="true" capture-system-info="true" compute-checksum="true" max-log-entries="500" min-log-level="INFO" verify-config="true"/>
       <java-config classpath-suffix="" debug-enabled="false" debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" env-classpath-ignored="true" java-home="${com.sun.aas.javaRoot}" javac-options="-g" rmic-options="-iiop -poa -alwaysgenerate -keepgenerated -g" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar">
         <!-- various required jvm-options -->
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
diff --git a/appserver/tests/v2-tests/appserv-tests/devtests/admin/offlineconfig/testfiles/domain.xml b/appserver/tests/v2-tests/appserv-tests/devtests/admin/offlineconfig/testfiles/domain.xml
index 5d5130e..8a9a0cb 100644
--- a/appserver/tests/v2-tests/appserv-tests/devtests/admin/offlineconfig/testfiles/domain.xml
+++ b/appserver/tests/v2-tests/appserv-tests/devtests/admin/offlineconfig/testfiles/domain.xml
@@ -166,7 +166,6 @@
       <diagnostic-service capture-app-dd="true" capture-hadb-info="true" capture-install-log="true" capture-system-info="true" compute-checksum="true" max-log-entries="500" min-log-level="INFO" verify-config="true"/>
       <java-config debug-enabled="false" debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" env-classpath-ignored="true" java-home="${com.sun.aas.javaRoot}" javac-options="-g" rmic-options="-iiop -poa -alwaysgenerate -keepgenerated -g" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar">
         <!-- various required jvm-options -->
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/appserver/tests/v2-tests/appserv-tests/devtests/appserv-commons/com/sun/enterprise/config/domain.orig.xml b/appserver/tests/v2-tests/appserv-tests/devtests/appserv-commons/com/sun/enterprise/config/domain.orig.xml
index b054a51..2a35318 100755
--- a/appserver/tests/v2-tests/appserv-tests/devtests/appserv-commons/com/sun/enterprise/config/domain.orig.xml
+++ b/appserver/tests/v2-tests/appserv-tests/devtests/appserv-commons/com/sun/enterprise/config/domain.orig.xml
@@ -130,7 +130,6 @@
 	<!-- various required jvm-options -->
 	<jvm-options>-client</jvm-options>
 	<jvm-options>-Dcom.sun.enterprise.web.connector.useCoyoteConnector=true</jvm-options> 
-	<jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
 	<jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
 	<jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
 	<jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
@@ -234,7 +233,6 @@
       <java-config java-home="${com.sun.aas.javaRoot}" debug-enabled="false" debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044" rmic-options="-iiop -poa -alwaysgenerate -keepgenerated -g" javac-options="-g" server-classpath="${com.sun.aas.javaRoot}/lib/tools.jar${path.separator}${com.sun.aas.installRoot}/lib/install/applications/jmsra/imqjmsra.jar${path.separator}${com.sun.aas.imqLib}/jaxm-api.jar${path.separator}${com.sun.aas.imqLib}/fscontext.jar${path.separator}${com.sun.aas.installRoot}/lib/ant/lib/ant.jar${path.separator}${com.sun.aas.hadbRoot}/lib/hadbjdbc4.jar${path.separator}/usr/lib/audit/Audit.jar${path.separator}${com.sun.aas.jdmkHome}/lib/jdmkrt.jar" classpath-suffix="${com.sun.aas.installRoot}/pointbase/lib/pbclient.jar${path.separator}${com.sun.aas.installRoot}/pointbase/lib/pbembedded.jar" env-classpath-ignored="true">
 	<!-- various required jvm-options -->
 	<jvm-options>-client</jvm-options>
-	<jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
 	<jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
 	<jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
 	<jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/appserver/web/weld-integration/pom.xml b/appserver/web/weld-integration/pom.xml
index 54cd2b4..621498f 100644
--- a/appserver/web/weld-integration/pom.xml
+++ b/appserver/web/weld-integration/pom.xml
@@ -151,6 +151,18 @@
             <optional>true</optional>
         </dependency>
         <dependency>
+            <groupId>javax.xml.ws</groupId>
+            <artifactId>jaxws-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>javax.xml.soap</groupId>
+            <artifactId>javax.xml.soap-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.jws</groupId>
+            <artifactId>jakarta.jws-api</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.easymock</groupId>
             <artifactId>easymock</artifactId>
             <version>${easymock.version}</version>
diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen
index 1a2310f..b82dec7 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen
@@ -30,4 +30,4 @@
     JAVA=${AS_JAVA}/bin/java
 fi
 
-exec "$JAVA" -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar" com.sun.tools.jxc.SchemaGeneratorFacade "$@"
+exec "$JAVA" -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar:$AS_INSTALL_LIB/jakarta.activation-api.jar" com.sun.tools.jxc.SchemaGeneratorFacade "$@"
diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen.bat b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen.bat
index eb145a5..a871046 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen.bat
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/schemagen.bat
@@ -33,4 +33,4 @@
 set JAVA=java

 

 :run

-%JAVA% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar" com.sun.tools.jxc.SchemaGeneratorFacade %*

+%JAVA% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar;%~dp0..\modules\jakarta.activation-api.jar" com.sun.tools.jxc.SchemaGeneratorFacade %*

diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen
index 8178b34..a3d5715 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen
@@ -30,4 +30,4 @@
     JAVA=${AS_JAVA}/bin/java
 fi
 
-exec "$JAVA" $WSGEN_OPTS -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar" com.sun.tools.ws.WsGen "$@"
+exec "$JAVA" $WSGEN_OPTS -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar:$AS_INSTALL_LIB/jakarta.activation-api.jar" com.sun.tools.ws.WsGen "$@"
diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen.bat b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen.bat
index d5c0fe1..4eaf6d3 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen.bat
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsgen.bat
@@ -33,4 +33,4 @@
 set JAVA=java

 

 :run

-%JAVA% %WSGEN_OPTS% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar" com.sun.tools.ws.WsGen %*

+%JAVA% %WSGEN_OPTS% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar;%~dp0..\modules\jakarta.activation-api.jar" com.sun.tools.ws.WsGen %*

diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport
index e0376f0..8c90c10 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport
@@ -30,4 +30,4 @@
     JAVA=${AS_JAVA}/bin/java
 fi
 
-exec "$JAVA" $WSIMPORT_OPTS -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar" com.sun.tools.ws.WsImport "$@"
+exec "$JAVA" $WSIMPORT_OPTS -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar:$AS_INSTALL_LIB/jakarta.activation-api.jar" com.sun.tools.ws.WsImport "$@"
diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport.bat b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport.bat
index ec2060b..6b05c5d 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport.bat
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/wsimport.bat
@@ -33,4 +33,4 @@
 set JAVA=java

 

 :run

-%JAVA% %WSIMPORT_OPTS% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar" com.sun.tools.ws.WsImport %*

+%JAVA% %WSIMPORT_OPTS% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar;%~dp0..\modules\jakarta.activation-api.jar" com.sun.tools.ws.WsImport %*

diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc
index ea86a11..5ad141c 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc
@@ -30,4 +30,4 @@
     JAVA=${AS_JAVA}/bin/java
 fi
 
-exec "$JAVA" -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar" com.sun.tools.xjc.Driver "$@"
+exec "$JAVA" -cp "$AS_INSTALL_LIB/webservices-api-osgi.jar:$AS_INSTALL_LIB/webservices-osgi.jar:$AS_INSTALL_LIB/jakarta.xml.bind-api.jar:$AS_INSTALL_LIB/jaxb-osgi.jar:$AS_INSTALL_LIB/jakarta.activation-api.jar" com.sun.tools.xjc.Driver "$@"
diff --git a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc.bat b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc.bat
index 21ab01c..f91c71b 100644
--- a/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc.bat
+++ b/appserver/webservices/webservices-scripts/src/main/resources/glassfish/bin/xjc.bat
@@ -33,4 +33,4 @@
 set JAVA=java

 

 :run

-%JAVA% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar" com.sun.tools.xjc.Driver %*

+%JAVA% -cp "%~dp0..\modules\webservices-api-osgi.jar;%~dp0..\modules\webservices-osgi.jar;%~dp0..\modules\jakarta.xml.bind-api.jar;%~dp0..\modules\jaxb-osgi.jar;%~dp0..\modules\jakarta.activation-api.jar" com.sun.tools.xjc.Driver %*

diff --git a/etc/docker/Dockerfile b/etc/docker/Dockerfile
index e3e9315..66c82ff 100644
--- a/etc/docker/Dockerfile
+++ b/etc/docker/Dockerfile
@@ -1,7 +1,17 @@
 FROM krallin/centos-tini
 
 ADD ./entrypoint.sh /etc/
-ADD ./jdk1.8.0_181 /usr/lib/jvm/jdk8
+
+#
+# The JDK was got from the following releases:
+#  -JDK8: https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/
+#         releases/download/jdk8u252-b09/OpenJDK8U-jdk_x64_linux_8u252b09.tar.gz
+#  -JDK11: https://github.com/AdoptOpenJDK/openjdk11-upstream-binaries/
+#          releases/download/jdk-11.0.7%2B10/OpenJDK11U-jdk_x64_linux_11.0.7_10.tar.gz
+# Since the JDK is a very large file, download and add the file manually.
+#
+ADD ./openjdk-8u252-b09 /usr/lib/jvm/jdk8
+ADD ./openjdk-11.0.7+10 /usr/lib/jvm/jdk11
 
 RUN chmod +x /etc/entrypoint.sh && \
     #
@@ -14,6 +24,7 @@
     #
     cp -Lf /etc/pki/java/cacerts /usr/lib/jvm/jdk8/jre/lib/security/cacerts && \
     ln -s /usr/lib/jvm/jdk8/bin/* /bin/ && \
+    cp -Lf /etc/pki/java/cacerts /usr/lib/jvm/jdk11/lib/security/cacerts && \
     #
     # install maven
     #
diff --git a/nucleus/admin/cli/pom.xml b/nucleus/admin/cli/pom.xml
index 9257dbb..27f6e8c 100755
--- a/nucleus/admin/cli/pom.xml
+++ b/nucleus/admin/cli/pom.xml
@@ -107,6 +107,16 @@
             <groupId>org.codehaus.jettison</groupId>
             <artifactId>jettison</artifactId>
         </dependency>
+        <dependency>
+            <groupId>jakarta.xml.bind</groupId>
+            <artifactId>jakarta.xml.bind-api</artifactId>
+            <version>${jakarta.jaxb-api.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.xml.bind</groupId>
+            <artifactId>jaxb-osgi</artifactId>
+            <version>${jakarta.jaxb-impl.version}</version>
+        </dependency>
     </dependencies>
 
     <build>
@@ -139,6 +149,9 @@
                         <manifest>
                             <mainClass>com.sun.enterprise.admin.cli.AdminMain</mainClass>
                         </manifest>
+                        <manifestEntries>
+                            <Class-Path>jakarta.annotation-api.jar jakarta.xml.bind-api.jar</Class-Path>
+                        </manifestEntries>
                     </archive>
                 </configuration>
             </plugin>
diff --git a/nucleus/admin/config-api/src/test/resources/ClusterDomain.xml b/nucleus/admin/config-api/src/test/resources/ClusterDomain.xml
index 4fc26ea..badb4bc 100644
--- a/nucleus/admin/config-api/src/test/resources/ClusterDomain.xml
+++ b/nucleus/admin/config-api/src/test/resources/ClusterDomain.xml
@@ -101,7 +101,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -229,7 +228,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -357,7 +355,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/DomainTest.xml b/nucleus/admin/config-api/src/test/resources/DomainTest.xml
index c129642..01c8dee 100644
--- a/nucleus/admin/config-api/src/test/resources/DomainTest.xml
+++ b/nucleus/admin/config-api/src/test/resources/DomainTest.xml
@@ -126,7 +126,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
                 </jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/c1i1.xml b/nucleus/admin/config-api/src/test/resources/parser/c1i1.xml
index bb3ad15..dc0dd60 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/c1i1.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/c1i1.xml
@@ -145,7 +145,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -271,7 +270,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -403,7 +401,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -535,7 +532,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -667,7 +663,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -799,7 +794,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -931,7 +925,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/c1i1c1i2.xml b/nucleus/admin/config-api/src/test/resources/parser/c1i1c1i2.xml
index b261860..0f2c68d 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/c1i1c1i2.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/c1i1c1i2.xml
@@ -156,7 +156,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -282,7 +281,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -414,7 +412,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -546,7 +543,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -678,7 +674,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -810,7 +805,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -942,7 +936,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/i1.xml b/nucleus/admin/config-api/src/test/resources/parser/i1.xml
index 1a33c69..8db57d7 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/i1.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/i1.xml
@@ -123,7 +123,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -249,7 +248,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -381,7 +379,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/i1i2.xml b/nucleus/admin/config-api/src/test/resources/parser/i1i2.xml
index db564b6..50483d8 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/i1i2.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/i1i2.xml
@@ -134,7 +134,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -260,7 +259,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -392,7 +390,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -524,7 +521,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/noconfigfori1.xml b/nucleus/admin/config-api/src/test/resources/parser/noconfigfori1.xml
index 237ba67..f78ba3b 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/noconfigfori1.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/noconfigfori1.xml
@@ -123,7 +123,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -249,7 +248,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -381,7 +379,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/config-api/src/test/resources/parser/stock.xml b/nucleus/admin/config-api/src/test/resources/parser/stock.xml
index 65d87a8..f59a4f6 100644
--- a/nucleus/admin/config-api/src/test/resources/parser/stock.xml
+++ b/nucleus/admin/config-api/src/test/resources/parser/stock.xml
@@ -135,7 +135,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -294,7 +293,6 @@
              <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
              <jvm-options>-XX:+LogVMOutput</jvm-options>
              <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-             <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
              <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
              <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
              <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/admin/launcher/src/main/java/com/sun/enterprise/admin/launcher/JvmOptions.java b/nucleus/admin/launcher/src/main/java/com/sun/enterprise/admin/launcher/JvmOptions.java
index 4d5ec70..e2b4a03 100644
--- a/nucleus/admin/launcher/src/main/java/com/sun/enterprise/admin/launcher/JvmOptions.java
+++ b/nucleus/admin/launcher/src/main/java/com/sun/enterprise/admin/launcher/JvmOptions.java
@@ -20,6 +20,7 @@
 
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.regex.Matcher;
@@ -34,10 +35,11 @@
  */
 class JvmOptions {
 
-    Map<String, String> sysProps = new HashMap<>();
-    Map<String, String> xxProps = new HashMap<>();
-    Map<String, String> xProps = new HashMap<>();
-    Map<String, String> plainProps = new HashMap<>();
+    Map<String, String> sysProps = new LinkedHashMap<>();
+    Map<String, String> xxProps = new LinkedHashMap<>();
+    Map<String, String> xProps = new LinkedHashMap<>();
+    Map<String, String> longProps = new LinkedHashMap<>();
+    Map<String, String> plainProps = new LinkedHashMap<>();
     int osgiPort = -1;
 
     JvmOptions(List<String> options) throws GFLauncherException {
@@ -55,6 +57,8 @@
                 addXxProp(s);
             } else if (s.startsWith("-X")) {
                 addXProp(s);
+            } else if (s.startsWith("--")) {
+                addLongProp(s);
             } else if (s.startsWith("-")) {
                 addPlainProp(s);
             } else {
@@ -97,7 +101,16 @@
                 options.add("-X" + entry.getKey());
             }
         }
-
+        
+        for (Map.Entry<String, String> entry : longProps.entrySet()) {
+            String value = entry.getValue();
+            if (value != null) {
+                options.add("--" + entry.getKey() + "=" + value);
+            } else {
+                options.add("--" + entry.getKey());
+            }
+        }
+        
         for (Map.Entry<String, String> entry : plainProps.entrySet()) {
             String value = entry.getValue();
             if (value != null) {
@@ -132,6 +145,12 @@
         return osgiPort;
     }
 
+    private void addLongProp(String s) {
+        s = s.substring(2);
+        CompoundNameValue nv = new CompoundNameValue(s);
+        longProps.put(nv.name, nv.value);
+    }
+
     private void addPlainProp(String s) {
         s = s.substring(1);
         NameValue nv = new NameValue(s);
@@ -267,6 +286,9 @@
         }
     }
 
+    // NameValue assumes that for a <name>=<value> pair, the <name> is always
+    // the portion of the string before the first equals sign. This also allows the <value> to
+    // contain one or more <key>=<value> pairs (if required).
     private static class NameValue {
 
         NameValue(String s) {
@@ -285,6 +307,39 @@
         private String name;
         private String value;
     }
+
+    // For Java 9, options must also be supported of the forms:
+    //   <option>=<module[/package]>=<value>
+    //   <option> <module[/package]>=<value>
+    // These forms are now handled by CompoundNameValue, which combines <option> and <module[/package]>
+    // into a single <name> key.
+    private static class CompoundNameValue {
+
+        CompoundNameValue(String s) {
+            int index = Math.min(s.indexOf("="),s.indexOf(" "));
+            if (index < 0) {
+                name = s;
+            }
+            else {
+                int index2 = s.indexOf("=",index+1);
+                if (index2 >= 0) {
+                    // There is a later equals sign, which implies <option>=<module>=<value>
+                    // If the original match was a space, change it to an equals character instead
+                    // so that this is treated as a single argument in the output string.
+                    if (s.charAt(index) == ' ') {
+                        s = s.replaceFirst(" ","=");
+                    }
+                    index = index2;
+                }
+                name = s.substring(0, index);
+                if (index + 1 < s.length()) {
+                    value = s.substring(index + 1);
+                }
+            }
+        }
+        private String name;
+        private String value;
+    }
 }
 /**
  * Reference Section <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
diff --git a/nucleus/admin/launcher/src/test/resources/domains/baddomain/config/domain.xml b/nucleus/admin/launcher/src/test/resources/domains/baddomain/config/domain.xml
index d72cafc..831c40f 100644
--- a/nucleus/admin/launcher/src/test/resources/domains/baddomain/config/domain.xml
+++ b/nucleus/admin/launcher/src/test/resources/domains/baddomain/config/domain.xml
@@ -145,7 +145,6 @@
       <diagnostic-service></diagnostic-service>
       <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar" classpath-suffix="">
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/admin/launcher/src/test/resources/domains/domain1/config/domain.xml b/nucleus/admin/launcher/src/test/resources/domains/domain1/config/domain.xml
index b10c074..196774a 100644
--- a/nucleus/admin/launcher/src/test/resources/domains/domain1/config/domain.xml
+++ b/nucleus/admin/launcher/src/test/resources/domains/domain1/config/domain.xml
@@ -147,7 +147,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/admin/launcher/src/test/resources/domains/domain2/config/domain.xml b/nucleus/admin/launcher/src/test/resources/domains/domain2/config/domain.xml
index 85de475..e9739fc 100644
--- a/nucleus/admin/launcher/src/test/resources/domains/domain2/config/domain.xml
+++ b/nucleus/admin/launcher/src/test/resources/domains/domain2/config/domain.xml
@@ -146,7 +146,6 @@
       <diagnostic-service></diagnostic-service>
       <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar" classpath-suffix="">
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/admin/launcher/src/test/resources/domains/domain3/config/domain.xml b/nucleus/admin/launcher/src/test/resources/domains/domain3/config/domain.xml
index be57e2e..59790a0 100644
--- a/nucleus/admin/launcher/src/test/resources/domains/domain3/config/domain.xml
+++ b/nucleus/admin/launcher/src/test/resources/domains/domain3/config/domain.xml
@@ -144,7 +144,6 @@
       <diagnostic-service></diagnostic-service>
       <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar" classpath-suffix="">
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/admin/launcher/src/test/resources/domains/domainNoLog/config/domain.xml b/nucleus/admin/launcher/src/test/resources/domains/domainNoLog/config/domain.xml
index e39224c..94f5337 100644
--- a/nucleus/admin/launcher/src/test/resources/domains/domainNoLog/config/domain.xml
+++ b/nucleus/admin/launcher/src/test/resources/domains/domainNoLog/config/domain.xml
@@ -144,7 +144,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/admin/rest/rest-service/src/main/java/org/glassfish/admin/rest/composite/CompositeUtil.java b/nucleus/admin/rest/rest-service/src/main/java/org/glassfish/admin/rest/composite/CompositeUtil.java
index 3aa2cdd..c88d980 100644
--- a/nucleus/admin/rest/rest-service/src/main/java/org/glassfish/admin/rest/composite/CompositeUtil.java
+++ b/nucleus/admin/rest/rest-service/src/main/java/org/glassfish/admin/rest/composite/CompositeUtil.java
@@ -76,7 +76,7 @@
 import org.glassfish.internal.api.Globals;
 import org.glassfish.jersey.media.sse.EventOutput;
 
-import static org.glassfish.pfl.objectweb.asm.Opcodes.*;
+import static org.objectweb.asm.Opcodes.*;
 import org.jvnet.hk2.config.Attribute;
 import org.jvnet.hk2.config.MessageInterpolatorImpl;
 import org.objectweb.asm.AnnotationVisitor;
diff --git a/nucleus/admin/template/src/main/resources/config/domain.xml b/nucleus/admin/template/src/main/resources/config/domain.xml
index 65acb92..6ca7381 100644
--- a/nucleus/admin/template/src/main/resources/config/domain.xml
+++ b/nucleus/admin/template/src/main/resources/config/domain.xml
@@ -135,14 +135,12 @@
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
         <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks</jvm-options>
         <jvm-options>-Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks</jvm-options>
-        <jvm-options>-Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instanceRoot}/lib/ext</jvm-options>
 	<jvm-options>-DANTLR_USE_DIRECT_CLASS_LOADING=true</jvm-options>
         <!-- Configure post startup bundle list here. This is a comma separated list of bundle sybolic names. -->
         <!-- Configuration of various third-party OSGi bundles like
@@ -173,6 +171,11 @@
         <jvm-options>-Dfelix.fileinstall.disableConfigSave=false</jvm-options>
         <!-- End of OSGi bundle configurations -->
         <jvm-options>-XX:NewRatio=2</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.annotation-api.jar</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.xml.bind-api.jar</jvm-options>
+        <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/endorsed/grizzly-npn-bootstrap.jar</jvm-options>
+        <jvm-options>--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED</jvm-options>
+        <jvm-options>--add-opens=java.base/sun.net.www.protocol.jrt=ALL-UNNAMED</jvm-options>
       </java-config>
       <network-config>
         <protocols>
@@ -281,13 +284,11 @@
              <jvm-options>-Djava.awt.headless=true</jvm-options>
              <jvm-options>-Djdk.tls.rejectClientInitiatedRenegotiation=true</jvm-options>
              <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-             <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
              <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
              <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
              <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
              <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks</jvm-options>
              <jvm-options>-Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks</jvm-options>
-             <jvm-options>-Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instanceRoot}/lib/ext</jvm-options>
              <jvm-options>-DANTLR_USE_DIRECT_CLASS_LOADING=true</jvm-options>
              <jvm-options>-XX:NewRatio=2</jvm-options>
              <jvm-options>-Xmx512m</jvm-options>
@@ -318,6 +319,11 @@
              -->
              <jvm-options>-Dfelix.fileinstall.disableConfigSave=false</jvm-options>
              <!-- End of OSGi bundle configurations -->
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.annotation-api.jar</jvm-options>
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/jakarta.xml.bind-api.jar</jvm-options>
+             <jvm-options>-Xbootclasspath/a:${com.sun.aas.installRoot}/modules/endorsed/grizzly-npn-bootstrap.jar</jvm-options>
+             <jvm-options>--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED</jvm-options>
+             <jvm-options>--add-opens=java.base/sun.net.www.protocol.jrt=ALL-UNNAMED</jvm-options>
          </java-config>
          <availability-service/>
          <network-config>
diff --git a/nucleus/admin/template/src/main/resources/config/server.policy b/nucleus/admin/template/src/main/resources/config/server.policy
index b57c1aa..af1f56a 100644
--- a/nucleus/admin/template/src/main/resources/config/server.policy
+++ b/nucleus/admin/template/src/main/resources/config/server.policy
@@ -130,3 +130,8 @@
       permission java.io.FilePermission       "<<ALL FILES>>", "write,read";
 
  };
+//Added for creating stub on JDK 11
+grant codeBase "jrt:/jdk.compiler" {
+      permission java.lang.RuntimePermission "getenv.JDK_JAVAC_OPTIONS";
+      permission java.lang.RuntimePermission "createClassLoader";
+};
diff --git a/nucleus/common/common-util/src/test/resources/big.xml b/nucleus/common/common-util/src/test/resources/big.xml
index b8f2466..aa3d368 100644
--- a/nucleus/common/common-util/src/test/resources/big.xml
+++ b/nucleus/common/common-util/src/test/resources/big.xml
@@ -140,7 +140,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/clusters1.xml b/nucleus/common/common-util/src/test/resources/clusters1.xml
index 1238863..eac0e1d 100644
--- a/nucleus/common/common-util/src/test/resources/clusters1.xml
+++ b/nucleus/common/common-util/src/test/resources/clusters1.xml
@@ -176,7 +176,6 @@
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -327,7 +326,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -494,7 +492,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -661,7 +658,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -828,7 +824,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -995,7 +990,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/manysysprops.xml b/nucleus/common/common-util/src/test/resources/manysysprops.xml
index b861378..b6bb320 100644
--- a/nucleus/common/common-util/src/test/resources/manysysprops.xml
+++ b/nucleus/common/common-util/src/test/resources/manysysprops.xml
@@ -181,7 +181,6 @@
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -332,7 +331,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -502,7 +500,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -669,7 +666,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -836,7 +832,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
@@ -1003,7 +998,6 @@
         <jvm-options>-server</jvm-options>
         <jvm-options>-Djava.awt.headless=true</jvm-options>
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/monitoringFalse.xml b/nucleus/common/common-util/src/test/resources/monitoringFalse.xml
index e6a35ae..30efb6e 100644
--- a/nucleus/common/common-util/src/test/resources/monitoringFalse.xml
+++ b/nucleus/common/common-util/src/test/resources/monitoringFalse.xml
@@ -140,7 +140,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/monitoringNone.xml b/nucleus/common/common-util/src/test/resources/monitoringNone.xml
index c12c533..0680843 100644
--- a/nucleus/common/common-util/src/test/resources/monitoringNone.xml
+++ b/nucleus/common/common-util/src/test/resources/monitoringNone.xml
@@ -140,7 +140,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/monitoringTrue.xml b/nucleus/common/common-util/src/test/resources/monitoringTrue.xml
index d86af0a..9095d48 100644
--- a/nucleus/common/common-util/src/test/resources/monitoringTrue.xml
+++ b/nucleus/common/common-util/src/test/resources/monitoringTrue.xml
@@ -140,7 +140,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/olddomain.xml b/nucleus/common/common-util/src/test/resources/olddomain.xml
index 0766ed9..f67045d 100644
--- a/nucleus/common/common-util/src/test/resources/olddomain.xml
+++ b/nucleus/common/common-util/src/test/resources/olddomain.xml
@@ -122,7 +122,6 @@
         <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
         <jvm-options>-XX:+LogVMOutput</jvm-options>
         <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Xmx512m</jvm-options>
diff --git a/nucleus/common/common-util/src/test/resources/v2domain.xml b/nucleus/common/common-util/src/test/resources/v2domain.xml
index b9303a7..752a564 100644
--- a/nucleus/common/common-util/src/test/resources/v2domain.xml
+++ b/nucleus/common/common-util/src/test/resources/v2domain.xml
@@ -183,7 +183,6 @@
         <!-- various required jvm-options -->
         <jvm-options>-XX:MaxPermSize=192m</jvm-options>
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/core/bootstrap/src/main/java/com/sun/enterprise/glassfish/bootstrap/MainHelper.java b/nucleus/core/bootstrap/src/main/java/com/sun/enterprise/glassfish/bootstrap/MainHelper.java
index cefdf97..37ba293 100644
--- a/nucleus/core/bootstrap/src/main/java/com/sun/enterprise/glassfish/bootstrap/MainHelper.java
+++ b/nucleus/core/bootstrap/src/main/java/com/sun/enterprise/glassfish/bootstrap/MainHelper.java
@@ -538,7 +538,9 @@
             ClassLoaderBuilder clb = new ClassLoaderBuilder(ctx, delegate);
             clb.addFrameworkJars();
             clb.addBootstrapApiJar(); // simple-glassfish-api.jar
-            clb.addJDKToolsJar();
+            if (getMajorJdkVersion() < 9) {
+                clb.addJDKToolsJar();
+            }
             return clb.build();
         } catch (IOException e) {
             throw new Error(e);
diff --git a/nucleus/core/kernel/osgi.bundle b/nucleus/core/kernel/osgi.bundle
index bad00dd..d9ab648 100644
--- a/nucleus/core/kernel/osgi.bundle
+++ b/nucleus/core/kernel/osgi.bundle
@@ -27,8 +27,8 @@
 
 # dependent flashlight package resolved at runtime
 DynamicImport-Package: org.glassfish.flashlight.provider, \
-                       org.objectweb.asm;password=GlassFish, \
-                       org.objectweb.asm.commons;password=GlassFish
+                       org.objectweb.asm, \
+                       org.objectweb.asm.commons
 
 # Only in non-OSGi embedded mode, kernel depends on logging package, so
 # optionally depend on that pkg. This way, when GF is embedded in
diff --git a/nucleus/core/kernel/src/main/manpages/com/sun/enterprise/v3/admin/commands/list-jvm-options.1 b/nucleus/core/kernel/src/main/manpages/com/sun/enterprise/v3/admin/commands/list-jvm-options.1
index c3b1cef..ef487a5 100644
--- a/nucleus/core/kernel/src/main/manpages/com/sun/enterprise/v3/admin/commands/list-jvm-options.1
+++ b/nucleus/core/kernel/src/main/manpages/com/sun/enterprise/v3/admin/commands/list-jvm-options.1
@@ -69,7 +69,6 @@
                /lib/ext${path.separator}${com.sun.aas.derbyRoot}/lib
                -Xmx512m
                -XX:MaxPermSize=192m
-               -Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed
                -XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
                Command list-jvm-options executed successfully.
 
diff --git a/nucleus/core/kernel/src/test/resources/DomainTest.xml b/nucleus/core/kernel/src/test/resources/DomainTest.xml
index b028e95..8d798cf 100644
--- a/nucleus/core/kernel/src/test/resources/DomainTest.xml
+++ b/nucleus/core/kernel/src/test/resources/DomainTest.xml
@@ -86,7 +86,6 @@
       <diagnostic-service></diagnostic-service>
       <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="${com.sun.aas.installRoot}/lib/appserv-launch.jar" classpath-suffix="">
         <jvm-options>-client</jvm-options>
-        <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
         <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
         <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
         <jvm-options>-Dsun.rmi.dgc.server.gcInterval=3600000</jvm-options>
diff --git a/nucleus/deployment/common/osgi.bundle b/nucleus/deployment/common/osgi.bundle
index f8b6ec7..ff106c3 100644
--- a/nucleus/deployment/common/osgi.bundle
+++ b/nucleus/deployment/common/osgi.bundle
@@ -30,5 +30,5 @@
                         
 DynamicImport-Package: \
                         org.glassfish.flashlight.provider, \
-                        org.objectweb.asm;password=GlassFish, \
-                        org.objectweb.asm.commons;password=GlassFish
+                        org.objectweb.asm, \
+                        org.objectweb.asm.commons
diff --git a/nucleus/distributions/nucleus-common/src/main/resources/config/osgi.properties b/nucleus/distributions/nucleus-common/src/main/resources/config/osgi.properties
index db4aa19..a6352ec 100755
--- a/nucleus/distributions/nucleus-common/src/main/resources/config/osgi.properties
+++ b/nucleus/distributions/nucleus-common/src/main/resources/config/osgi.properties
@@ -143,8 +143,6 @@
 # to control what gets installed in which order, what gets started and what should be the bundle's start level.
 # glassfish.osgi.auto.install is used to configure a list of locations from where bundles will be installed.
 # The order is important as bundle installation order is an input to package resolution process in OSGi.
-# Since we want packages from endorsed bundles to be preferred over those exported by system bundle for
-# overlapping packages, we need to install and start endorsed bundles first.
 # Then we start osgi-resource-locator bundle as osgi-adapter depends on it being active.
 # Since Felix starts bundles with same start level in the order in which bundles are installed,
 # and osgi-adapter and osgi-resource-locator both have same start level of 1, to make sure
@@ -404,6 +402,111 @@
 jre-1.7=${jre-1.6},com.sun.tracing
 jre-1.8=${jre-1.7}
 jre-9=${jre-1.8}
+jre-10=${jre-9}
+jre-11=\
+ javax.accessibility, \
+ javax.annotation.processing, \
+ javax.crypto, \
+ javax.crypto.interfaces, \
+ javax.crypto.spec, \
+ javax.imageio, \
+ javax.imageio.event, \
+ javax.imageio.metadata, \
+ javax.imageio.plugins.bmp, \
+ javax.imageio.plugins.jpeg, \
+ javax.imageio.spi, \
+ javax.imageio.stream, \
+ javax.lang.model, \
+ javax.lang.model.element, \
+ javax.lang.model.type, \
+ javax.lang.model.util, \
+ javax.management, \
+ javax.management.loading, \
+ javax.management.modelmbean, \
+ javax.management.monitor, \
+ javax.management.openmbean, \
+ javax.management.relation, \
+ javax.management.remote, \
+ javax.management.remote.rmi, \
+ javax.management.timer, \
+ javax.naming, \
+ javax.naming.directory, \
+ javax.naming.event, \
+ javax.naming.ldap, \
+ javax.naming.spi, \
+ javax.net, \
+ javax.net.ssl, \
+ javax.print, \
+ javax.print.attribute, \
+ javax.print.attribute.standard, \
+ javax.print.event, \
+ javax.rmi, \
+ javax.rmi.ssl, \
+ javax.script, \
+ javax.security.auth, \
+ javax.security.auth.callback, \
+ javax.security.auth.kerberos, \
+ javax.security.auth.login, \
+ javax.security.auth.spi, \
+ javax.security.auth.x500, \
+ javax.security.cert, \
+ javax.security.sasl, \
+ javax.sound.midi, \
+ javax.sound.midi.spi, \
+ javax.sound.sampled, \
+ javax.sound.sampled.spi, \
+ javax.sql, \
+ javax.sql.rowset, \
+ javax.sql.rowset.serial, \
+ javax.sql.rowset.spi, \
+ javax.swing, \
+ javax.swing.border, \
+ javax.swing.colorchooser, \
+ javax.swing.event, \
+ javax.swing.filechooser, \
+ javax.swing.plaf, \
+ javax.swing.plaf.basic, \
+ javax.swing.plaf.metal, \
+ javax.swing.plaf.multi, \
+ javax.swing.plaf.nimbus, \
+ javax.swing.plaf.synth, \
+ javax.swing.table, \
+ javax.swing.text, \
+ javax.swing.text.html, \
+ javax.swing.text.html.parser, \
+ javax.swing.text.rtf, \
+ javax.swing.tree, \
+ javax.swing.undo, \
+ javax.tools, \
+ javax.transaction.xa, \
+ javax.xml, \
+ javax.xml.catalog, \
+ javax.xml.crypto, \
+ javax.xml.crypto.dom, \
+ javax.xml.crypto.dsig, \
+ javax.xml.crypto.dsig.dom, \
+ javax.xml.crypto.dsig.keyinfo, \
+ javax.xml.crypto.dsig.spec, \
+ javax.xml.datatype, \
+ javax.xml.namespace, \
+ javax.xml.parsers, \
+ javax.xml.stream; javax.xml.stream.events; javax.xml.stream.util, \
+ javax.xml.transform, \
+ javax.xml.transform.dom, \
+ javax.xml.transform.sax, \
+ javax.xml.transform.stax, \
+ javax.xml.transform.stream, \
+ javax.xml.validation, \
+ javax.xml.xpath, \
+ org.ietf.jgss, \
+ org.w3c.dom, \
+ org.w3c.dom.bootstrap, \
+ org.w3c.dom.events, \
+ org.w3c.dom.ls, \
+ org.xml.sax, \
+ org.xml.sax.ext, \
+ org.xml.sax.helpers, \
+ com.sun.tracing
 
 # Bundle information optimization to improve performance
 felix.cache.singlebundlefile=true
@@ -433,6 +536,10 @@
 org.osgi.framework.system.capabilities= \
  ${eecap-${java.specification.version}}
  #we are adding eecap entries upto 1.7 as GF is not supported for JDK<1.7
+eecap-11= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
+ osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,9,10,11"
+eecap-10= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
+ osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,9,10"
 eecap-9= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
  osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,9"
 eecap-1.8= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
diff --git a/nucleus/distributions/nucleus/src/main/assembly/nucleus-new.xml b/nucleus/distributions/nucleus/src/main/assembly/nucleus-new.xml
index 657fab8..817877c 100644
--- a/nucleus/distributions/nucleus/src/main/assembly/nucleus-new.xml
+++ b/nucleus/distributions/nucleus/src/main/assembly/nucleus-new.xml
@@ -144,6 +144,7 @@
                 <exclude>felix.jar</exclude>
                 <exclude>nucleus-domain.jar</exclude>
                 <exclude>cluster-cli.jar</exclude>
+                <exclude>jakarta.xml.bind-api.jar</exclude>
             </excludes>
             <outputDirectory>${install.dir.name}/modules</outputDirectory>
         </fileSet>
diff --git a/nucleus/featuresets/atomic/pom.xml b/nucleus/featuresets/atomic/pom.xml
index a8be979..8c76f04 100644
--- a/nucleus/featuresets/atomic/pom.xml
+++ b/nucleus/featuresets/atomic/pom.xml
@@ -1054,5 +1054,38 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>jakarta.xml.bind</groupId>
+            <artifactId>jakarta.xml.bind-api</artifactId>
+            <version>${jakarta.jaxb-api.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.xml.bind</groupId>
+            <artifactId>jaxb-osgi</artifactId>
+            <version>${jakarta.jaxb-impl.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.activation</groupId>
+            <artifactId>jakarta.activation</artifactId>
+            <version>${activation.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
     </dependencies>
 </project>
diff --git a/nucleus/featuresets/nucleus/pom.xml b/nucleus/featuresets/nucleus/pom.xml
index 88c5138..380d891 100644
--- a/nucleus/featuresets/nucleus/pom.xml
+++ b/nucleus/featuresets/nucleus/pom.xml
@@ -258,16 +258,6 @@
         </dependency>
         <dependency>
             <groupId>org.glassfish.pfl</groupId>
-            <artifactId>pfl-asm</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.pfl</groupId>
             <artifactId>pfl-basic</artifactId>
             <exclusions>
                 <exclusion>
diff --git a/nucleus/flashlight/framework/osgi.bundle b/nucleus/flashlight/framework/osgi.bundle
index 0b487b6..3e61a5f 100644
--- a/nucleus/flashlight/framework/osgi.bundle
+++ b/nucleus/flashlight/framework/osgi.bundle
@@ -21,8 +21,8 @@
                             org.glassfish.flashlight.provider; version=${project.osgi.version}
 
 DynamicImport-Package: \
-                        org.objectweb.asm;password=GlassFish, \
-                        org.objectweb.asm.commons;password=GlassFish \
+                        org.objectweb.asm, \
+                        org.objectweb.asm.commons \
 
 
 Bundle-Activator: org.glassfish.flashlight.impl.core.FlashlightBundleActivator
diff --git a/nucleus/hk2/tiger-types/src/main/java/org/jvnet/tiger_types/Types.java b/nucleus/hk2/tiger-types/src/main/java/org/jvnet/tiger_types/Types.java
index cbe5abd..56d9f79 100644
--- a/nucleus/hk2/tiger-types/src/main/java/org/jvnet/tiger_types/Types.java
+++ b/nucleus/hk2/tiger-types/src/main/java/org/jvnet/tiger_types/Types.java
@@ -240,26 +240,26 @@
      * Implements the logic for {@link #erasure(Type)}.
      */
     private static final TypeVisitor<Class,Void> eraser = new TypeVisitor<Class,Void>() {
-        public Class onClass(Class c,Void _) {
+        public Class onClass(Class c,Void v) {
             return c;
         }
 
-        public Class onParameterizdType(ParameterizedType p,Void _) {
+        public Class onParameterizdType(ParameterizedType p,Void v) {
             // TODO: why getRawType returns Type? not Class?
             return visit(p.getRawType(),null);
         }
 
-        public Class onGenericArray(GenericArrayType g,Void _) {
+        public Class onGenericArray(GenericArrayType g,Void v) {
             return Array.newInstance(
                 visit(g.getGenericComponentType(),null),
                 0 ).getClass();
         }
 
-        public Class onVariable(TypeVariable v,Void _) {
-            return visit(v.getBounds()[0],null);
+        public Class onVariable(TypeVariable t,Void v) {
+            return visit(t.getBounds()[0],null);
         }
 
-        public Class onWildcard(WildcardType w,Void _) {
+        public Class onWildcard(WildcardType w,Void v) {
             return visit(w.getUpperBounds()[0],null);
         }
     };
diff --git a/nucleus/parent/pom.xml b/nucleus/parent/pom.xml
index 089e314..861b80c 100644
--- a/nucleus/parent/pom.xml
+++ b/nucleus/parent/pom.xml
@@ -123,7 +123,8 @@
         <glassfish-management-api.version>3.2.3</glassfish-management-api.version>
         <hk2.version>3.0.1</hk2.version>
         <hk2.plugin.version>3.0.1</hk2.plugin.version>
-        <pfl.version>4.1.0</pfl.version>
+        <pfl.version>4.1.1</pfl.version>
+
         <gmbal.version>4.0.2</gmbal.version>   
         <shoal.version>2.0.0</shoal.version>
         <ha-api.version>3.1.12</ha-api.version>
@@ -197,7 +198,7 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-antrun-plugin</artifactId>
-                    <version>1.7</version>
+                    <version>1.8</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.felix</groupId>
@@ -209,7 +210,6 @@
                     <artifactId>maven-compiler-plugin</artifactId>
                     <version>3.6.1</version>
                     <configuration>
-                        <compilerArgument>-Djava.endorsed.dirs=${project.build.directory}/endorsed</compilerArgument>
                         <source>1.8</source>
                         <target>1.8</target>
                         <excludes>
@@ -851,6 +851,11 @@
                 <version>${glassfish-corba.version}</version>
             </dependency>
             <dependency>
+                <groupId>org.glassfish.corba</groupId>
+                <artifactId>rmic</artifactId>
+                <version>${glassfish-corba.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>jakarta.mail</groupId>
                 <artifactId>jakarta.mail-api</artifactId>
                 <version>${mail.version}</version>
@@ -882,11 +887,6 @@
             </dependency>
             <dependency>
                 <groupId>org.glassfish.pfl</groupId>
-                <artifactId>pfl-asm</artifactId>
-                <version>${pfl.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.pfl</groupId>
                 <artifactId>pfl-tf</artifactId>
                 <version>${pfl.version}</version>
             </dependency>
diff --git a/nucleus/tests/admin/pom.xml b/nucleus/tests/admin/pom.xml
index 1eaf040..0af0029 100644
--- a/nucleus/tests/admin/pom.xml
+++ b/nucleus/tests/admin/pom.xml
@@ -113,6 +113,16 @@
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>jakarta.xml.bind</groupId>
+            <artifactId>jakarta.xml.bind-api</artifactId>
+            <version>${jakarta.jaxb-api.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.xml.bind</groupId>
+            <artifactId>jaxb-osgi</artifactId>
+            <version>${jakarta.jaxb-impl.version}</version>
+        </dependency>
     </dependencies>
 
     <build>