isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Cameron <steve.cameron...@gmail.com>
Subject Re: security module questions
Date Sun, 27 Sep 2015 08:09:27 GMT
re " I have the home page as it appears in the security demo"

sorry, that is not so, its the right 'welcome' page.  So must be just
permissions.

On Sun, Sep 27, 2015 at 5:13 PM, Dan Haywood <dan@haywood-associates.co.uk>
wrote:

> Not sure.
>
> What I can tell you is that the home page is simply the result of the
> framework invoking a domain service annotated with @HomePage (or to be more
> precise, one that has a HomePageFacet). If one cannot be found in all of
> the services, then the index.html page (somewhere in the webapp module and
> as specified in your app's subclass of IsisWebApplication) will be
> rendered. If more than one such service can be found, then the app will
> fail to boot with a metamodel validation error.
>
> My guess is that the domain service you have with an @HomePage annotation
> isn't within the last of packages derived from the module package names. As
> a quick check, you could add the service class itself to the list returned
> from getModules() and see what happens.
>
> With respect to the marker classes you've added for security module, there
> is a class called simply SecurityModule that you could use.
>
> HTH
>
> Dan
> On 27 Sep 2015 07:42, "Stephen Cameron" <steve.cameron.62@gmail.com>
> wrote:
>
> > I see the following on the home page always, even when a new user logs in
> > other than isis-module-security-admin:
> >
> > Apache Isis <http://isis.apache.org>™ is a platform to let you rapidly
> > develop domain-driven apps in Java.
> >
> > This app has been generated using Apache Isis' SimpleApp
> > <http://isis.apache.org/intro/getting-started/simple%61pp-archetype.html
> >
> > archetype, to create a purposefully minimal application that nevertheless
> > includes fixture data, integration tests and BDD specs.
> >
> > The app itself consists of a single domain class, SimpleObject
> > <
> >
> https://github.com/apache/isis/blob/master/example/application/simple%61pp/dom/src/main/java/dom/simple/SimpleObject.java
> > >,
> > along with an equally simple (factory/repository) domain service,
> > SimpleObjects
> > <
> >
> https://github.com/apache/isis/blob/master/example/application/simple%61pp/dom/src/main/java/dom/simple/SimpleObjects.java
> > >.
> >
> >
> > For more details, see the Apache Isis website
> > <http://isis.apache.org/documentation.html>.
> >
> > On Sun, Sep 27, 2015 at 3:40 PM, Stephen Cameron <
> > steve.cameron.62@gmail.com
> > > wrote:
> >
> > > Hi,
> > >
> > > I am making use of the Apache Isis security module addon. I've
> configured
> > > it using the new App Manifest means, but have one issue, which is how
> is
> > > the home page being created now?
> > >
> > > I have the home page as it appears in the security demo, rather than
> the
> > > one that I created in my app.  Its not clear to me why Isis is picking
> up
> > > the alernative SecurityModuleApplication rather than my customised
> > > HomePageViewModel.
> > >
> > > To make it work with the AppManifest, I have the following:
> > >
> > > package domainapp.app;
> > >
> > > import java.util.Arrays;
> > > import java.util.Collections;
> > > import java.util.List;
> > > import java.util.Map;
> > >
> > > import org.apache.isis.applib.AppManifest;
> > > import org.apache.isis.applib.fixturescripts.FixtureScript;
> > > import org.isisaddons.module.security.dom.DomainAppSecurityDomModule;
> > > import org.isisaddons.module.security.seed.DomainAppSecuritySeedModule;
> > >
> > > import au.com.scds.chats.dom.DomainAppDomainModule;
> > >
> > > import domainapp.fixture.DomainAppFixtureModule;
> > >
> > > /**
> > >  * Bootstrap the application.
> > >  */
> > > public class DomainAppAppManifest implements AppManifest {
> > >
> > >     /**
> > >      * Load all services and entities found in (the packages and
> > > subpackages within) these modules
> > >      */
> > >     @Override
> > >     public List<Class<?>> getModules() {
> > >         return Arrays.asList(
> > >                 DomainAppDomainModule.class,  // domain (entities and
> > > repositories)
> > >                 DomainAppFixtureModule.class, // fixtures
> > >                 DomainAppAppModule.class,      // home page service etc
> > >                 DomainAppSecurityDomModule.class,  //security
> > >                 DomainAppSecuritySeedModule.class, //seed the security
> > > admin user
> > >
> > > org.isisaddons.wicket.gmap3.cpt.service.Gmap3ServiceModule.class
> //Google
> > > Gmap Geocoding Service
> > >         );
> > >     }
> > >
> > >     /**
> > >      * No additional services.
> > >      */
> > >     @Override
> > >     public List<Class<?>> getAdditionalServices() {
> > >         //return Collections.emptyList();
> > >         return Arrays.asList(
> > >
> > >
> >
> org.isisaddons.module.security.dom.password.PasswordEncryptionServiceUsingJBcrypt.class,
> > >
> > >
> >
> org.isisaddons.module.security.dom.permission.PermissionsEvaluationServiceAllowBeatsVeto.class
> > >         );
> > >     }
> > >
> > >
> > > I've added these two 'marker' classes to my app so the security domain
> > > service classes will be discovered:
> > >
> > > org.isisaddons.module.security.dom.DomainAppSecurityDomModule.class
> > > org.isisaddons.module.security.seed.DomainAppSecuritySeedModule.class
> > >
> > >
> > > Steve C.
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message