keycloak-aplcache
Changes
adapters/saml/servlet-filter/pom.xml 2(+1 -1)
adapters/spi/servlet-adapter-spi/src/main/java/org/keycloak/adapters/servlet/FilterSessionStore.java 62(+7 -55)
pom.xml 8(+8 -0)
Details
adapters/saml/servlet-filter/pom.xml 2(+1 -1)
diff --git a/adapters/saml/servlet-filter/pom.xml b/adapters/saml/servlet-filter/pom.xml
index 69ce19b..e3dbee8 100755
--- a/adapters/saml/servlet-filter/pom.xml
+++ b/adapters/saml/servlet-filter/pom.xml
@@ -61,7 +61,7 @@
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.servlet</groupId>
- <artifactId>jboss-servlet-api_3.1_spec</artifactId>
+ <artifactId>jboss-servlet-api_3.0_spec</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/adapters/spi/servlet-adapter-spi/pom.xml b/adapters/spi/servlet-adapter-spi/pom.xml
index d6f82e2..c4c944b 100755
--- a/adapters/spi/servlet-adapter-spi/pom.xml
+++ b/adapters/spi/servlet-adapter-spi/pom.xml
@@ -45,7 +45,7 @@
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.servlet</groupId>
- <artifactId>jboss-servlet-api_3.1_spec</artifactId>
+ <artifactId>jboss-servlet-api_3.0_spec</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/adapters/spi/servlet-adapter-spi/src/main/java/org/keycloak/adapters/servlet/FilterSessionStore.java b/adapters/spi/servlet-adapter-spi/src/main/java/org/keycloak/adapters/servlet/FilterSessionStore.java
index 2470ef4..7453dd5 100755
--- a/adapters/spi/servlet-adapter-spi/src/main/java/org/keycloak/adapters/servlet/FilterSessionStore.java
+++ b/adapters/spi/servlet-adapter-spi/src/main/java/org/keycloak/adapters/servlet/FilterSessionStore.java
@@ -23,7 +23,6 @@ import org.keycloak.adapters.spi.KeycloakAccount;
import org.keycloak.common.util.Encode;
import org.keycloak.common.util.MultivaluedHashMap;
-import javax.servlet.ReadListener;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
@@ -172,60 +171,13 @@ public class FilterSessionStore implements AdapterSessionStore {
@Override
public ServletInputStream getInputStream() throws IOException {
-
- if (needRequestRestore && body != null) {
- return new ServletInputStream() {
- private int lastIndex = 0;
- private ReadListener readListener = null;
-
- @Override
- public boolean isFinished() {
- return lastIndex == body.length;
- }
-
- @Override
- public boolean isReady() {
- return true;
- }
-
- @Override
- public void setReadListener(ReadListener readListener) {
- this.readListener = readListener;
- if (!isFinished()) {
- try {
- readListener.onDataAvailable();
- } catch (IOException e) {
- readListener.onError(e);
- }
- } else {
- try {
- readListener.onAllDataRead();
- } catch (IOException e) {
- readListener.onError(e);
- }
- }
- }
-
- @Override
- public int read() throws IOException {
- int i = -1;
- if (!isFinished()) {
- i = body[lastIndex];
- lastIndex++;
- if (isFinished() && readListener != null) {
- try {
- readListener.onAllDataRead();
- } catch (IOException e) {
- readListener.onError(e);
- throw e;
- }
- }
- }
- return i;
- }
- };
- }
- return super.getInputStream();
+ final ByteArrayInputStream is = new ByteArrayInputStream(body);
+ return new ServletInputStream() {
+ @Override
+ public int read() throws IOException {
+ return is.read();
+ }
+ };
}
@Override
pom.xml 8(+8 -0)
diff --git a/pom.xml b/pom.xml
old mode 100644
new mode 100755
index 58ba936..96cf5d1
--- a/pom.xml
+++ b/pom.xml
@@ -65,6 +65,8 @@
<jboss.spec.javax.xml.bind.jboss-jaxb-api_2.2_spec.version>1.0.4.Final</jboss.spec.javax.xml.bind.jboss-jaxb-api_2.2_spec.version>
<log4j.version>1.2.16</log4j.version>
<resteasy.version>3.0.14.Final</resteasy.version>
+ <!-- KEEP Servlet 3.0!!! We need to keep some adapters like Filter backwards compatible -->
+ <servlet.api.30.version>1.0.2.Final</servlet.api.30.version>
<servlet.api.31.version>1.0.0.Final</servlet.api.31.version>
<slf4j.version>1.7.7</slf4j.version>
<sun.istack.version>2.21</sun.istack.version>
@@ -301,6 +303,12 @@
<artifactId>jackson-jaxrs-base</artifactId>
<version>${jackson.version}</version>
</dependency>
+ <!-- KEEP Servlet 3.0! Some adapters need to remain backward compatible and can't let stuff creep in -->
+ <dependency>
+ <groupId>org.jboss.spec.javax.servlet</groupId>
+ <artifactId>jboss-servlet-api_3.0_spec</artifactId>
+ <version>${servlet.api.30.version}</version>
+ </dependency>
<dependency>
<groupId>org.jboss.spec.javax.servlet</groupId>
<artifactId>jboss-servlet-api_3.1_spec</artifactId>