diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index 2c232c50284..b6d9d35ceff 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -70,6 +70,7 @@ public class AnnotationParser { private static final Logger LOG = Log.getLogger(AnnotationParser.class); protected static int ASM_OPCODE_VERSION = Opcodes.ASM6; //compatibility of api + protected static String ASM_OPCODE_VERSION_STR = "ASM6"; /** * Map of classnames scanned and the first location from which scan occurred @@ -87,12 +88,12 @@ public class AnnotationParser int asmVersion = ASM_OPCODE_VERSION; Package asm = Opcodes.class.getPackage(); if (asm == null) - LOG.warn("Unknown asm runtime version, assuming version {}", asmVersion); + LOG.warn("Unknown asm runtime version, assuming version {}", ASM_OPCODE_VERSION_STR); else { String s = asm.getImplementationVersion(); if (s==null) - LOG.warn("Unknown asm implementation version, assuming version {}", asmVersion); + LOG.info("Unknown asm implementation version, assuming version {}", ASM_OPCODE_VERSION_STR); else { int dot = s.indexOf('.'); @@ -119,13 +120,13 @@ public class AnnotationParser } default: { - LOG.warn("Unrecognized runtime asm version, assuming {}", asmVersion); + LOG.warn("Unrecognized runtime asm version, assuming {}", ASM_OPCODE_VERSION_STR); } } } catch (NumberFormatException e) { - LOG.warn("Unable to parse runtime asm version, assuming version {}", asmVersion); + LOG.warn("Unable to parse runtime asm version, assuming version {}", ASM_OPCODE_VERSION_STR); } } } diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index 652f91013d0..e944eb26d40 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -10,9 +10,6 @@ Jetty :: CDI :: Parent http://www.eclipse.org/jetty pom - - 2.4.3.Final - cdi-2 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java index 327901ac342..a738af91c95 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java @@ -22,7 +22,6 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assumptions.assumeTrue; import java.io.BufferedReader; import java.io.File; @@ -48,16 +47,17 @@ import org.eclipse.jetty.client.util.FutureResponseListener; import org.eclipse.jetty.http.HttpScheme; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; -import org.eclipse.jetty.util.JavaVersion; import org.eclipse.jetty.util.ssl.SslContextFactory; - import org.junit.jupiter.api.AfterEach; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.DisabledOnJre; +import org.junit.jupiter.api.condition.EnabledOnJre; import org.junit.jupiter.api.condition.JRE; +/* This whole test is very specific to how TLS < 1.3 works. + * Starting in Java 11, TLS/1.3 is now enabled by default. + */ +@EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) public class SslBytesClientTest extends SslBytesTest { private ExecutorService threadPool; @@ -66,8 +66,6 @@ public class SslBytesClientTest extends SslBytesTest private SSLServerSocket acceptor; private SimpleProxy proxy; - // This whole test is very specific to how TLS < 1.3 works. - @DisabledOnJre( JRE.JAVA_11 ) @BeforeEach public void init() throws Exception { diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc index 3e1895a66d5..a7d704e3d30 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc @@ -81,10 +81,10 @@ Make sure you have it installed. [source, screen, subs="{sub-order}"] .... -# apt-get install openjdk-7-jdk +# apt-get install openjdk-8-jdk .... -Or download Java 7 from: http://www.oracle.com/technetwork/java/javase/downloads/index.html +Or download Java 8 from: http://www.oracle.com/technetwork/java/javase/downloads/index.html [source, screen, subs="{sub-order}"] .... diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc index b40d8f44af5..47f565af6a4 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc @@ -17,17 +17,17 @@ // [[spnego-support]] -=== Spnego Support +=== SPNEGO Support -Simple and Protected GSSAPI Negotiation Mechanism (Spnego) is a way for users to be seamlessly authenticated when running on a Windows or Active Directory based network. +Simple and Protected GSSAPI Negotiation Mechanism (SPNEGO) is a way for users to be seamlessly authenticated when running on a Windows or Active Directory based network. Jetty supports this type of authentication and authorization through the JDK (which has been enabled since the later versions of Java 6 and 7). Also important to note is that this is an _incredibly_ fragile setup where everything needs to be configured just right for things to work, otherwise it can fail in fun and exciting, not to mention obscure, ways. There is a substantial amount of configuration and testing required to enable this feature as well as knowledge and access to central systems on a Windows network such as the Active Domain Controller and the ability to create and maintain service users. -==== Configuring Jetty and Spnego +==== Configuring Jetty and SPNEGO -To run with Spengo enabled the following command line options are required: +To run with SPNEGO enabled the following command line options are required: [source,screen, subs="{sub-order}"] ---- @@ -36,7 +36,7 @@ To run with Spengo enabled the following command line options are required: -Djavax.security.auth.useSubjectCredsOnly=false ---- -For debugging the Spengo authentication the following options are very helpful: +For debugging the SPNEGO authentication the following options are very helpful: [source,screen, subs="{sub-order}"] ---- @@ -44,7 +44,7 @@ For debugging the Spengo authentication the following options are very helpful: -Dsun.security.spnego.debug=all ---- -Spengo Authentication must be enabled in the webapp in the following way. +SPNEGO Authentication must be enabled in the webapp in the following way. The name of the role will be different for your network. [source, xml, subs="{sub-order}"] @@ -65,7 +65,7 @@ The name of the role will be different for your network. Test Realm - /loginError.html?param=foo + /loginError.html?param=foo @@ -119,7 +119,7 @@ krb5.ini:: spnego.conf:: configures the glue between gssapi and kerberos -It is important to note that the keytab file referenced in the `krb5.ini` and the `spengo.conf` files needs to contain the keytab for the `targetName` for the http server. +It is important to note that the keytab file referenced in the `krb5.ini` and the `spnego.conf` files needs to contain the keytab for the `targetName` for the http server. To do this use a process similar to this: On the Windows Active Domain Controller run: @@ -159,12 +159,12 @@ The follows steps have been required to inform Internet Explorer that it should 5. Tools -> Options -> Advanced -> Security (in the checkbox list) 6. Locate and select `Enable Integrated Windows Authentication` 7. Tools -> Options -> Advanced -> Security -> Ok -8. Close IE then reopen and browse to your Spengo protected resource +8. Close IE then reopen and browse to your SPNEGO protected resource You *must* use hostname and not the IP. If you use the IP it will default to NTLM authentication. -The following conditions must be true for Spnego authentication to work: +The following conditions must be true for SPNEGO authentication to work: * You must be within the Intranet Zone of the network * Access the server using a Hostname rather than IP diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc index c3707f2ab55..d9f9c22c480 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc @@ -49,7 +49,7 @@ Files associated with the development of Jetty -- code styles, formatting, iplog ==== Build -Jetty requires the use of Java 7 and the latest releases are always recommended to build. +Jetty requires the use of Java 8 and the latest releases are always recommended to build. Jetty uses http://maven.apache.org/[Apache Maven 3] for managing its build and primary project metadata. diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java index cea5e99591c..49f1a99a895 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java @@ -329,9 +329,16 @@ public class LdapLoginModule extends AbstractLoginModule } } - String userDn = _userRdnAttribute + "=" + rdnValue + "," + _userBaseDn; + String filter = "({0}={1})"; - return getUserRolesByDn(dirContext, userDn); + Object[] filterArguments = new Object[]{ + _userRdnAttribute, + rdnValue + }; + + SearchResult searchResult = findUser(dirContext, filter, filterArguments); + + return getUserRolesByDn(dirContext, searchResult.getNameInNamespace()); } private List getUserRolesByDn(DirContext dirContext, String userDn) throws NamingException @@ -547,11 +554,6 @@ public class LdapLoginModule extends AbstractLoginModule private SearchResult findUser(String username) throws LoginException { - SearchControls ctls = new SearchControls(); - ctls.setCountLimit(1); - ctls.setDerefLinkFlag(true); - ctls.setSearchScope(SearchControls.SUBTREE_SCOPE); - String filter = "(&(objectClass={0})({1}={2}))"; if (LOG.isDebugEnabled()) @@ -563,24 +565,36 @@ public class LdapLoginModule extends AbstractLoginModule username }; + return findUser(_rootContext, filter, filterArguments); + } + + private SearchResult findUser(DirContext dirContext, String filter, Object[] filterArguments) throws LoginException + { + SearchControls ctls = new SearchControls(); + ctls.setDerefLinkFlag(true); + ctls.setSearchScope(SearchControls.SUBTREE_SCOPE); + + NamingEnumeration results; try { - NamingEnumeration results = _rootContext.search(_userBaseDn, filter, filterArguments, ctls); - - if (LOG.isDebugEnabled()) - LOG.debug("Found user?: " + results.hasMoreElements()); - - if (!results.hasMoreElements()) - { - throw new FailedLoginException("User not found."); - } - - return results.nextElement(); + results = _rootContext.search(_userBaseDn, filter, filterArguments, ctls); } catch (NamingException ne) { throw new FailedLoginException(ne.getMessage()); } + + if (LOG.isDebugEnabled()) + LOG.debug("Found user?: " + results.hasMoreElements()); + + if (!results.hasMoreElements()) + throw new FailedLoginException("User not found."); + + SearchResult searchResult = (SearchResult)results.nextElement(); + if (results.hasMoreElements()) + throw new FailedLoginException("Search result contains ambiguous entries"); + + return searchResult; } diff --git a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java index b4318dc03a6..addc8252856 100644 --- a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java +++ b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java @@ -31,7 +31,6 @@ import org.eclipse.jetty.security.DefaultIdentityService; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.UserIdentity; import org.junit.Test; -import org.junit.jupiter.api.extension.ExtendWith; import org.junit.runner.RunWith; import javax.security.auth.login.AppConfigurationEntry; @@ -59,13 +58,13 @@ import static org.junit.Assert.*; "objectClass: top", "ou: people", // Entry # 2 - "dn:uid=someone, ou=people,dc=jetty,dc=org", + "dn:uid=someone,ou=people,dc=jetty,dc=org", "objectClass: inetOrgPerson", "cn: someone", "sn: sn test", "userPassword: complicatedpassword", // Entry # 3 - "dn:uid=someoneelse, ou=people,dc=jetty,dc=org", + "dn:uid=someoneelse,ou=people,dc=jetty,dc=org", "objectClass: inetOrgPerson", "cn: someoneelse", "sn: sn test", @@ -76,27 +75,67 @@ import static org.junit.Assert.*; "objectClass: top", "ou: groups", // Entry 5 + "dn: ou=subdir,ou=people,dc=jetty,dc=org", + "objectClass: organizationalunit", + "objectClass: top", + "ou: subdir", + // Entry # 6 + "dn:uid=uniqueuser,ou=subdir,ou=people,dc=jetty,dc=org", + "objectClass: inetOrgPerson", + "cn: uniqueuser", + "sn: unique user", + "userPassword: hello123", + // Entry # 7 + "dn:uid=ambiguousone,ou=people,dc=jetty,dc=org", + "objectClass: inetOrgPerson", + "cn: ambiguous1", + "sn: ambiguous user", + "userPassword: foobar", + // Entry # 8 + "dn:uid=ambiguousone,ou=subdir,ou=people,dc=jetty,dc=org", + "objectClass: inetOrgPerson", + "cn: ambiguous2", + "sn: ambiguous subdir user", + "userPassword: barfoo", + // Entry 9 "dn: cn=developers,ou=groups,dc=jetty,dc=org", "objectClass: groupOfUniqueNames", "objectClass: top", "ou: groups", "description: People who try to build good software", - "uniquemember: uid=someone, ou=people, dc=jetty,dc=org", + "uniquemember: uid=someone,ou=people,dc=jetty,dc=org", + "uniquemember: uid=uniqueuser,ou=subdir,ou=people,dc=jetty,dc=org", "cn: developers", - // Entry 6 + // Entry 10 "dn: cn=admin,ou=groups,dc=jetty,dc=org", "objectClass: groupOfUniqueNames", "objectClass: top", "ou: groups", "description: People who try to run software build by developers", - "uniquemember: uid=someone, ou=people, dc=jetty,dc=org", - "uniquemember: uid=someoneelse, ou=people, dc=jetty,dc=org", + "uniquemember: uid=someone,ou=people,dc=jetty,dc=org", + "uniquemember: uid=someoneelse,ou=people,dc=jetty,dc=org", + "uniquemember: uid=uniqueuser,ou=subdir,ou=people,dc=jetty,dc=org", "cn: admin" }) public class JAASLdapLoginServiceTest { private static LdapServer _ldapServer; + private JAASLoginService jaasLoginService(String name) { + JAASLoginService ls = new JAASLoginService("foo"); + ls.setCallbackHandlerClass("org.eclipse.jetty.jaas.callback.DefaultCallbackHandler"); + ls.setIdentityService(new DefaultIdentityService()); + ls.setConfiguration(new TestConfiguration(true)); + return ls; + } + + private UserIdentity doLogin(String username, String password) throws Exception + { + JAASLoginService ls = jaasLoginService("foo"); + Request request = new Request(null, null); + return ls.login( username, password, request); + } + public static LdapServer getLdapServer() { return _ldapServer; } @@ -175,4 +214,27 @@ public class JAASLdapLoginServiceTest } + @Test + public void testLdapBindingSubdirUniqueUserName() throws Exception + { + UserIdentity userIdentity = doLogin("uniqueuser", "hello123"); + assertNotNull( userIdentity ); + assertTrue( userIdentity.isUserInRole( "developers", null) ); + assertTrue( userIdentity.isUserInRole( "admin", null) ); + assertFalse( userIdentity.isUserInRole( "blabla", null) ); + } + + @Test + public void testLdapBindingAmbiguousUserName() throws Exception + { + UserIdentity userIdentity = doLogin( "ambiguousone", "foobar"); + assertNull( userIdentity ); + } + + @Test + public void testLdapBindingSubdirAmbiguousUserName() throws Exception + { + UserIdentity userIdentity = doLogin( "ambiguousone", "barfoo"); + assertNull( userIdentity ); + } } diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index 1f49ff0ac2d..fb3a6bec6c6 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -67,7 +67,7 @@ ${project.build.directory}/local-repo src/it/settings.xml - ${surefire.version} + ${maven.surefire.version} ${skipTests} diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index a8e3aedf1b9..36f2e27f333 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -74,12 +74,15 @@ */pom.xml + + it-parent-pom/pom.xml + ${project.build.directory}/local-repo src/it/settings.xml ${jetty.stopKey} ${jetty.stopPort} - ${surefire.version} + ${maven.surefire.version} ${skipTests} diff --git a/jetty-maven-plugin/src/it/it-parent-pom/invoker.properties b/jetty-maven-plugin/src/it/it-parent-pom/invoker.properties new file mode 100644 index 00000000000..521301a6d91 --- /dev/null +++ b/jetty-maven-plugin/src/it/it-parent-pom/invoker.properties @@ -0,0 +1 @@ +invoker.goals = install \ No newline at end of file diff --git a/jetty-maven-plugin/src/it/it-parent-pom/pom.xml b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml new file mode 100644 index 00000000000..3998159ba14 --- /dev/null +++ b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml @@ -0,0 +1,146 @@ + + + 4.0.0 + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + pom + + + @project.version@ + + + + + + commons-io + commons-io + 2.6 + + + javax.servlet + javax.servlet-api + @servlet.api.version@ + provided + + + org.jboss.weld.servlet + weld-servlet + @weld.version@ + + + org.eclipse.jetty.toolchain + jetty-perf-helper + @jetty.perf-helper.version@ + + + com.fasterxml.jackson.core + jackson-databind + 2.8.1 + + + org.slf4j + slf4j-api + @slf4j.version@ + + + org.slf4j + slf4j-simple + @slf4j.version@ + + + org.eclipse.jetty + jetty-servlet + @project.version@ + + + org.eclipse.jetty + jetty-client + @project.version@ + + + org.eclipse.jetty + jetty-util + @project.version@ + + + org.eclipse.jetty + jetty-http + @project.version@ + + + org.eclipse.jetty + jetty-io + @project.version@ + + + org.eclipse.jetty + jetty-maven-plugin + @project.version@ + tests + test-jar + test + + + org.junit.jupiter + junit-jupiter-engine + @junit.version@ + test + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + @maven.compiler.plugin.version@ + + 1.8 + 1.8 + + + + org.apache.maven.plugins + maven-dependency-plugin + @maven.dependency.plugin.version@ + + + org.apache.maven.plugins + maven-failsafe-plugin + @maven.surefire.version@ + + + org.apache.maven.plugins + maven-resources-plugin + @maven.resources.plugin.version@ + + + org.apache.maven.plugins + maven-source-plugin + @maven.source.plugin.version@ + + + org.eclipse.jetty + jetty-maven-plugin + ${jetty.version} + + + org.apache.maven.plugins + maven-surefire-plugin + @maven.surefire.version@ + + + org.apache.maven.plugins + maven-war-plugin + @maven.war.plugin.version@ + + + + + + \ No newline at end of file diff --git a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml index 397663d132e..9208f7ecd10 100644 --- a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml @@ -4,14 +4,18 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + + org.eclipse.jetty.its.jetty-cdi-run-forked-mojo-it jetty-weld-minimal 1.0-SNAPSHOT war - @project.version@ - 2.4.5.Final ${project.build.directory}/jetty-cdi-run-forked-port.txt @@ -19,30 +23,25 @@ org.jboss.weld.servlet weld-servlet - ${weld.version} javax.servlet javax.servlet-api - 3.1.0 provided org.junit.jupiter junit-jupiter-engine - @junit.version@ test org.eclipse.jetty jetty-client - @project.version@ test org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test @@ -51,19 +50,9 @@ - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} @@ -77,7 +66,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ start-jetty diff --git a/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml index 3f5bdeb270f..528b0890f38 100644 --- a/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml @@ -3,6 +3,12 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + + org.eclipse.jetty.its.jetty-deploy-war-mojo-it jetty-simple-project 0.0.1-SNAPSHOT @@ -11,7 +17,6 @@ Jetty :: Simple deploy war mojo test - @project.version@ ${project.build.directory}/jetty-deploy-war-port.txt @@ -19,7 +24,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test @@ -27,26 +31,15 @@ org.junit.jupiter junit-jupiter-engine - @junit.version@ test - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - org.apache.maven.plugins maven-failsafe-plugin - @surefire.version@ ${jetty.port.file} @@ -77,7 +70,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ start-jetty @@ -107,7 +99,6 @@ org.apache.maven.plugins maven-dependency-plugin - 3.0.2 load-war @@ -147,7 +138,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ javax.xml.bind diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/pom.xml index d2e2883e186..fdcc1c71400 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/pom.xml @@ -22,27 +22,21 @@ jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml index 8f251f25620..168dd7e7b2e 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml @@ -35,7 +35,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test @@ -44,7 +43,6 @@ org.junit.jupiter junit-jupiter-engine - @junit.version@ test @@ -57,7 +55,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -68,7 +65,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/pom.xml index 02601b40cc2..6ad8242c113 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/pom.xml @@ -1,84 +1,41 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-run-distro-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-run-distro-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + @project.version@ + - - - - org.eclipse.jetty.its.jetty-run-distro-mojo-it - jetty-simple-base - ${project.version} - + + jetty-simple-base + jetty-simple-webapp + - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-run-distro-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/pom.xml index 7cb2a2e00be..10adc6ec1c0 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/pom.xml @@ -15,34 +15,27 @@ Jetty :: Simple :: Base - javax.servlet javax.servlet-api jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml index 6fe149d962c..c8af2120bd4 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml @@ -32,21 +32,17 @@ provided - org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test - org.junit.jupiter junit-jupiter-engine - @junit.version@ test @@ -59,7 +55,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -70,7 +65,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/pom.xml index f67096ab1a8..93e5bc38b15 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/pom.xml @@ -1,85 +1,42 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-run-forked-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-run-forked-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + 3.0.0 + @project.version@ + - - + + jetty-simple-base + jetty-simple-webapp + - - org.eclipse.jetty.its.jetty-run-forked-mojo-it - jetty-simple-base - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-run-forked-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/pom.xml index 94e3cf2b8ee..05c9b0335f0 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/pom.xml @@ -15,36 +15,28 @@ Jetty :: Simple :: Base - javax.servlet javax.servlet-api jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 - diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml index 97aa7933c44..d8514ea74e5 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml @@ -38,18 +38,17 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test - + org.junit.jupiter junit-jupiter-engine - @junit.version@ test + @@ -59,7 +58,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -70,7 +68,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-it/pom.xml index 304b54dac53..1625960b537 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/pom.xml @@ -1,91 +1,41 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-run-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-run-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + @project.version@ + - - + + jetty-simple-base + jetty-simple-webapp + - - org.eclipse.jetty.its.jetty-run-mojo-it - jetty-simple-base - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - org.slf4j - slf4j-simple - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-run-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/pom.xml index 3ae1e093bb8..1fa6323df0f 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/pom.xml @@ -15,36 +15,28 @@ Jetty :: Simple :: Base - javax.servlet javax.servlet-api jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 - diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml index 9ded127e8c2..0d75cad9095 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml @@ -19,35 +19,27 @@ - org.eclipse.jetty.its.jetty-run-war-exploded-mojo-it jetty-simple-base - org.eclipse.jetty jetty-servlet provided - - org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test - org.junit.jupiter junit-jupiter-engine - @junit.version@ test - @@ -57,7 +49,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -68,7 +59,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ true @@ -76,7 +66,6 @@ org.apache.maven.plugins maven-failsafe-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/pom.xml index ef8e9da91be..ad5a29cad54 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/pom.xml @@ -1,85 +1,41 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-run-war-exploded-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-run-war-exploded-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + @project.version@ + - - + + jetty-simple-base + jetty-simple-webapp + - - org.eclipse.jetty.its.jetty-run-war-exploded-mojo-it - jetty-simple-base - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-run-war-exploded-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/pom.xml index 8f0aab6e5ad..0269200449e 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/pom.xml @@ -15,36 +15,27 @@ Jetty :: Simple :: Base - javax.servlet javax.servlet-api jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 - - diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml index 350e013c70b..6ab552d13e2 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml @@ -18,34 +18,26 @@ ${project.build.directory}/jetty-run-war-port.txt - - - org.eclipse.jetty.its.jetty-run-war-mojo-it jetty-simple-base - org.eclipse.jetty jetty-servlet provided - org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test - org.junit.jupiter junit-jupiter-engine - @junit.version@ test @@ -57,7 +49,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -68,7 +59,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ true @@ -76,7 +66,6 @@ org.apache.maven.plugins maven-failsafe-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/pom.xml index 7907e80cb52..96f0c6bc8ef 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/pom.xml @@ -1,85 +1,41 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-run-war-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-run-war-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + @project.version@ + - - + + jetty-simple-base + jetty-simple-webapp + - - org.eclipse.jetty.its.jetty-run-war-mojo-it - jetty-simple-base - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-run-war-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/pom.xml b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/pom.xml index a5e1cb9cea5..dbefb81281d 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/pom.xml @@ -15,36 +15,27 @@ Jetty :: Simple :: Base - javax.servlet javax.servlet-api jar provided - org.slf4j slf4j-api - commons-io commons-io - org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 - com.fasterxml.jackson.core jackson-databind - 2.8.1 - - diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml index 8d7096ad978..feea2dbd628 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml @@ -34,7 +34,6 @@ org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test @@ -43,7 +42,6 @@ org.junit.jupiter junit-jupiter-engine - @junit.version@ test @@ -56,7 +54,6 @@ org.apache.maven.plugins maven-war-plugin - ${maven-war-plugin-version} false @@ -67,7 +64,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-start-mojo-it/pom.xml index 0371ce2e327..bd5cb98a9b7 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/pom.xml @@ -1,85 +1,41 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - org.eclipse.jetty.its.jetty-start-mojo-it - jetty-simple-project + + org.eclipse.jetty.its + it-parent-pom 0.0.1-SNAPSHOT - pom + - Jetty :: Simple + org.eclipse.jetty.its.jetty-start-mojo-it + jetty-simple-project + 0.0.1-SNAPSHOT + pom - - UTF-8 - UTF-8 - 1.8 - 3.0.0 - @project.version@ - + Jetty :: Simple - - jetty-simple-base - jetty-simple-webapp - + + UTF-8 + UTF-8 + 1.8 + @project.version@ + - - + + jetty-simple-base + jetty-simple-webapp + - - org.eclipse.jetty.its.jetty-start-mojo-it - jetty-simple-base - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.1.0 - jar - provided - - - - org.slf4j - slf4j-api - 1.7.21 - - - - commons-io - commons-io - 2.5 - - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - org.eclipse.jetty - jetty-maven-plugin - ${jetty.version} - - - - + + + + org.eclipse.jetty.its.jetty-start-mojo-it + jetty-simple-base + ${project.version} + + + diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml index 2a394059626..eb5310f1eaa 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml @@ -34,37 +34,31 @@ org.eclipse.jetty jetty-client - ${jetty.version} test org.eclipse.jetty jetty-util - ${jetty.version} test org.eclipse.jetty jetty-http - ${jetty.version} test org.eclipse.jetty jetty-io - ${jetty.version} test org.junit.jupiter junit-jupiter-engine - @junit.version@ test org.eclipse.jetty jetty-maven-plugin - @project.version@ tests test-jar test @@ -76,7 +70,6 @@ org.apache.maven.plugins maven-surefire-plugin - @surefire.version@ ${jetty.port.file} diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/pom.xml b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/pom.xml index d9e985631b0..054ba242e95 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/pom.xml +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/pom.xml @@ -21,6 +21,7 @@ + org.apache.maven.plugins maven-source-plugin diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/pom.xml b/jetty-maven-plugin/src/it/run-mojo-gwt-it/pom.xml index 2481085ced6..ee8e2e8247a 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/pom.xml +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/pom.xml @@ -1,7 +1,14 @@ - + 4.0.0 + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + + org.olamy beer 1.0-SNAPSHOT @@ -21,11 +28,6 @@ pom import - - javax.servlet - javax.servlet-api - 3.1.0 - @@ -42,18 +44,9 @@ - - maven-compiler-plugin - 3.1 - - 1.8 - 1.8 - - org.eclipse.jetty jetty-maven-plugin - ${jetty.version} @@ -68,8 +61,8 @@ + org.apache.maven.plugins maven-source-plugin - 3.0.1 attach-sources diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java index edff405886a..3642373d861 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java @@ -93,11 +93,10 @@ public class OSGiWebappClassLoader extends WebAppClassLoader implements BundleRe _osgiBundleClassLoader = BundleClassLoaderHelperFactory.getFactory().getHelper().getBundleClassLoader(contributor); } - - /* ------------------------------------------------------------ */ + @Override - public Class loadClass(String name) throws ClassNotFoundException + protected Class findClass(String name) throws ClassNotFoundException { try { @@ -107,7 +106,8 @@ public class OSGiWebappClassLoader extends WebAppClassLoader implements BundleRe { try { - return super.loadClass(name); + + return super.findClass(name); } catch (ClassNotFoundException cne2) { @@ -147,6 +147,48 @@ public class OSGiWebappClassLoader extends WebAppClassLoader implements BundleRe return url != null ? url : super.getResource(name); } + + + + @Override + public URL findResource(String name) + { + URL url = _osgiBundleClassLoader.getResource(name); + return url != null ? url : super.findResource(name); + } + + + + /** + * Try to load the class from the bundle classloader. + * We do NOT load it as a resource as the WebAppClassLoader does because the + * url that is returned is an osgi-special url that does not play + * properly with WebAppClassLoader's method of extracting the class + * from the resource. This implementation directly asks the osgi + * bundle classloader to load the given class name. + * + * @see org.eclipse.jetty.webapp.WebAppClassLoader#loadAsResource(java.lang.String, boolean) + */ + @Override + protected Class loadAsResource(String name, boolean checkSystemResource) throws ClassNotFoundException + { + try + { + return _osgiBundleClassLoader.loadClass(name); + } + catch (ClassNotFoundException cne) + { + try + { + return super.loadAsResource(name, checkSystemResource); + } + catch (ClassNotFoundException cne2) + { + throw cne; + } + } + } + /* ------------------------------------------------------------ */ private List toList(Enumeration e, Enumeration e2) { diff --git a/jetty-security/src/main/config/etc/README.spnego b/jetty-security/src/main/config/etc/README.spnego index 0b4cc5b7ab5..85917c832c0 100644 --- a/jetty-security/src/main/config/etc/README.spnego +++ b/jetty-security/src/main/config/etc/README.spnego @@ -1,7 +1,7 @@ -This setup will enable you to authenticate a user via spnego into your +This setup will enable you to authenticate a user via SPNEGO into your webapp. -To run with spengo enabled the following command line options are required: +To run with SPNEGO enabled the following command line options are required: -Djava.security.krb5.conf=/path/to/jetty/etc/krb5.ini -Djava.security.auth.login.config=/path/to/jetty/etc/spnego.conf @@ -9,13 +9,13 @@ To run with spengo enabled the following command line options are required: The easiest place to put these lines are in the start.ini file. -For debugging the spengo authentication the following options are helpful: +For debugging the SPNEGO authentication the following options are helpful: -Dorg.eclipse.jetty.LEVEL=debug -Dsun.security.spnego.debug=true -Spengo Authentication is enabled in the webapp with the following setup. +SPNEGO Authentication is enabled in the webapp with the following setup. @@ -32,7 +32,7 @@ Spengo Authentication is enabled in the webapp with the following setup. Test Realm (optionally to add custom error page) - /loginError.html?param=foo + /loginError.html?param=foo @@ -59,4 +59,4 @@ embedded, via the jetty.xml or in a context file for the webapp. true - \ No newline at end of file + diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java index d495454936b..0dfe1b6add5 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java @@ -45,7 +45,7 @@ public class SpnegoAuthenticator extends LoginAuthenticator } /** - * Allow for a custom authMethod value to be set for instances where SPENGO may not be appropriate + * Allow for a custom authMethod value to be set for instances where SPNEGO may not be appropriate * @param authMethod the auth method */ public SpnegoAuthenticator( String authMethod ) @@ -96,7 +96,7 @@ public class SpnegoAuthenticator extends LoginAuthenticator return Authentication.UNAUTHENTICATED; } - LOG.debug("SpengoAuthenticator: sending challenge"); + LOG.debug("Sending challenge"); res.setHeader(HttpHeader.WWW_AUTHENTICATE.asString(), HttpHeader.NEGOTIATE.asString()); res.sendError(HttpServletResponse.SC_UNAUTHORIZED); return Authentication.SEND_CONTINUE; diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java index 52a2a686e50..f5a1bdabe08 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java @@ -544,27 +544,17 @@ public class WebAppClassLoader extends URLClassLoader else { // Not parent loader priority, so... - - // Try the webapp classloader first - // Look in the webapp classloader as a resource, to avoid - // loading a system class. - String path = name.replace('.', '/').concat(".class"); - URL webapp_url = findResource(path); - - if (webapp_url!=null && !_context.isSystemResource(name,webapp_url)) + webapp_class = loadAsResource(name, true); + if (webapp_class != null) { - webapp_class = this.foundClass(name,webapp_url); - resolveClass(webapp_class); - if (LOG.isDebugEnabled()) - LOG.debug("WAP webapp loaded {}",webapp_class); return webapp_class; } + // Try the parent loader try { parent_class = _parent.loadClass(name); - // If the webapp is allowed to see this class if (Boolean.TRUE.equals(__loadServerClasses.get()) || !_context.isServerClass(parent_class)) { @@ -580,12 +570,9 @@ public class WebAppClassLoader extends URLClassLoader // We couldn't find a parent class, so OK to return a webapp one if it exists // and we just couldn't see it before - if (webapp_url!=null) + webapp_class = loadAsResource(name, false); + if (webapp_class != null) { - webapp_class = this.foundClass(name,webapp_url); - resolveClass(webapp_class); - if (LOG.isDebugEnabled()) - LOG.debug("WAP !server webapp loaded {}",webapp_class); return webapp_class; } @@ -629,12 +616,47 @@ public class WebAppClassLoader extends URLClassLoader return _transformers.remove(transformer); } + + /** + * Look for the classname as a resource to avoid loading a class that is + * potentially a system resource. + * + * @param name the name of the class to load + * @param checkSystemResource if true and the class isn't a system class we return it + * @return the loaded class + * @throws ClassNotFoundException + */ + protected Class loadAsResource (final String name, boolean checkSystemResource) throws ClassNotFoundException + { + // Try the webapp classloader first + // Look in the webapp classloader as a resource, to avoid + // loading a system class. + Class webapp_class = null; + String path = name.replace('.', '/').concat(".class"); + URL webapp_url = findResource(path); + + if (webapp_url!=null && (!checkSystemResource || !_context.isSystemResource(name,webapp_url))) + { + + webapp_class = this.foundClass(name,webapp_url); + resolveClass(webapp_class); + if (LOG.isDebugEnabled()) + LOG.debug("WAP webapp loaded {}",webapp_class); + } + + return webapp_class; + } + + + /* ------------------------------------------------------------ */ @Override protected Class findClass(final String name) throws ClassNotFoundException { if (_transformers.isEmpty()) + { return super.findClass(name); + } String path = name.replace('.', '/').concat(".class"); URL url = findResource(path); diff --git a/pom.xml b/pom.xml index ef3c66272e5..be2a13a11dc 100644 --- a/pom.xml +++ b/pom.xml @@ -33,12 +33,22 @@ benchmarks 1.2.0 1.1.5 - 2.22.0 5.3.0 - 3.5.2 3.5.0 + 2.4.5.Final + 1.0.5 + + 2.22.0 + 3.8.0 + 3.1.1 + 3.1.0 + 3.0.1 + 3.2.2 + 3.5.2 + + 5.0 @@ -263,6 +273,7 @@ + org.apache.maven.plugins maven-remote-resources-plugin @@ -280,6 +291,7 @@ + org.apache.maven.plugins maven-source-plugin true @@ -422,7 +434,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.8.0 + ${maven.compiler.plugin.version} 1.8 1.8 @@ -431,7 +443,7 @@ org.apache.maven.plugins maven-dependency-plugin - 3.1.1 + ${maven.dependency.plugin.version} org.apache.maven.plugins @@ -454,7 +466,7 @@ org.apache.maven.plugins maven-failsafe-plugin - ${surefire.version} + ${maven.surefire.version} org.junit.jupiter @@ -598,7 +610,7 @@ org.apache.maven.plugins maven-resources-plugin - 3.1.0 + ${maven.resources.plugin.version} org.apache.maven.plugins @@ -620,12 +632,12 @@ org.apache.maven.plugins maven-source-plugin - 3.0.1 + ${maven.source.plugin.version} org.apache.maven.plugins maven-surefire-plugin - ${surefire.version} + ${maven.surefire.version} 3600 @{argLine} -Dfile.encoding=UTF-8 -Duser.language=en -Duser.region=US -showversion -Xmx1g -Xms1g -XX:+PrintGCDetails @@ -641,7 +653,7 @@ org.apache.maven.plugins maven-war-plugin - 3.2.2 + ${maven.war.plugin.version} org.eclipse.jetty.toolchain @@ -1010,12 +1022,12 @@ org.apache.maven.plugin-tools maven-plugin-tools-api - ${maven-plugin-tools.version} + ${maven.plugin-tools.version} org.apache.maven.plugin-tools maven-plugin-annotations - ${maven-plugin-tools.version} + ${maven.plugin-tools.version} provided @@ -1027,7 +1039,7 @@ org.eclipse.jetty.toolchain jetty-perf-helper - 1.0.5 + ${jetty.perf-helper.version} org.slf4j