CAS 6.4

375 views
Skip to first unread message

Jeffrey Ramsay

unread,
Dec 11, 2021, 10:54:17 AM12/11/21
to CAS Community
Hello -

I need some help to resolve the following in a new build. The problem is only occurring when I try to add support for the "implementation "org.apereo.cas:cas-server-support-radius-mfa"" module. What do I need to do to add the missing library?

Execution failed for task ':bootWarMainClassName'.
> Could not resolve all files for configuration ':runtimeClasspath'.
   > Could not find gnu-getopt:getopt:1.0.13.
     Required by:
         project : >  org.apereo.cas:cas-server-support-radius-core:6.4.4 > net.jradius:jradius-apps:1.1.5

---------------

My current setup ...

build.gradle:
-----------------
dependencies {
    /**
     * CAS dependencies and modules may be listed here.
     *
     * There is no need to specify the version number for each dependency
     * since versions are all resolved and controlled by the dependency management
     * plugin via the CAS bom.
     **/

    implementation "org.apereo.cas:cas-server-core-api-configuration-model"
    implementation "org.apereo.cas:cas-server-webapp-init"

    implementation "org.apereo.cas:cas-server-support-jdbc"
    implementation "org.apereo.cas:cas-server-support-jdbc-drivers"
    implementation "org.apereo.cas:cas-server-support-ldap"
    implementation "org.apereo.cas:cas-server-support-saml"
    implementation "org.apereo.cas:cas-server-support-saml-idp"
    implementation "org.apereo.cas:cas-server-support-jpa-service-registry"
    implementation "org.apereo.cas:cas-server-support-memcached-ticket-registry"
    implementation "org.apereo.cas:cas-server-support-memcached-spy"
    implementation "org.apereo.cas:cas-server-support-generic"
    implementation "org.apereo.cas:cas-server-support-actions"
    implementation "org.apereo.cas:cas-server-core-api-authentication"
    implementation "org.apereo.cas:cas-server-core-authentication-api"
    implementation "org.apereo.cas:cas-server-core-authentication"
    implementation "org.apereo.cas:cas-server-core-authentication-attributes"
    implementation "org.apereo.cas:cas-server-core-services-authentication"
    implementation "org.apereo.cas:cas-server-core-configuration"
    implementation "org.apereo.cas:cas-server-core-configuration-api"
    implementation "org.apereo.cas:cas-server-support-jdbc-authentication"
    implementation "org.apereo.cas:cas-server-core-util-api"
    implementation "org.apereo.cas:cas-server-support-radius"
    implementation "org.apereo.cas:cas-server-support-radius-core"
    implementation "org.apereo.cas:cas-server-support-radius-mfa"
    implementation "org.apereo.cas:cas-server-support-oidc"

    if (project.hasProperty("casModules")) {
        def dependencies = project.getProperty("casModules").split(",")
        dependencies.each {
            def projectsToAdd = rootProject.subprojects.findAll {project ->
                project.name == "cas-server-core-${it}" || project.name == "cas-server-support-${it}"
            }
            projectsToAdd.each {implementation it}
        }
    }

--------------------------

$ ./gradlew clean build
To honour the JVM settings for this build a single-use Daemon process will be forked. See https://docs.gradle.org/7.3.1/userguide/gradle_daemon.html#sec:disabling_the_daemon.
Daemon will be stopped at the end of the build
> Task :bootWarMainClassName FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':bootWarMainClassName'.
> Could not resolve all files for configuration ':runtimeClasspath'.
   > Could not find gnu-getopt:getopt:1.0.13.
     Required by:
         project : > org.apereo.cas:cas-server-support-radius-core:6.4.4 > net.jradius:jradius-apps:1.1.5

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.3.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 18s
8 actionable tasks: 8 executed

Thanks,
-Jeff

Jeffrey Ramsay

unread,
Dec 11, 2021, 11:31:09 AM12/11/21
to CAS Community
I added some additional repositories and that solved the problem.

        maven {
            url "https://maven.repository.redhat.com/ga/"
        }
        maven {
            url "https://repo1.maven.org/maven2/"
        }

-Jeff

Jeffrey Ramsay

unread,
Dec 12, 2021, 9:17:43 AM12/12/21
to CAS Community
Can anyone help me resolve this?

2021-12-12 09:11:49,787 ERROR [org.springframework.boot.web.servlet.support.ErrorPageFilter] - <Forwarding to error page from request [/login] due to exception [org/bouncycastle/asn1/DERObjectIdentifier]>
java.lang.NoClassDefFoundError: org/bouncycastle/asn1/DERObjectIdentifier
        at java.lang.Class.forName0(Native Method) ~[?:?]
        at java.lang.Class.forName(Class.java:315) ~[?:?]
        at net.jradius.client.RadiusClient.registerAuthenticator(RadiusClient.java:189) ~[jradius-core-1.1.5.jar:?]
        at net.jradius.client.RadiusClient.<clinit>(RadiusClient.java:82) ~[jradius-core-1.1.5.jar:?]
        at org.apereo.cas.adaptors.radius.RadiusClientFactory.newInstance(RadiusClientFactory.java:69) ~[cas-server-support-radius-core-6.4.4.jar:6.4.4]
        at org.apereo.cas.adaptors.radius.server.AbstractRadiusServer.authenticate(AbstractRadiusServer.java:111) ~[cas-server-support-radius-core-6.4.4.jar:6.4.4]
        at org.apereo.cas.adaptors.radius.RadiusServer.authenticate(RadiusServer.java:39) ~[cas-server-support-radius-core-6.4.4.jar:6.4.4]
        at org.apereo.cas.adaptors.radius.authentication.RadiusMultifactorAuthenticationProvider.canPing(RadiusMultifactorAuthenticationProvider.java:59) ~[cas-server-support-radius-core-mfa-6.4.4.jar:6.4.4]
        at org.apereo.cas.adaptors.radius.authentication.RadiusMultifactorAuthenticationProvider.isAvailable(RadiusMultifactorAuthenticationProvider.java:40) ~[cas-server-support-radius-core-mfa-6.4.4.jar:6.4.4]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282) ~[spring-core-5.3.9.jar:5.3.9]
        at org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:485) ~[spring-cloud-context-3.0.3.jar:3.0.3]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.9.jar:5.3.9]
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215) ~[spring-aop-5.3.9.jar:5.3.9]
        at com.sun.proxy.$Proxy357.isAvailable(Unknown Source) ~[?:?]
        at org.apereo.cas.web.flow.actions.MultifactorAuthenticationAvailableAction.doExecute(MultifactorAuthenticationAvailableAction.java:21) ~[cas-server-core-webflow-mfa-api-6.4.4.jar:6.4.4]
        at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188) ~[spring-webflow-2.5.1.RELEASE.jar:2.5.1.RELEASE]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]

