From dc7ae8708fe80af8742370d2a541a4b2a18a39ce Mon Sep 17 00:00:00 2001 From: Eike Cochu <eike@cochu.com> Date: Fri, 27 Nov 2015 12:08:09 +0100 Subject: [PATCH] commented out catalina cors filter in favor of own provider implementation added log4j2 and xml configuration file set index.jsp to redirect to WADL --- ui/backend/.classpath | 25 +++++++++++++++++-- .../org.eclipse.wst.common.component | 3 +++ ui/backend/pom.xml | 5 ++++ .../java/de/cochu/backend/Application.java | 2 +- .../java/de/cochu/backend/CORSFilter.java | 20 +++++++++++++++ .../src/main/java/de/cochu/backend/Test.java | 5 ++++ ui/backend/src/main/resources/log4j2.xml | 13 ++++++++++ ui/backend/src/main/webapp/WEB-INF/web.xml | 2 ++ ui/backend/src/main/webapp/index.jsp | 6 +---- ui/backend/target/classes/log4j2.xml | 13 ++++++++++ .../maven/de.cochu/backend/pom.properties | 2 +- .../META-INF/maven/de.cochu/backend/pom.xml | 5 ++++ 12 files changed, 92 insertions(+), 9 deletions(-) create mode 100644 ui/backend/src/main/java/de/cochu/backend/CORSFilter.java create mode 100644 ui/backend/src/main/resources/log4j2.xml create mode 100644 ui/backend/target/classes/log4j2.xml diff --git a/ui/backend/.classpath b/ui/backend/.classpath index 106b4f5e..6acf3eee 100644 --- a/ui/backend/.classpath +++ b/ui/backend/.classpath @@ -1,7 +1,28 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry kind="src" path="src/main/java"/> - <classpathentry exported="true" kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> + <classpathentry kind="src" output="target/classes" path="src/main/java"> + <attributes> + <attribute name="optional" value="true"/> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> + <attributes> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="src" output="target/test-classes" path="src/test/java"> + <attributes> + <attribute name="optional" value="true"/> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"> + <attributes> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="maven.pomderived" value="true"/> <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/> diff --git a/ui/backend/.settings/org.eclipse.wst.common.component b/ui/backend/.settings/org.eclipse.wst.common.component index cc321f3a..cd3494c5 100644 --- a/ui/backend/.settings/org.eclipse.wst.common.component +++ b/ui/backend/.settings/org.eclipse.wst.common.component @@ -3,6 +3,9 @@ <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/> <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/> + <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/> + <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/> + <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/resources"/> <property name="context-root" value="backend"/> <property name="java-output-path" value="/backend/target/classes"/> </wb-module> diff --git a/ui/backend/pom.xml b/ui/backend/pom.xml index 4b36e97e..c8b5d4de 100644 --- a/ui/backend/pom.xml +++ b/ui/backend/pom.xml @@ -26,5 +26,10 @@ <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>2.4.1</version> + </dependency> </dependencies> </project> diff --git a/ui/backend/src/main/java/de/cochu/backend/Application.java b/ui/backend/src/main/java/de/cochu/backend/Application.java index b45ab73a..38fc8eb7 100644 --- a/ui/backend/src/main/java/de/cochu/backend/Application.java +++ b/ui/backend/src/main/java/de/cochu/backend/Application.java @@ -7,7 +7,7 @@ public class Application extends ResourceConfig { public Application() { packages("de.cochu.backend"); - register(LoggingFilter.class); + //register(LoggingFilter.class); } } diff --git a/ui/backend/src/main/java/de/cochu/backend/CORSFilter.java b/ui/backend/src/main/java/de/cochu/backend/CORSFilter.java new file mode 100644 index 00000000..2bdd870e --- /dev/null +++ b/ui/backend/src/main/java/de/cochu/backend/CORSFilter.java @@ -0,0 +1,20 @@ +package de.cochu.backend; + +import java.io.IOException; + +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.container.ContainerResponseContext; +import javax.ws.rs.container.ContainerResponseFilter; +import javax.ws.rs.ext.Provider; + +@Provider +public class CORSFilter implements ContainerResponseFilter { + + @Override + public void filter(ContainerRequestContext request, ContainerResponseContext response) throws IOException { + response.getHeaders().add("Access-Control-Allow-Origin", "*"); + response.getHeaders().add("Access-Control-Allow-Headers", "origin, content-type, accept, authorization"); + response.getHeaders().add("Access-Control-Allow-Credentials", "true"); + response.getHeaders().add("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD"); + } +} \ No newline at end of file diff --git a/ui/backend/src/main/java/de/cochu/backend/Test.java b/ui/backend/src/main/java/de/cochu/backend/Test.java index d961513b..61988a11 100644 --- a/ui/backend/src/main/java/de/cochu/backend/Test.java +++ b/ui/backend/src/main/java/de/cochu/backend/Test.java @@ -5,9 +5,14 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + @Path("/") public class Test { + static Logger log = LogManager.getLogger(Test.class); + @GET @Path("/test") @Produces(MediaType.TEXT_PLAIN) diff --git a/ui/backend/src/main/resources/log4j2.xml b/ui/backend/src/main/resources/log4j2.xml new file mode 100644 index 00000000..e43e1b99 --- /dev/null +++ b/ui/backend/src/main/resources/log4j2.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Configuration status="WARN"> + <Appenders> + <Console name="Console" target="SYSTEM_OUT"> + <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /> + </Console> + </Appenders> + <Loggers> + <Root level="error"> + <AppenderRef ref="Console" /> + </Root> + </Loggers> +</Configuration> \ No newline at end of file diff --git a/ui/backend/src/main/webapp/WEB-INF/web.xml b/ui/backend/src/main/webapp/WEB-INF/web.xml index 4ac4dc4a..043b4d83 100644 --- a/ui/backend/src/main/webapp/WEB-INF/web.xml +++ b/ui/backend/src/main/webapp/WEB-INF/web.xml @@ -17,6 +17,7 @@ <url-pattern>/rest/*</url-pattern> </servlet-mapping> + <!-- <filter> <filter-name>CorsFilter</filter-name> <filter-class>org.apache.catalina.filters.CorsFilter</filter-class> @@ -26,5 +27,6 @@ <filter-name>CorsFilter</filter-name> <url-pattern>/rest/*</url-pattern> </filter-mapping> + --> </web-app> diff --git a/ui/backend/src/main/webapp/index.jsp b/ui/backend/src/main/webapp/index.jsp index c38169bb..d4fb745c 100644 --- a/ui/backend/src/main/webapp/index.jsp +++ b/ui/backend/src/main/webapp/index.jsp @@ -1,5 +1 @@ -<html> -<body> -<h2>Hello World!</h2> -</body> -</html> +<jsp:forward page="rest/application.wadl"/> \ No newline at end of file diff --git a/ui/backend/target/classes/log4j2.xml b/ui/backend/target/classes/log4j2.xml new file mode 100644 index 00000000..e43e1b99 --- /dev/null +++ b/ui/backend/target/classes/log4j2.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Configuration status="WARN"> + <Appenders> + <Console name="Console" target="SYSTEM_OUT"> + <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /> + </Console> + </Appenders> + <Loggers> + <Root level="error"> + <AppenderRef ref="Console" /> + </Root> + </Loggers> +</Configuration> \ No newline at end of file diff --git a/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.properties b/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.properties index c48c7ff7..02aea9a7 100644 --- a/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.properties +++ b/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven Integration for Eclipse -#Fri Nov 27 02:23:35 CET 2015 +#Fri Nov 27 11:38:17 CET 2015 version=0.0.1-SNAPSHOT groupId=de.cochu m2e.projectName=backend diff --git a/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.xml b/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.xml index 4b36e97e..c8b5d4de 100644 --- a/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.xml +++ b/ui/backend/target/m2e-wtp/web-resources/META-INF/maven/de.cochu/backend/pom.xml @@ -26,5 +26,10 @@ <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>2.4.1</version> + </dependency> </dependencies> </project> -- GitLab