NoClassDefFoundError: javax/security/auth/login/LoginException from Subversion plugin

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

After installing JIRA, the Subversion plugin, and configuring LDAP authentication, JIRA either won't start or will fail to render the SVN configuration panel.

The following appears in the atlassian-jira.log:

2014-01-03 15:40:09,123 ThreadPoolAsyncTaskExecutor::Thread 19 ERROR <user> 939x143x4 1f9yztp <ip_address> /rest/plugins/1.0/available/featured [extender.internal.activator.ContextLoaderListener] Application context refresh failed (NonValidatingOsgiBundleXmlApplicationContext(bundle=com.atlassian.jira.plugin.ext.subversion.atlassian-jira-subversion-plugin, config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'subversionManager' defined in URL [bundle://136.0:0/META-INF/spring/subversion-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: javax/security/auth/login/LoginException
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:254)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
	at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:69)
	at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:355)
	at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
	at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)
	at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:724)
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: javax/security/auth/login/LoginException
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:115)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:248)
	... 21 more
Caused by: java.lang.NoClassDefFoundError: javax/security/auth/login/LoginException
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:519)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:286)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:274)
	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:696)
	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:619)
	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:103)
	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1016)
	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:99)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.activate(SubversionManagerImpl.java:252)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.setup(SubversionManagerImpl.java:85)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.<init>(SubversionManagerImpl.java:56)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.createManagerFromPropertySet(MultipleSubversionRepositoryManagerImpl.java:123)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.loadManagersFromJiraProperties(MultipleSubversionRepositoryManagerImpl.java:109)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.loadSvnManagers(MultipleSubversionRepositoryManagerImpl.java:81)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.<init>(MultipleSubversionRepositoryManagerImpl.java:66)  <+3> (NativeConstructorAccessorImpl.java:57) (DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
	... 23 more
Caused by: java.lang.ClassNotFoundException: javax.security.auth.login.LoginException
	at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772)
	at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73)
	at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 44 more
2016-01-29 15:40:40,191 ThreadPoolAsyncTaskExecutor::Thread 28 ERROR badmin 905x137x1 1l340a9 192.168.5.3 /rest/plugins/1.0/installed-marketplace [c.a.p.osgi.factory.OsgiPlugin] Unable to start the plugin container for plugin 'com.atlassian.jira.plugin.ext.subversion'
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'subversionManager' defined in URL [bundle://187.0:0/META-INF/spring/subversion-context.xml]: Invocation of init method failed; nested exception is com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
...
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
...
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
	... 16 more
Caused by: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPAuthentication.parseAuthParameters(HTTPAuthentication.java:229)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:653)
...
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
	... 29 more
Caused by: java.lang.ClassNotFoundException: org.ietf.jgss.GSSException not found by com.atlassian.jira.plugin.ext.subversion.atlassian-jira-subversion-plugin [187]
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 52 more
2016-01-29 15:40:40,191 ThreadPoolAsyncTaskExecutor::Thread 28 ERROR badmin 905x137x1 1l340a9 192.168.5.3 /rest/plugins/1.0/installed-marketplace [c.a.p.osgi.factory.OsgiPlugin] Unable to start the plugin container for plugin 'com.atlassian.jira.plugin.ext.subversion'
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'subversionManager' defined in URL [bundle://187.0:0/META-INF/spring/subversion-context.xml]: Invocation of init method failed; nested exception is com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
...
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
...
	... 16 more
Caused by: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPAuthentication.parseAuthParameters(HTTPAuthentication.java:229)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:653)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:398)
	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:386)
	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:863)
	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:118)
	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1049)
	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:100)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.activate(SubversionManagerImpl.java:243)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.setup(SubversionManagerImpl.java:81)
	at com.atlassian.jira.plugin.ext.subversion.SubversionManagerImpl.<init>(SubversionManagerImpl.java:52)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.createManagerFromPropertySet(MultipleSubversionRepositoryManagerImpl.java:177)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.loadManagersFromJiraProperties(MultipleSubversionRepositoryManagerImpl.java:164)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.access$100(MultipleSubversionRepositoryManagerImpl.java:44)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl$SvnManagerCacheSupplier.get(MultipleSubversionRepositoryManagerImpl.java:139)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl$SvnManagerCacheSupplier.get(MultipleSubversionRepositoryManagerImpl.java:136)
	at com.atlassian.cache.memory.MemoryCacheManager$1$1.load(MemoryCacheManager.java:67)
	at com.atlassian.cache.memory.MemoryCacheManager$1$1.load(MemoryCacheManager.java:63)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
	... 29 more
Caused by: java.lang.ClassNotFoundException: org.ietf.jgss.GSSException not found by com.atlassian.jira.plugin.ext.subversion.atlassian-jira-subversion-plugin [187]
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 52 more
2016-01-29 15:40:40,191 ThreadPoolAsyncTaskExecutor::Thread 28 ERROR badmin 905x137x1 1l340a9 192.168.5.3 /rest/plugins/1.0/installed-marketplace [o.e.g.b.e.internal.support.ExtenderConfiguration] Application context refresh failed (NonValidatingOsgiBundleXmlApplicationContext(bundle=com.atlassian.jira.plugin.ext.subversion.atlassian-jira-subversion-plugin, config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'subversionManager' defined in URL [bundle://187.0:0/META-INF/spring/subversion-context.xml]: Invocation of init method failed; nested exception is com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:755)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
	at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:60)
	at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:325)
	at org.eclipse.gemini.blueprint.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
	at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:290)
	at org.eclipse.gemini.blueprint.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:137)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)
	at com.atlassian.cache.memory.DelegatingCachedReference.get(DelegatingCachedReference.java:58)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.getRepositoryList(MultipleSubversionRepositoryManagerImpl.java:245)
	at com.atlassian.jira.plugin.ext.subversion.revisions.RevisionIndexer.initializeLatestIndexedRevisionCache(RevisionIndexer.java:140)
	at com.atlassian.jira.plugin.ext.subversion.revisions.RevisionIndexer.<init>(RevisionIndexer.java:103)
	at com.atlassian.jira.plugin.ext.subversion.revisions.RevisionIndexer.<init>(RevisionIndexer.java:91)
	at com.atlassian.jira.plugin.ext.subversion.MultipleSubversionRepositoryManagerImpl.afterPropertiesSet(MultipleSubversionRepositoryManagerImpl.java:114)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1633)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
	... 16 more

Cause

This is caused by the SVNkit components attempting to configure negotiated authentication prior to trying to configure basic authentication. As this is not a valid condition, the SVN plugin fails.

Workaround

To work around this issue, either remove the SVN plugin or disable LDAP authentication.

 

Resolution

Append the following option to the JAVA_OPTS:

-Dsvnkit.http.methods=Basic

See Setting Properties and Options on Startup for details on how to configure startup options.

Last modified on Mar 30, 2016

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.