diff --git a/legend-shared-pac4j/pom.xml b/legend-shared-pac4j/pom.xml
index 047cacb..205dce4 100644
--- a/legend-shared-pac4j/pom.xml
+++ b/legend-shared-pac4j/pom.xml
@@ -38,10 +38,6 @@
org.pac4j
dropwizard-pac4j
-
- org.commonjava.mimeparse
- mimeparse
-
org.apache.commons
commons-lang3
diff --git a/legend-shared-pac4j/src/main/java/org/finos/legend/server/pac4j/internal/AcceptHeaderAjaxRequestResolver.java b/legend-shared-pac4j/src/main/java/org/finos/legend/server/pac4j/internal/AcceptHeaderAjaxRequestResolver.java
index 76cf928..7753bc1 100644
--- a/legend-shared-pac4j/src/main/java/org/finos/legend/server/pac4j/internal/AcceptHeaderAjaxRequestResolver.java
+++ b/legend-shared-pac4j/src/main/java/org/finos/legend/server/pac4j/internal/AcceptHeaderAjaxRequestResolver.java
@@ -16,12 +16,17 @@
import com.google.common.base.Strings;
import com.google.common.net.HttpHeaders;
-import com.google.common.net.MediaType;
-import java.util.Collections;
-import org.commonjava.mimeparse.MIMEParse;
+
+import java.text.ParseException;
+import java.util.List;
+
+import org.glassfish.jersey.message.internal.AcceptableMediaType;
+import org.glassfish.jersey.message.internal.HttpHeaderReader;
import org.pac4j.core.context.WebContext;
import org.pac4j.core.http.ajax.DefaultAjaxRequestResolver;
+import javax.ws.rs.core.MediaType;
+
public class AcceptHeaderAjaxRequestResolver extends DefaultAjaxRequestResolver
{
@Override
@@ -32,8 +37,30 @@ public boolean isAjax(WebContext context)
{
return true;
}
- String mimeType = MIMEParse.bestMatch(Collections.singleton(MediaType.HTML_UTF_8.toString()),
- acceptHeader);
- return Strings.isNullOrEmpty(mimeType);
+ String mimeType = mimeParseBestMatch(acceptHeader);
+ return Strings.isNullOrEmpty(mimeType);
+ }
+
+ private String mimeParseBestMatch(String acceptHeader)
+ {
+ List requested;
+ try
+ {
+ requested = HttpHeaderReader.readAcceptMediaType(acceptHeader);
+ requested.sort(AcceptableMediaType.COMPARATOR);
+ }
+ catch (ParseException e)
+ {
+ return "";
+ }
+ MediaType supported = new MediaType("text", "html", "utf-8");
+ for (AcceptableMediaType req : requested)
+ {
+ if (req.isCompatible(supported))
+ {
+ return supported.toString();
+ }
+ }
+ return "";
}
}
diff --git a/pom.xml b/pom.xml
index 12b31ab..6da2864 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,7 +62,6 @@
9.4.44.v20210927
4.13.1
1.7.36
- 0.1.3.3
4.9.0
3.5.10
5.3.1
@@ -648,17 +647,6 @@
nimbus-jose-jwt
${nimbus.jwt.version}
-
- org.commonjava.mimeparse
- mimeparse
- ${mimeparse.version}
-
-
- commons-lang
- commons-lang
-
-
-
org.eclipse.jetty
jetty-http