isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dan Haywood <...@haywood-associates.co.uk>
Subject Re: security module questions
Date Sun, 27 Sep 2015 08:44:53 GMT
Good stuff.
Cheers, Dan
On 27 Sep 2015 09:38, "Stephen Cameron" <steve.cameron.62@gmail.com> wrote:

> sure enough, when I gave package access to domainapp.app.services.homepage
> to my general user - Voila!
>
> On Sun, Sep 27, 2015 at 6:09 PM, Stephen Cameron <
> steve.cameron.62@gmail.com
> > wrote:
>
> > 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