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: Integration of Apache Isis and Ignite
Date Fri, 10 Nov 2017 06:50:01 GMT
ok, glad that my little investigations were useful.  I'll close that
ISIS-1760 ticket as "not a problem".
cheers
Dan

On Fri, 10 Nov 2017 at 06:15 Nikhil Dhamapurkar <
nikhil.dhamapurkar@healthengine.com.au> wrote:

> Thank you Dan ! I really appreciate you taking time out for this.
>
> While learning Ignite I was also trying to just use it as a persistent DB
> replacement which would be cleaned after it restarts and might have left
> the  JDBC config there instead of postgres.
> I did add L2 cache but my changes look primitive compared what you have
> done.
>
> Thanks again, this example will be really helpful for me to get Ignite and
> Apache ISIS working. I’ll include the changes you have made in my final
> version.
>
> Regards
> Nikhil
>
> From: Dan Haywood
> Sent: 09 November 2017 14:03
> To: users@isis.apache.org
> Subject: Re: Integration of Apache Isis and Ignite
>
> Hi Nikhil,
>
> I finally got the chance to look into your example app, thanks again, and
> to learn a tiny bit about Apache Ignite.
>
> In your email you talk about using Ignite as an L2 cache, and I see that
> Ignite has an integration with Hibernate's L2 cache SPIs.
>
> However, in your example app you seem to be trying to attach to Ignite as a
> persistent datastore: from what I can see you've basically just changed the
> JDBC connection properties in isis.properties.
>
> If you wanted an L2 cache, then I think that would require instead
> implementing DataNucleus' similar L2 cache SPI, [1]
>
> FWIW, I did manage to adapt your example app to bootstrap an Ignite node in
> an Spring container.  Haven't tried updating the JDBC URLs to use it, but
> looks promising.    I've pushed to [2] so you can take a look.
>
> HTH
> Dan
>
> [1] http://www.datanucleus.org/products/accessplatform_4_1/jdo/cache.html
> [2] https://github.com/danhaywood/ISIS-1760-example-app
>
>
>
> On Wed, 25 Oct 2017 at 23:50 Dan Haywood <dan@haywood-associates.co.uk>
> wrote:
>
> > Hi Nikhil,
> >
> > I'm afraid I haven't had time to look into this, but I do appreciate you
> > taking the time to create a repo.
> >
> > I've raised a ticket [1] to track the requirement, if you have any
> further
> > info then please add to it.
> >
> > Thanks
> > Dan
> >
> > [1]  https://issues.apache.org/jira/browse/ISIS-1760
> >
> > On Wed, 27 Sep 2017 at 05:32 Nikhil Dhamapurkar <
> > nikhil.dhamapurkar@healthengine.com.au> wrote:
> >
> >> Hi Dan,
> >>
> >> Were you able to get some time to look at the integration Issue. I have
> >> uploaded a sample code [1] which throws the exception.
> >> I believe its when Ignite-core artefact is added in the pom then the
> >> exception start generating.
> >>
> >> If you have some pointers that I can try I’ll be happy to give them a
> try.
> >>
> >> [1] https://bitbucket.org/dhamapurkar/isisignitesample
> >>
> >> Regards
> >> Nikhil
> >>
> >> From: Nikhil Dhamapurkar
> >> Sent: 11 September 2017 16:04
> >> To: users@isis.apache.org
> >> Subject: RE: Integration of Apache Isis and Ignite
> >>
> >> Hi Dan,
> >>
> >> I have taken the Apache ISIS Simple Archetype and based on the Pet
> Clinic
> >> example which deals with one to many relationship created my Sample app.
> >>
> >> I have shared my application git repo below[1], if you can please find
> >> some time and give me some pointers it  will be very helpful.
> >>
> >> This sample works well with Postgres, but when I replace Ignite
> >> dependencies and L2 cache information I am not able to get it working.
> >>
> >> [1] https://bitbucket.org/dhamapurkar/isisignitesample
> >>
> >> Regards
> >> Nikhil
> >>
> >> From: Dan Haywood
> >> Sent: 11 September 2017 12:19
> >> To: users@isis.apache.org
> >> Subject: Re: Integration of Apache Isis and Ignite
> >>
> >> Hi Nikhil,
> >>
> >> You add dependencies to the webapp module in the usual way, to the
> >> <dependencies> tag.
> >>
> >> But the Jetty mavenmixin isn't mandatory, - it's just a way to remove
> some
> >> boilerplate. You can always just inline that mavenmixin pom's content
> into
> >> your webapp's and then tinker away.
> >>
> >> If you want to upload a sample app to github then that would help us get
> >> you going.
> >>
> >> Cheers,
> >> Dan
> >>
> >> On Sun, 10 Sep 2017, 19:16 Nikhil Dhamapurkar <
> >> nikhil.dhamapurkar@healthengine.com.au> wrote:
> >>
> >> > Hi Martin,
> >> >
> >> > I have been trying to make ignite and apache ISIS work but I have not
> >> been
> >> > able to.
> >> >
> >> > I agree, that the issue seems to be Ignite using java.util.logging, as
> >> you
> >> > suggested I searched Ignite on how to add slf4j for logging and as per
> >> the
> >> > Ignite doc all one needs to do is add the ignite-log4j artefact in the
> >> > classpath to enable log4j I have also added ignite-slf4j artefact in
> the
> >> > classpath but I still get the error.
> >> >
> >> > I have a feeling that even if I see the dependencies correctly present
> >> in
> >> > eclipse they are not getting added or available to war.
> >> >
> >> > Is there a way to pass additional jars in the classpath to jetty mixin
> >> in
> >> > Apache  ISIS ?
> >> >
> >> >
> >> > Regards
> >> > Nikhil
> >> >
> >> > From: Martin Grigorov
> >> > Sent: 06 September 2017 18:57
> >> > To: users
> >> > Subject: Re: Integration of Apache Isis and Ignite
> >> >
> >> > Hi,
> >> >
> >> >
> >> > On Wed, Sep 6, 2017 at 4:13 PM, Nikhil Dhamapurkar <
> >> > nikhil.dhamapurkar@healthengine.com.au> wrote:
> >> >
> >> > > Hi ,
> >> > >
> >> > > I am trying to integrate  apache Ignite as the L2 Cache for apache
> >> isis.
> >> > I
> >> > > have added Apache ignite JDBC connection to the persistor.properties
> >> in
> >> > > isis.
> >> > >
> >> > > When I am trying to compile my webapp I am getting ignite logger
> >> > > exception, along with exception that says validate datasource
> >> connection
> >> > > details of ignite and username and password which I have given in
> >> > > persistor.properties
> >> > >
> >> > > Can ISIS be integrated with Ignite as the L2 Cache with a persistent
> >> > > database under Ignite, I can not able to find much documentation
> which
> >> > > talks about ignite configuration with isis ?
> >> > >
> >> >
> >> > Better search for Ignite + Datanucleus.
> >> >
> >> >
> >> > >
> >> > > While compiling the simple module to work with Ignite I get logger
> >> error
> >> > > form Ignite I am not sure if I should consult Ignite or Isis
> experts.
> >> I
> >> > am
> >> > > getting the stack trace in [1] I have gone through forum for ignite
> >> and
> >> > > added ignite-log4j and ignite-core still I get ClassNotFound somehow
> >> the
> >> > > webapp is not able to find the jar in runtime.
> >> > >
> >> > > While the later exception is [2]
> >> > >
> >> > > The properties that I have listed in persistor.properties file are
> >> > >
> >> > >
> >> >
> >>
> isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=org.
> >> > > apache.ignite.IgniteJdbcThinDriver
> >> > > isis.persistor.datanucleus.impl.javax.jdo.option.
> >> > > ConnectionURL=jdbc:ignite:thin://localhost:10800
> >> > > isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=
> >> > > isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
> >> > >
> >> > >
> >> > > [ 1]
> >> > > 5:53:35,153  [PersistenceSessionFactory main       INFO ]  did *not*
> >> find
> >> > > config properties to use JNDI datasource; will use JDBC
> >> > > Can't load log handler "org.apache.ignite.logger.
> >> > > java.JavaLoggerFileHandler"
> >> > > java.lang.ClassNotFoundException: org.apache.ignite.logger.java.
> >> > > JavaLoggerFileHandler
> >> > > java.lang.ClassNotFoundException: org.apache.ignite.logger.java.
> >> > > JavaLoggerFileHandler
> >> > >
> >> >
> >> > This class is in ignite-core. And I have the feeling it uses
> >> > java.util.logging.
> >> > Better check how to tell Ignite to log via SLF4J.
> >> >
> >> >
> >> > >         at
> java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> >> > >         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> >> > >         at
> >> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
> >> > >         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> >> > >         at java.util.logging.LogManager$5.run(LogManager.java:965)
> >> > >         at java.security.AccessController.doPrivileged(Native
> Method)
> >> > >         at
> java.util.logging.LogManager.loadLoggerHandlers(LogManager.
> >> > > java:958)
> >> > >         at java.util.logging.LogManager.initializeGlobalHandlers(
> >> > > LogManager.java:1578)
> >> > >         at
> >> java.util.logging.LogManager.access$1500(LogManager.java:145)
> >> > >         at
> >> java.util.logging.LogManager$RootLogger.accessCheckedHandlers(
> >> > > LogManager.java:1667)
> >> > >         at java.util.logging.Logger.getHandlers(Logger.java:1777)
> >> > >         at org.apache.ignite.logger.java.JavaLogger.findHandler(
> >> > > JavaLogger.java:399)
> >> > >         at org.apache.ignite.logger.java.JavaLogger.configure(
> >> > > JavaLogger.java:229)
> >> > >         at
> org.apache.ignite.logger.java.JavaLogger.<init>(JavaLogger.
> >> > > java:170)
> >> > >         at
> org.apache.ignite.logger.java.JavaLogger.<init>(JavaLogger.
> >> > > java:126)
> >> > >         at org.apache.ignite.IgniteJdbcDriver.<clinit>(
> >> > > IgniteJdbcDriver.java:369)
> >> > >         at
> >> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> >> > > Method)
> >> > >         at sun.reflect.NativeConstructorAccessorImpl.newInstance(
> >> > > NativeConstructorAccessorImpl.java:62)
> >> > >         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
> >> > > DelegatingConstructorAccessorImpl.java:45)
> >> > >         at
> >> > java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> >> > >         at java.lang.Class.newInstance(Class.java:442)
> >> > >
> >> > > [2]
> >> > > Error in custom provider, javax.jdo.JDOFatalUserException: Failed
> >> > > initialising database. Please check that your database JDBC driver
> is
> >> > > accessible, and the database URL a
> >> > > nd username/password are correct. Exception : null
> >> > > java.lang.NullPointerException
> >> > >         at org.datanucleus.store.rdbms.ConnectionFactoryImpl$
> >> > > ManagedConnectionImpl.release(ConnectionFactoryImpl.java:320)
> >> > >         at org.datanucleus.store.rdbms.RDBMSStoreManager.<init>(
> >> > > RDBMSStoreManager.java:398)
> >> > >         at sun.reflect.NativeConstructorAccessorImpl.newInstanc
> >> > >
> >> > > Any pointers will be greatly appreciated.
> >> > >
> >> > > Regards
> >> > > Nikhil
> >> > >
> >> > >
> >> >
> >> >
> >>
> >>
> >>
>
>

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