Thanks,
-Jeff

Ray Bon

unread,
Dec 13, 2021, 12:20:11 PM12/13/21
to cas-...@apereo.org
Jeffrey,

This looks like a library conflict. You can exclude the older library.  See https://docs.gradle.org/current/userguide/dependency_downgrade_and_exclude.html

To find the library details

./gradlew dependencies

Ray

On Sun, 2021-12-12 at 09:17 -0500, Jeffrey Ramsay wrote:
Notice: This message was sent from outside the University of Victoria email system. Please be cautious with links and sensitive information.
-- 
Ray Bon
Programmer Analyst
Development Services, University Systems

I acknowledge and respect the lək̓ʷəŋən peoples on whose traditional territory the university stands, and the Songhees, Esquimalt and WSÁNEĆ peoples whose historical relationships with the land continue to this day.

Jeffrey Ramsay

unread,
Dec 13, 2021, 4:44:12 PM12/13/21
to CAS Community
Ray,

Thanks for following up on this. I was able to resolve this issue and posted an update. The two issues I encountered were 1) an additional repository was required to find the libraries used for radius and 2) the newer bcprov library used in 6.4 is missing a key component. CAS builds correctly but you cannot use it unless you resolve this: the library bcprov-jdk15on-1.69.jar used in this build is missing the DERObjectIdentifier class. I downgraded to "bcprov-jdk15on-1.66.jar" which resolved the issue.

Thanks again,
-Jeff


 

--
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
---
You received this message because you are subscribed to the Google Groups "CAS Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cas-user+u...@apereo.org.
To view this discussion on the web visit https://groups.google.com/a/apereo.org/d/msgid/cas-user/38dedbe44f2140fadda7c29e72c67fcf141b3038.camel%40uvic.ca.
Reply all
Reply to author
Forward
0 new messages