Hello,
I'm trying to see if our team can use Apache Isis for our project. Our
goal is to use it on our PostgreSQL database and run it on Jetty for
development purposes. I am in charge of investigating this framework.
I have encountered big problems with running the sampleapp from
isis-master repo. I use IntellJ IDEA 14.x with JDK 1.8.
I run it from the webapp directory with jetty:run command.
No matter if I use the HSQLDB or PostgreSQL I always receive this error:
javax.servlet.ServletException: com.google.inject.ProvisionException:
Guice provision errors:<|<|1) Error in custom provider,
org.datanucleus.exceptions.NucleusDataStoreException: An exception was
thrown while adding/validating class(es) : invalid schema name: SIMPLE
in statement [CREATE TABLE simple."SimpleObject"|(| "id" BIGINT
GENERATED BY DEFAULT AS IDENTITY,| "name" NVARCHAR(40) NOT NULL,|
"version" BIGINT NOT NULL,| CONSTRAINT "SimpleObject_PK" PRIMARY KEY
("id")|)]|java.sql.SQLException: invalid schema name: SIMPLE in
statement [CREATE TABLE simple."SimpleObject"|(| "id" BIGINT
GENERATED BY DEFAULT AS IDENTITY,| "name" NVARCHAR(40) NOT NULL,|
"version" BIGINT NOT NULL,| CONSTRAINT "SimpleObject_PK" PRIMARY KEY
("id")|)]<|?at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown
Source)<|?at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)<|?at
org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source)<|?at
org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source)<|?at
org.datanucleus.store.rdbms.datasource.dbcp.DelegatingStatement.execute(DelegatingStatement.java:246)<|?at
org.datanucleus.store.rdbms.datasource.dbcp.DelegatingStatement.execute(DelegatingStatement.java:246)<|?at
org.datanucleus.store.rdbms.table.AbstractTable.executeDdlStatement(AbstractTable.java:864)<|?at
org.datanucleus.store.rdbms.table.AbstractTable.executeDdlStatementList(AbstractTable.java:815)<|?at
org.datanucleus.store.rdbms.table.AbstractTable.create(AbstractTable.java:531)<|?at
org.datanucleus.store.rdbms.table.AbstractTable.exists(AbstractTable.java:594)<|?at
org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.performTablesValidation(RDBMSStoreManager.java:3355)<|?at
org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.run(RDBMSStoreManager.java:2871)<|?at
org.datanucleus.store.rdbms.AbstractSchemaTransaction.execute(AbstractSchemaTransaction.java:119)<|?at
org.datanucleus.store.rdbms.RDBMSStoreManager.createSchemaForClasses(RDBMSStoreManager.java:3838)<|?at
org.apache.isis.objectstore.jdo.datanucleus.DataNucleusApplicationComponents.createSchema(DataNucleusApplicationComponents.java:143)<|?at
org.apache.isis.objectstore.jdo.datanucleus.DataNucleusApplicationComponents.initialize(DataNucleusApplicationComponents.java:122)<|?at
org.apache.isis.objectstore.jdo.datanucleus.DataNucleusApplicationComponents.<init>(DataNucleusApplicationComponents.java:104)<|?at
org.apache.isis.objectstore.jdo.datanucleus.DataNucleusPersistenceMechanismInstaller.createDataNucleusApplicationComponentsIfRequired(DataNucleusPersistenceMechanismInstaller.java:119)<|?at
org.apache.isis.objectstore.jdo.datanucleus.DataNucleusPersistenceMechanismInstaller.createObjectStore(DataNucleusPersistenceMechanismInstaller.java:97)<|?at
org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory.createPersistenceSession(PersistenceSessionFactory.java:94)<|?at
org.apache.isis.core.runtime.system.session.IsisSessionFactoryDefault.openSession(IsisSessionFactoryDefault.java:217)<|?at
org.apache.isis.core.runtime.system.context.IsisContextThreadLocal.openSessionInstance(IsisContextThreadLocal.java:146)<|?at
org.apache.isis.core.runtime.system.context.IsisContext.openSession(IsisContext.java:275)<|?at
org.apache.isis.core.runtime.system.IsisSystemFixturesHookAbstract.initializeServices(IsisSystemFixturesHookAbstract.java:154)<|?at
org.apache.isis.core.runtime.system.IsisSystemFixturesHookAbstract.init(IsisSystemFixturesHookAbstract.java:126)<|?at
org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:133)<|?at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<|?at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<|?at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<|?at
java.lang.reflect.Method.invoke(Method.java:497)<|?at
com.google.inject.internal.ProviderMethod.get(ProviderMethod.java:104)<|?at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)<|?at
com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)<|?at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)<|?at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)<|?at
com.google.inject.Scopes$1$1.get(Scopes.java:65)<|?at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)<|?at
com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)<|?at
com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)<|?at
com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75)<|?at
com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73)<|?at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)<|?at
com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73)<|?at
com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:60)<|?at
com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:944)<|?at
org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.init(IsisWicketApplication.java:256)<|?at
domainapp.webapp.SimpleApplication.init(SimpleApplication.java:85)<|?at
org.apache.wicket.Application.initApplication(Application.java:823)<|?at
org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:424)<|?at
org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:351)<|?at
org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)<|?at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)<|?at
org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)<|?at
org.mortbay.jetty.servlet.Context.startContext(Context.java:140)<|?at
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)<|?at
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)<|?at
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)<|?at
org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:115)<|?at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)<|?at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)<|?at
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)<|?at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)<|?at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)<|?at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)<|?at
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)<|?at
org.mortbay.jetty.Server.doStart(Server.java:224)<|?at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)<|?at
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)<|?at
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:454)<|?at
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:396)<|?at
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:210)<|?at
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:184)<|?at
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)<|?at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)<|?at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)<|?at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)<|?at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)<|?at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)<|?at
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)<|?at
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)<|?at
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)<|?at
org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)<|?at
org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)<|?at
org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)<|?at
org.apache.maven.cli.MavenCli.main(MavenCli.java:141)<|?at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<|?at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<|?at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<|?at
java.lang.reflect.Method.invoke(Method.java:497)<|?at
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)<|?at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)<|?at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)<|?at
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)<|?at
org.codehaus.classworlds.Launcher.main(Launcher.java:47)<|Caused by:
org.hsqldb.HsqlException: invalid schema name: SIMPLE<|?at
org.hsqldb.error.Error.error(Unknown Source)<|?at
org.hsqldb.error.Error.error(Unknown Source)<|?at
org.hsqldb.SchemaManager.getSchemaHsqlName(Unknown Source)<|?at
org.hsqldb.Session.getSchemaHsqlName(Unknown Source)<|?at
org.hsqldb.StatementSchema.setOrCheckObjectName(Unknown Source)<|?at
org.hsqldb.StatementSchema.getResult(Unknown Source)<|?at
org.hsqldb.StatementSchema.execute(Unknown Source)<|?at
org.hsqldb.Session.executeCompiledStatement(Unknown Source)<|?at
org.hsqldb.Session.executeDirectStatement(Unknown Source)<|?at
org.hsqldb.Session.execute(Unknown Source)<|?... 92 more<|<| at
org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:132)<|
at
org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:132)<|
while locating org.apache.isis.core.runtime.system.IsisSystem<| for
field at
org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.system(IsisWicketApplication.java:142)<|
while locating domainapp.webapp.SimpleApplication<|<|1 error
I would really appreciate some tips and overall guidance :)
Best Regards,
Sebastian