guacamole-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Jumper <mike.jum...@guac-dev.org>
Subject Re: auth. extension class loading error
Date Fri, 29 Jul 2016 17:24:25 GMT
On Thu, Jul 28, 2016 at 12:32 PM, Oliver Jones <olliejones@glance.net> wrote:
> Hi, I'm trying to implement an authorization extension to Guacamole.
>
> I'm trying to do this by creating a class that implements this interface in
> guacamole-ext:  org/apache/guacamole/net/auth/AuthenticationProvider.
>
> But when I put my .jar file in the extensions directory and bounce Tomcat,
> guacamole doesn't load properly and I get this class loader error in
> localhost.YYYY-MM-DD.log:
>
> SEVERE: Exception sending context initialized event to listener instance of
> class org.glyptodon.guacamole.net.basic.BasicServletContextListener
> java.lang.NoClassDefFoundError:
> org/apache/guacamole/net/auth/AuthenticationProvider
>

The issue here is that the version of the web application is from
prior to the move to the Apache Incubator, thus it doesn't know about
the org.apache.guacamole classes. The AuthenticationProvider class is
provided by guacamole-ext, which extensions expect to be provided by
the web application (and thus do not bundle the .jar internally).

You'll need to build a guacamole.war from the latest git to obtain a
Guacamole which can load an extension that uses the
org.apache.guacamole classes.

> This happens even before I mention the extension in the properties file.
>

Mention it how?

If you're referring to your extensions own properties, then no worries.

Just in case you're referring to the deprecated "auth-provider"
property, however: please don't use that. That property will either do
nothing (it doesn't exist in recent git [1]) or will result in a loud
warning in the logs and some of the extension subsystem being disabled
for compatibility with older releases which did use that property
(0.9.7, 0.9.8, and 0.9.9 will honor the property but log warnings
about its use [2]).

Thanks,

- Mike

[1] https://github.com/apache/incubator-guacamole-client/commit/c7a5f0bcd611f6acac003f18a2022a185a34a5ee
[2] https://github.com/glyptodon/guacamole-client/blob/162f4db386c3a612e8a1189e92b7f789d51945d8/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/extension/ExtensionModule.java#L145-L179

Mime
View raw message