Repository: cxf Updated Branches: refs/heads/master 005ee936d -> 42eba2f94
separate jetty8 and jetty9 dependencies in systests/jaxrs 2 Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/42eba2f9 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/42eba2f9 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/42eba2f9 Branch: refs/heads/master Commit: 42eba2f948a967d62dc0257a920715ae47ae4310 Parents: 005ee93 Author: Akitoshi Yoshida <[email protected]> Authored: Thu Feb 5 17:14:58 2015 +0100 Committer: Akitoshi Yoshida <[email protected]> Committed: Thu Feb 5 17:14:58 2015 +0100 ---------------------------------------------------------------------- .../systest/jaxrs/security/BookLoginModule.java | 30 ++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/42eba2f9/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/security/BookLoginModule.java ---------------------------------------------------------------------- diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/security/BookLoginModule.java b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/security/BookLoginModule.java index 113a734..ea42292 100644 --- a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/security/BookLoginModule.java +++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/security/BookLoginModule.java @@ -28,12 +28,17 @@ import javax.security.auth.login.LoginException; import javax.security.auth.spi.LoginModule; public class BookLoginModule implements LoginModule { + private static final Class<LoginModule> LOGIN_MODULE_C = getLoginModuleClass(); private LoginModule module; private String fileResource; public BookLoginModule() { - module = new org.eclipse.jetty.jaas.spi.PropertyFileLoginModule(); + try { + module = LOGIN_MODULE_C.newInstance(); + } catch (Throwable ex) { + throw new RuntimeException(ex); + } try { fileResource = getClass() .getResource("/org/apache/cxf/systest/jaxrs/security/jetty-realm.properties") @@ -42,7 +47,28 @@ public class BookLoginModule implements LoginModule { throw new RuntimeException(ex); } } - + + @SuppressWarnings("unchecked") + private static Class<LoginModule> getLoginModuleClass() { + Class<?> clz = null; + try { + // try the jetty9 version + clz = Class.forName("org.eclipse.jetty.jaas.spi.PropertyFileLoginModule", + true, BookLoginModule.class.getClassLoader()); + } catch (Throwable t) { + if (clz == null) { + try { + // try the jetty8 version + clz = Class.forName("org.eclipse.jetty.plus.jaas.spi.PropertyFileLoginModule", + true, BookLoginModule.class.getClassLoader()); + } catch (Throwable t2) { + // ignore + } + } + } + return (Class<LoginModule>)clz; + } + public boolean abort() throws LoginException { return module.abort(); }
