diff --git a/ejb/embeddable/pom.xml b/ejb/embeddable/pom.xml index 17032dd7d..cc1eacac5 100644 --- a/ejb/embeddable/pom.xml +++ b/ejb/embeddable/pom.xml @@ -18,7 +18,7 @@ junit junit - 4.10 + 4.13.1 test jar diff --git a/jaspic/common/pom.xml b/jaspic/common/pom.xml index 82da0e698..069b74319 100644 --- a/jaspic/common/pom.xml +++ b/jaspic/common/pom.xml @@ -46,19 +46,19 @@ junit junit - 4.11 + 4.13.1 provided net.sourceforge.htmlunit htmlunit - 2.31 + 2.37.0 provided org.jsoup jsoup - 1.9.1 + 1.14.2 diff --git a/jaxrpc/jaxrpc-security/pom.xml b/jaxrpc/jaxrpc-security/pom.xml index dcc9c6c31..37c76a192 100644 --- a/jaxrpc/jaxrpc-security/pom.xml +++ b/jaxrpc/jaxrpc-security/pom.xml @@ -32,7 +32,7 @@ org.apache.ant ant - 1.7.0 + 1.10.11 diff --git a/jaxws/jaxws-client/pom.xml b/jaxws/jaxws-client/pom.xml index 94b71f3be..cbdc0d008 100644 --- a/jaxws/jaxws-client/pom.xml +++ b/jaxws/jaxws-client/pom.xml @@ -18,6 +18,7 @@ com.helger.maven jaxws-maven-plugin + 2.6.2 generate-sources diff --git a/jaxws/pom.xml b/jaxws/pom.xml index 84686e4cb..81a9e49f2 100644 --- a/jaxws/pom.xml +++ b/jaxws/pom.xml @@ -24,16 +24,10 @@ ${project.version} test - - javax.xml.ws - jaxws-api - 2.3.1 - test - com.sun.xml.ws jaxws-rt - 2.3.2 + 2.3.5 test diff --git a/pom.xml b/pom.xml index a8716f1e8..732727fc8 100644 --- a/pom.xml +++ b/pom.xml @@ -10,9 +10,9 @@ Java EE 7 Sample: javaee7-samples - 1.4.1.Final + 1.7.0.Alpha1 1.7 - 3.0.0 + 3.5.4 UTF-8 false @@ -129,7 +129,7 @@ fish.payara.arquillian payara-client-ee7 - 1.0.Beta3-m1 + 2.2 test @@ -163,26 +163,24 @@ junit junit - 4.12 + 4.13.1 test org.hamcrest hamcrest-core - 2.1 test org.hamcrest hamcrest-library - 2.1 test org.assertj assertj-core - 1.5.0 + 3.16.1 test @@ -228,7 +226,7 @@ net.sourceforge.htmlunit htmlunit - 2.35.0 + 2.40.0 test @@ -258,12 +256,12 @@ jakarta.xml.bind jakarta.xml.bind-api - 2.3.2 + 3.0.0 org.glassfish.jaxb jaxb-runtime - 2.3.2 + 3.0.0 @@ -282,7 +280,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.8.0 + 3.8.1 ${java.min.version} ${java.min.version} @@ -300,7 +298,7 @@ org.apache.maven.plugins maven-war-plugin - 3.2.2 + 3.2.3 true false @@ -333,7 +331,7 @@ org.wildfly.plugins wildfly-maven-plugin - 1.0.2.Final + 1.2.1.Final @@ -341,12 +339,12 @@ org.apache.maven.plugins maven-enforcer-plugin - 3.0.0-M2 + 3.0.0-M3 org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M3 + 3.0.0-M4 @@ -380,7 +378,7 @@ cloud.piranha.arquillian piranha-arquillian-server - 20.1.2 + 20.6.0-SNAPSHOT @@ -392,8 +390,8 @@ piranha-embedded - 20.1.2 - false + 20.6.0-SNAPSHOT + true ${skipEJB} @@ -426,7 +424,7 @@ fish.payara.arquillian arquillian-payara-server-4-managed - 1.0.Beta3-m1 + 1.1 @@ -1445,7 +1443,7 @@ org.apache.maven.plugins maven-antrun-plugin - 1.1 + 1.8 process-test-classes @@ -1705,7 +1703,7 @@ org.apache.maven.plugins maven-dependency-plugin - 2.4 + 3.1.2 sources diff --git a/servlet/pom.xml b/servlet/pom.xml index 912a59a6e..1bbe27055 100644 --- a/servlet/pom.xml +++ b/servlet/pom.xml @@ -27,6 +27,7 @@ resource-packaging file-upload programmatic-registration + servlet-libs security-basicauth diff --git a/servlet/protocol-handler/pom.xml b/servlet/protocol-handler/pom.xml index e49c5507f..71b9394f4 100644 --- a/servlet/protocol-handler/pom.xml +++ b/servlet/protocol-handler/pom.xml @@ -12,4 +12,19 @@ war Java EE 7 Sample: servlet - protocol-handler + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + + true + + + + + diff --git a/servlet/protocol-handler/src/main/java/org/javaee7/servlet/protocolhandler/UpgradeServlet.java b/servlet/protocol-handler/src/main/java/org/javaee7/servlet/protocolhandler/UpgradeServlet.java index 8bca67535..862f14a79 100644 --- a/servlet/protocol-handler/src/main/java/org/javaee7/servlet/protocolhandler/UpgradeServlet.java +++ b/servlet/protocol-handler/src/main/java/org/javaee7/servlet/protocolhandler/UpgradeServlet.java @@ -39,6 +39,7 @@ */ package org.javaee7.servlet.protocolhandler; +import static javax.servlet.http.HttpServletResponse.SC_BAD_REQUEST; import static javax.servlet.http.HttpServletResponse.SC_SWITCHING_PROTOCOLS; import java.io.IOException; @@ -66,11 +67,16 @@ public class UpgradeServlet extends HttpServlet { * @throws IOException if an I/O error occurs */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - response.setStatus(SC_SWITCHING_PROTOCOLS); - response.setHeader("Connection", "Upgrade"); - response.setHeader("Upgrade", "echo"); - request.upgrade(MyProtocolHandler.class); - - System.out.println("Request upgraded to MyProtocolHandler"); + String requestedUpgrade = request.getHeader("Upgrade"); + if ("echo".equals(requestedUpgrade)) { + response.setStatus(SC_SWITCHING_PROTOCOLS); + response.setHeader("Connection", "Upgrade"); + response.setHeader("Upgrade", "echo"); + request.upgrade(MyProtocolHandler.class); + + System.out.println("Request upgraded to MyProtocolHandler"); + } else { + response.sendError(SC_BAD_REQUEST, "unknown upgrade " + requestedUpgrade); + } } } diff --git a/servlet/protocol-handler/src/test/java/org/javaee7/servlet/protocolhandler/ProtocolHandlerTest.java b/servlet/protocol-handler/src/test/java/org/javaee7/servlet/protocolhandler/ProtocolHandlerTest.java index 2e02c1baa..a7fe9e1bd 100644 --- a/servlet/protocol-handler/src/test/java/org/javaee7/servlet/protocolhandler/ProtocolHandlerTest.java +++ b/servlet/protocol-handler/src/test/java/org/javaee7/servlet/protocolhandler/ProtocolHandlerTest.java @@ -1,6 +1,6 @@ package org.javaee7.servlet.protocolhandler; -import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertEquals; import java.io.IOException; import java.io.InputStream; @@ -44,6 +44,8 @@ public void testUpgradeProtocol() throws IOException, URISyntaxException { // typically hang when reading. URLConnection connection = new URL(base, "UpgradeServlet").openConnection(); + connection.setRequestProperty("Connection", "Upgrade"); + connection.setRequestProperty("Upgrade", "echo"); connection.setConnectTimeout(2000); connection.setReadTimeout(2000); @@ -71,7 +73,7 @@ public void testUpgradeProtocol() throws IOException, URISyntaxException { } } - assertTrue("In protocol handler".equals(response.toString())); + assertEquals("In protocol handler", response.toString()); } } diff --git a/servlet/resource-packaging/src/test/java/org/javaee7/servlet/resource/packaging/ResourcePackagingTest.java b/servlet/resource-packaging/src/test/java/org/javaee7/servlet/resource/packaging/ResourcePackagingTest.java index 5d179c70a..7a662a411 100644 --- a/servlet/resource-packaging/src/test/java/org/javaee7/servlet/resource/packaging/ResourcePackagingTest.java +++ b/servlet/resource-packaging/src/test/java/org/javaee7/servlet/resource/packaging/ResourcePackagingTest.java @@ -1,22 +1,19 @@ package org.javaee7.servlet.resource.packaging; -import static org.hamcrest.CoreMatchers.equalTo; -import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.CoreMatchers.startsWith; -import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import java.io.File; import java.net.MalformedURLException; -import java.net.URI; import java.net.URISyntaxException; import java.net.URL; +import java.util.logging.Logger; -import javax.ws.rs.client.Client; import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; import javax.ws.rs.core.Response; import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.RunAsClient; import org.jboss.arquillian.junit.Arquillian; import org.jboss.arquillian.test.api.ArquillianResource; import org.jboss.shrinkwrap.api.ShrinkWrap; @@ -29,26 +26,32 @@ */ @RunWith(Arquillian.class) public class ResourcePackagingTest { + + Logger logger = Logger.getLogger(ResourcePackagingTest.class.getName()); @Deployment(testable = false) public static WebArchive deploy() throws URISyntaxException { return ShrinkWrap.create(WebArchive.class) - .addAsLibrary(new File("src/main/webapp/WEB-INF/lib/myResources.jar"), "myResources.jar"); + .addAsLibrary(new File("src/main/webapp/WEB-INF/lib/myResources.jar"), "myResources.jar"); } @ArquillianResource private URL base; @Test - public void getMyResourceJarStyles() throws MalformedURLException { - Client client = ClientBuilder.newClient(); - WebTarget target = client.target(URI.create(new URL(base, "styles.css").toExternalForm())); - Response response = target.request().get(); - - assertThat(response.getStatus(), is(equalTo(200))); + @RunAsClient + public void getMyResourceJarStyles() throws MalformedURLException, URISyntaxException { + Response response = + ClientBuilder.newClient() + .target(new URL(base, "styles.css").toURI()) + .request() + .get(); + + assertEquals(200, response.getStatus()); String style = response.readEntity(String.class); - assertThat(style, startsWith("body {")); + + assertTrue(style.startsWith("body {")); } } diff --git a/servlet/servlet-libs/empty-app-servlet-lib/pom.xml b/servlet/servlet-libs/empty-app-servlet-lib/pom.xml new file mode 100644 index 000000000..5545d4563 --- /dev/null +++ b/servlet/servlet-libs/empty-app-servlet-lib/pom.xml @@ -0,0 +1,23 @@ + + + 4.0.0 + + + org.javaee7 + servlet-libs + 1.0-SNAPSHOT + + + empty-app-servlet-lib + war + + Java EE 7 Sample: servlet - empty-app-servlet-lib + + + + org.javaee7 + servlet-lib + 1.0-SNAPSHOT + + + diff --git a/servlet/servlet-libs/empty-app-servlet-lib/src/test/java/org/javaee7/servlet/servlet_libs/empty/app/EmptyAppWithLibTest.java b/servlet/servlet-libs/empty-app-servlet-lib/src/test/java/org/javaee7/servlet/servlet_libs/empty/app/EmptyAppWithLibTest.java new file mode 100644 index 000000000..445d2f309 --- /dev/null +++ b/servlet/servlet-libs/empty-app-servlet-lib/src/test/java/org/javaee7/servlet/servlet_libs/empty/app/EmptyAppWithLibTest.java @@ -0,0 +1,59 @@ +package org.javaee7.servlet.servlet_libs.empty.app; + +import static org.junit.Assert.assertTrue; + +import java.net.MalformedURLException; +import java.net.URISyntaxException; +import java.net.URL; + +import javax.ws.rs.client.ClientBuilder; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.RunAsClient; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * + * @author Arjan Tijms + * + */ +@RunWith(Arquillian.class) +public class EmptyAppWithLibTest { + + @ArquillianResource + private URL base; + + @Deployment(testable = false) + public static WebArchive deploy() throws URISyntaxException { + JavaArchive[] archiveWithServlet = + Maven.resolver() + .loadPomFromFile("pom.xml") + .resolve("org.javaee7:servlet-lib") + .withoutTransitivity() + .as(JavaArchive.class); + + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(archiveWithServlet); + } + + @Test + @RunAsClient + public void invokeBasicServlet() throws MalformedURLException, URISyntaxException { + String response = + ClientBuilder.newClient() + .target(new URL(base, "basic").toURI()) + .request() + .get() + .readEntity(String.class); + + assertTrue(response.startsWith("get request")); + } + +} diff --git a/servlet/servlet-libs/pom.xml b/servlet/servlet-libs/pom.xml new file mode 100644 index 000000000..ee2519d80 --- /dev/null +++ b/servlet/servlet-libs/pom.xml @@ -0,0 +1,25 @@ + + + 4.0.0 + + + org.javaee7 + servlet + 1.0-SNAPSHOT + + + + This module contains samples for functioning of web apps and code in libraries + (jars in WEB-INF/lib). + + + servlet-libs + pom + + Java EE 7 Sample: Servlet - libs + + + servlet-lib + empty-app-servlet-lib + + diff --git a/servlet/servlet-libs/servlet-lib/pom.xml b/servlet/servlet-libs/servlet-lib/pom.xml new file mode 100644 index 000000000..8ad86b342 --- /dev/null +++ b/servlet/servlet-libs/servlet-lib/pom.xml @@ -0,0 +1,54 @@ + + + 4.0.0 + + org.javaee7 + servlet-lib + 1.0-SNAPSHOT + + Java EE 7 Sample: servlet - servlet-lib + + This module delivers a jar with a single Servlet in it. The intend is for this to be included + in the WEB-INF/lib folder of a war, to test that Servlets are found and correctly excecuted + from there. As such this module itself contains no tests. + + + + UTF-8 + 1.7 + + + + + javax + javaee-api + 7.0 + provided + + + junit + junit + 4.13.1 + + + + + + + src/main/resources + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.6.1 + + ${java.min.version} + ${java.min.version} + + + + + diff --git a/servlet/servlet-libs/servlet-lib/src/main/java/org/javaee7/servlet/servlet_libs/basic/servlet/BasicServlet.java b/servlet/servlet-libs/servlet-lib/src/main/java/org/javaee7/servlet/servlet_libs/basic/servlet/BasicServlet.java new file mode 100644 index 000000000..183ed6669 --- /dev/null +++ b/servlet/servlet-libs/servlet-lib/src/main/java/org/javaee7/servlet/servlet_libs/basic/servlet/BasicServlet.java @@ -0,0 +1,24 @@ +package org.javaee7.servlet.servlet_libs.basic.servlet; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @author Arjan Tijms + */ +@WebServlet("/basic") +public class BasicServlet extends HttpServlet { + + private static final long serialVersionUID = 1L; + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + response.getWriter().print("get request"); + } + +} diff --git a/test-utils/pom.xml b/test-utils/pom.xml index 1a596a1f6..263f2eb41 100644 --- a/test-utils/pom.xml +++ b/test-utils/pom.xml @@ -9,7 +9,7 @@ UTF-8 - 1.1.14.Final + 1.7.0.Alpha1 1.7 @@ -35,7 +35,7 @@ junit junit - 4.12 + 4.13.1 org.jboss.arquillian.container diff --git a/websocket/atmosphere-chat/pom.xml b/websocket/atmosphere-chat/pom.xml index f627751e2..2f6dd9c8a 100644 --- a/websocket/atmosphere-chat/pom.xml +++ b/websocket/atmosphere-chat/pom.xml @@ -30,7 +30,7 @@ ch.qos.logback logback-core - 1.0.13 + 1.2.0 org.atmosphere