Hi Oscar, How do you know that I use Spring Boot at the moment ? Do you have access to my laptop ?! :-) OK, I guess you have seen some retweets by me! :-)
Spring Boot provides the autoconfiguration of your application based on the jars available in the classpath, your config settings (application[-profile].yaml) and custom @Configuration's and @Component's. The real work would be done by Spring Data, I imagine. But my experience with Spring Data is that the domain object is anemic and the logic is in the repository class (generated, most of the time). The contrary of what Isis promotes. Spring Data REST could replace the Restful viewer. Obviously Spring could replace Guice for dependency injection. Latest version of Hibernate-Search provides good integration with Elasticsearch. I remember this being discussed few times here. Spring Boot also provides nice monitoring endpoints, the Actuators. One can use them for health checks, metrics, runtime reconfiguration, ... There are many goodies! Instead of Play I'd explore Spring MVC Reactive (still in development for Spring 5, so you need to use Spring Boot 2.0 milestones) Let me know if you have more specific question! Cheers! Martin On Wed, Feb 1, 2017 at 12:31 PM, Óscar Bou <[email protected]> wrote: > > Yes ..!!! xD xD xD > > Just planning to explore Boot and Play, and missing my beloved Domain > metamodel !!! > > If you want to guide me I’ll be more than delighted ;) > > > Martin seems to be actively working with Boot currently also. > > @Martin > Any comments about what could we used this with Boot? > > > Thanks! > > > > El 1 feb 2017, a las 10:47, Dan Haywood <[email protected]> > escribió: > > When you say "let's", are you volunteering? :-) I'd like to see the > output of this. > > I've just committed to do a mini-book for InfoQ over the next few months; > I could see that this would make a nice topic to include? > > D > > On Wed, 1 Feb 2017 at 09:30 Óscar Bou - GOVERTIS <[email protected]> > wrote: > >> Hi Dan, >> >> Thanks for pointing me there. >> >> It would be really nice to have all metamodel info. available on Spring >> Boot, for example. >> >> The Services Injector, in your taxonomy, should correspond to the >> runtime, so it should be a responsibility of Spring Boot. >> If Isis need it for its own runtime, a Spring-based implementation would >> be needed. >> >> But I was just trying to know if it would be possible to have a Domain >> Metamodel, and seems feasible. >> >> Let’s explore it. >> >> Thanks! >> >> >> >> El 1 feb 2017, a las 1:04, Dan Haywood <[email protected]> >> escribió: >> >> Hi Oscar, >> >> One can think of the framework as breaking into two: >> - the metamodel ... Isis' reflection stuff, cf java.lang.Class >> - the runtime ... Isis' object mgmt stuff, leaning heavily on >> JDO/DataNucleus, cf java.lang.Object. >> >> The metamodel piece is relatively decoupled from the runtime piece, so it >> should be fairly easy to embed it. >> >> In IsisMojoAbstract - the superclass for the maven plugin goals - you'll >> see the code: >> >> final AppManifest manifest = >> InstanceUtil.createInstance(this.appManifest, AppManifest.class); >> >> final IsisSessionFactoryBuilder isisSessionFactoryBuilder = new >> IsisSessionFactoryBuilder(manifest); >> IsisSessionFactory isisSessionFactory = >> isisSessionFactoryBuilder.buildSessionFactory(); >> >> from which you can call: >> >> final SpecificationLoader specificationLoader = >> isisSessionFactory.getSpecificationLoader(); >> final ServicesInjector servicesInjector = >> isisSessionFactory.getServicesInjector(); >> >> The SpecificationLoader is the internal (private) API to the entire >> metamodel. >> >> The ServicesInjector can be used to inject services into any arbitrary >> object (annotated with @javax.inject.Inject). One caveat: some services >> are implemented by the runtime, which probably won't be available. >> >> These are all basically singletons. >> >> Probably the easiest thing to do is to write a simple servlet or Spring >> boot app, then embed the above code somewhere in the bootstrapping, and >> see >> how you get on. >> >> HTH >> Dan >> >> >> >> On Thu, 19 Jan 2017 at 11:45 Óscar Bou - GOVERTIS <[email protected]> >> wrote: >> >> >> Hi all. >> >> I’m sure the Isis Domain meta-model can add a lot of value to Domains >> developed in another frameworks. >> >> It’s different from reflection in the way it allows you to determine, for >> example: >> - which public methods are effectively domain actions. >> - which Java properties should be considered “Domain” properties. >> - which actions or properties are available depending on the business >> logic. >> - etc. >> >> And all that with the ability to properly test it. >> >> Over that, we’ve built the Wicket viewer, the RESTful Objects viewer, the >> JDO-based persistence, the custom injection mechanism, … >> >> But I’m pretty sure it could be really useful when using other >> platforms/frameworks. >> >> Do you agree? >> >> How should we quantify the tasks and effort? >> >> >> Cheers, >> >> Oscar >> >> >> >> >> >> >> >> >> Óscar Bou Bou >> Socio - IT & GRC Management Services Director >> m: +34 620 267 520 <+34%20620%2026%2075%2020> >> s: <http://www.govertis.com/>www.govertis.com e: [email protected] >> >> LinkedIn: https://www.linkedin.com/in/oscarbou >> Twitter: @oscarbou <https://twitter.com/oscarbou> >> >> >> >> Este mensaje y los ficheros anexos son confidenciales. Los mismos >> contienen información reservada que no puede ser difundida. Si usted ha >> recibido este correo por error, tenga la amabilidad de eliminarlo de su >> sistema y avisar al remitente mediante reenvío a su dirección electrónica; >> no deberá copiar el mensaje ni divulgar su contenido a ninguna persona. >> >> Su dirección de correo electrónico junto a sus datos personales constan >> en un fichero titularidad de GOVERTIS ADVISORY SERVICES, S.L. cuya >> finalidad es la de mantener el contacto con Ud. Si quiere saber de qué >> información disponemos de Ud., modificarla, y en su caso, cancelarla, puede >> hacerlo enviando un escrito al efecto, acompañado de una fotocopia de su >> D.N.I. a la siguiente dirección: GOVERTIS ADVISORY SERVICES, S.L. Avda >> Cortes Valencianas, 58 – 8º - 6ª. 46015 - Valencia, y Paseo de la >> Castellana, 153, 28045 - MADRID. Asimismo, es su responsabilidad comprobar >> que este mensaje o sus archivos adjuntos no contengan virus informáticos, y >> en caso que los tuvieran eliminarlos. >> >> >
