You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ge...@apache.org on 2011/07/11 14:40:38 UTC
svn commit: r1145150 -
/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java
Author: genspring
Date: Mon Jul 11 12:40:38 2011
New Revision: 1145150
URL: http://svn.apache.org/viewvc?rev=1145150&view=rev
Log:
GERONIMO-6060 ClassCastException thrown in RunAsLoginModule, Thanks Shenghao Fang for the patch !
Modified:
geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java
Modified: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java?rev=1145150&r1=1145149&r2=1145150&view=diff
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java (original)
+++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/credentialstore/RunAsLoginModule.java Mon Jul 11 12:40:38 2011
@@ -38,6 +38,7 @@ import javax.security.auth.callback.Call
import javax.security.auth.callback.UnsupportedCallbackException;
import org.apache.geronimo.security.jaas.JaasLoginModuleUse;
+import org.osgi.framework.Bundle;
/**
* Simple login module that may help create subjects for run-as roles. List the desired class as the principalClass and the
@@ -56,10 +57,10 @@ public class RunAsLoginModule implements
public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) {
this.subject = subject;
this.callbackHandler = callbackHandler;
- ClassLoader classLoader = (ClassLoader) options.get(JaasLoginModuleUse.CLASSLOADER_LM_OPTION);
+ Bundle bundle = (Bundle) options.get(JaasLoginModuleUse.CLASSLOADER_LM_OPTION);
String principalClassName = (String) options.get("principalClass");
try {
- principalClass = (Class<Principal>) classLoader.loadClass(principalClassName);
+ principalClass = (Class<Principal>) bundle.loadClass(principalClassName);
} catch (ClassNotFoundException e) {
throw new IllegalArgumentException(principalClassName + " not found", e);
}