Hi John,

Since this is not really an Isis question: did you try asking on the Shiro
mailing list [1]?

Kind regards,

Jeroen

[1] http://shiro.apache.org/mailing-lists.html

On Mon, Oct 20, 2014 at 2:55 PM, Waypoint D <[email protected]>
wrote:

> On Mon, Oct 20, 2014 at 2:22 AM, Dan Haywood
> <[email protected]> wrote:
> >
> > On 20 October 2014 05:22, Waypoint D <[email protected]
> > <javascript:_e(%7B%7D,'cvml','[email protected]');>> wrote:
> >
> > > Greetings,
> > >
> > >
> > Hi John,
> > welcome to the Isis mailing list.
>
> Thank you.
>
> >
> > >        I am trying to build a webapp which uses apache shiro and google
> > > guice.   I have been following a [1] tutorial, but cannot seem to get
> code
> > > to compile with the realm I need to use.  In particular, I am not sure
> what
> > > to supply for the following sections of code (which has been edited for
> > > readability)...
> > >
> > >
> > I presume you're building an Isis webapp, in which case the bootstrapping
> > is taken care of for you.  Isis already integrates with Shiro, and the
> > WEB-INF/shiro.ini file is the one that is read from.  There should be no
> > need to build your own Guice module.
>
> I am building a general webapp which only uses the ldap classes from
> the shiro-security module within apache isis. So I am literally only
> compiling against 3 java files within the entire apache isis project.
>
> I use IsisLdapRealm for its functionality to map ldap groups to shiro
> roles (which JndiLdapRealm does not do).
>
> However, I must use Guice within my project for dependency reasons;
> otherwise yes, you are correct, when I follow the example webapp which
> does not use guice, the shiro.ini file is loaded with all of my
> configuration settings.
>
> I went from a web.xml file containing
>
> <listener-class>org.apache.shiro.web.env.EnvironmentLoaderListener</listener-class>
>     <filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
> to one that looked like this
>     <listener-class>bigbank.guice.BootstrapListener</listener-class>
>    <filter-class>com.google.inject.servlet.GuiceFilter</filter-class>
> and now i have lost whatever EnvironmentLoaderListener was doing to
> automagically load shiro.ini.  I am left to either load the shiro.ini
> file inside of configureShiroWeb() or set the configuration options at
> runtime, but i am not sure how to accomplish either.
>
> John
>
> > You might want to check out the new isis-module-security [1] add-on [2],
> > which provides an out-of-the-box realm for pluggable authentication and
> > also authorization.
>
> Thank you, although these modules appear to only support isis webapps,
> which my project does not leverage.
>
> > If the above doesn't fit, let us know a bit more what you're wanting to
> > do...
> >
> > Cheers
> > Dan
> >
> > [1] https://github.com/isisaddons/isis-module-security
> > [2] http://www.isisaddons.org/
> >
> >
> >
> > > *file:BigBankShiroWebModule.java*
> > >     public class BigBankShiroWebModule extends ShiroWebModule {
> > >         protected void configureShiroWeb() {
> > >             bindRealm().toConstructor( IniRealm.class.getConstructor(
> > > Ini.class ) );
> > >         }
> > >         Ini loadShiroIni() {
> > >             return Ini.fromResourcePath( "classpath:shiro.ini" );
> > >         }
> > >
> > > I have tried to replace *IniRealm *with *IsisLdapRealm *or
> > > *JndiLdapRealm *which
> > > seems to work to a degree, but they wont load my *shiro.ini* file since
> > > those realms don't implement the *Ini *class.  Since the realm I need
> to
> > > use does not support ini files, how can I configure the realm?
> > >
> > > Help is appreciated more than you know!
> > > - John
> > >
> > >
> > > *Web link appendix*   [1] Add an example for using Guice integration.
> > >    https://issues.apache.org/jira/browse/SHIRO-320
> > >
>

Reply via email to