OK, James, thanks for this.

So I guess you are saying it worked, but it's a bit annoying to have to
write out all the XML just to override one small detail.

To improve things a little, I've just hacked together [1] a little mixin
utility (mixins were introduced in 1.10.0) that allows the XML equivalent
version of any domain entity to be downloaded.  It's documented here [2]
and here [3], the code is here [4]. Assuming you are on 1.10.0, you should
just be able to copy-n-paste the mixin into your source code, and ensure
that the package that the mixin resides in listed in the app manifest.  If
on 1.9.0 or earlier, then rewrite as a contributed action on a regular
domain service.

HTH
Dan

[1] https://issues.apache.org/jira/browse/ISIS-1262
[2] http://isis.apache.org/guides/rg.html#_rg_classes_mixins_Persistable
[3]
http://isis.apache.org/guides/ug.html#_ug_more-advanced_overriding-jdo-annotations
[4]
https://github.com/apache/isis/blob/302da22ce3f5e549cda6c137c387cafd637ace55/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/jdosupport/Persistable_downloadJdoMetadata.java






On 25 November 2015 at 02:19, Chuangyu <zhu.chuan...@gmail.com> wrote:

> Dan,
>
> I try it follow your way. but it seems need put all name query into
> package.jdo.
> otherwise it prompt errors as follow:
>
> javax.jdo.JDOUserException: Query "findByRoleAndRuleAndFeature" for class
> "class org.isisaddons.module.security.dom.permission.ApplicationPermission"
> was not found!
>
> If put one query into package.jdo, it will not show error of this query,
> but show others which were not in file.
>
> This is my package.jod file content:
>
> <?xml version="1.0" encoding="UTF-8" ?>
> <jdo xmlns="http://xmlns.jcp.org/xml/ns/jdo/jdo";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/jdo/jdo
> http://xmlns.jcp.org/xml/ns/jdo/jdo_3_0.xsd"; version="3.0">
>
>     <package name="org.isisaddons.module.security.dom.user">
>         <class name="ApplicationUser"
>                      schema="xxx"
>                      table="IsisSecurityApplicationUser">
>
>         </class>
>     </package>
>     <package name="org.isisaddons.module.security.dom.tenancy">
>         <class name="ApplicationTenancy"
>                      schema="xxx"
>                      table="IsisSecurityApplicationTenancy">
>         <query name="findByName" language="JDOQL">
>         SELECT FROM
> org.isisaddons.module.security.dom.tenancy.ApplicationTenancy WHERE name ==
> :name
>         </query>
>         </class>
>     </package>
>     <package name="org.isisaddons.module.security.dom.permission">
>         <class name="ApplicationPermission"
>                      schema="xxx"
>                      table="IsisSecurityApplicationPermission">
>         </class>
>     </package>
>     <package name="org.isisaddons.module.security.dom.role">
>         <class name="ApplicationRole"
>                      schema="xxx"
>                      table="IsisSecurityApplicationRole">
>         <query name="findByName" language="JDOQL">
>         SELECT FROM org.isisaddons.module.security.dom.role.ApplicationRole
> WHERE name == :name
>         </query>
>         </class>
>     </package>
> <package name="org.isisaddons.module.command.dom">
>         <class name="CommandJdo"
>                      schema="xxx"
>                      table="IsisCommand">
>         </class>
>     </package>
> <package name="org.isisaddons.module.sessionlogger.dom">
>         <class name="SessionLogEntry"
>                      schema="xxx"
>                      table="isisSessionLogEntry">
>         </class>
>     </package>
> </jdo>
>
> Thanks,
>
> James
>
>
> 2015-11-19 22:40 GMT+08:00 Dan Haywood <d...@haywood-associates.co.uk>:
>
> > Hi James,
> >
> > With DataNucleus the metadata can be specified either in XML or in
> > annotations.  (I haven't tried this out, but my understanding is that)...
> > if both are present, then the XML files take precedence over any
> > annotations.
> >
> >
> > So, in this case, we have the following source (abbreviated):
> >
> > package org.isisaddons.module.security.dom.user;
> > @javax.jdo.annotations.PersistenceCapable(
> >         identityType = IdentityType.DATASTORE,
> >         schema = "isissecurity",
> >         table = "ApplicationUser")
> > public class ApplicationUser ... { ... }
> >
> >
> > So, you should be able to create META-INF/package.jdo file:
> >
> >
> > <?xml version="1.0" encoding="UTF-8" ?>
> > <jdo xmlns="http://xmlns.jcp.org/xml/ns/jdo/jdo";
> >     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> >     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/jdo/jdo
> >         http://xmlns.jcp.org/xml/ns/jdo/jdo_3_0.xsd"; version="3.0">
> >
> >     <package name="org.isisaddons.module.security.dom.user">
> >         <class name="ApplicationUser"
> >                      schema="xxx"
> >                               <!-- whatever works here... -->
> >                      table="IsisSecurityApplicationUser">
> >         </class>
> >     </package>
> > </jdo>
> >
> >
> > There are lots of other ways of splitting out and providing this XML
> > metadata; see the docs below.
> >
> > Let us know how you get on; if it works I'll add to the hints/tips on our
> > website.
> >
> > Thx
> > Dan
> >
> > http://www.datanucleus.org/products/accessplatform_4_1/jdo/metadata.html
> >
> >
> http://www.datanucleus.org/products/accessplatform_4_1/jdo/metadata_xml.html#class
> >
> >
> http://www.datanucleus.org/products/accessplatform_4_1/jdo/class_mapping.html
> >
> >
> > On 19 November 2015 at 14:25, Chuangyu <zhu.chuan...@gmail.com> wrote:
> >
> > > Thank you, Jeroen.
> > >
> > > If do not create schema manually, it can run so far, just ignore
> "create
> > > schema" errors.
> > >
> > > MySQL official document comment:
> > > CREATE SCHEMA is a synonym for CREATE DATABASE as of MySQL 5.0.2
> > >
> > > I don't want to create separate database for isis addons.
> > >
> > >
> > > James
> > >
> > > 2015-11-16 23:51 GMT+08:00 Jeroen van der Wal <jer...@stromboli.it>:
> > >
> > > > We actively use Apache Isis with HSQLDB, PostgreSQL and MS SQL Server
> > and
> > > > they all support separate schemas within the same database. I would
> > like
> > > to
> > > > see Apache Isis run without issues in the scenario you have but I
> don't
> > > > want to lose the security that database schemas provide in preventing
> > > > similar named entities to clash.
> > > >
> > > > What options do you have? Can you
> > > >
> > > > On 16 November 2015 at 14:40, Chuangyu <zhu.chuan...@gmail.com>
> wrote:
> > > >
> > > > > Hi Jeroen and Stephen,
> > > > > Thanks for your response.
> > > > > Jeroen ,your solution may not fit my scenario.
> > > > > I run 3 instance of this system but all 3 databases on one server
> > .(eg.
> > > > >  db1,db2,db3)
> > > > > Each instance has username/password separately.(eg, user1, user2,
> > > user3)
> > > > > If create schema on this server , all databases would share the
> > schema.
> > > > >
> > > > > If tables will create in the default schema, as Stephen said, it
> may
> > be
> > > > can
> > > > > work.
> > > > > But it is hard to maintenance.
> > > > >
> > > > >
> > > > > James.
> > > > >
> > > > >
> > > > > 2015-11-16 19:27 GMT+08:00 Stephen Cameron <
> > steve.cameron...@gmail.com
> > > >:
> > > > >
> > > > > > Yes, that was a problem for me with MySQL and I used the same
> > > solution
> > > > to
> > > > > > manually create the schemas, but then the module tables seem to
> > have
> > > > been
> > > > > > created in the default schema anyway, so presently a mystery!
> > > > > >
> > > > > > On Mon, Nov 16, 2015 at 10:22 PM, Jeroen van der Wal <
> > > > > jer...@stromboli.it>
> > > > > > wrote:
> > > > > >
> > > > > > > Hi James,
> > > > > > >
> > > > > > > Starting with Isis 1.10.0 we've moved the tables of the modules
> > to
> > > > > their
> > > > > > > own database schema to avoid clashes with similar named
> entities
> > in
> > > > > your
> > > > > > > own domain or other modules. Here's [1] a sample of an MSSQL
> > script
> > > > > that
> > > > > > we
> > > > > > > used. You have create something similar for MySQL I guess.
> > > > > > >
> > > > > > > Looking at the error message I also suspect that the automatic
> > > > creation
> > > > > > of
> > > > > > > schemas does not work on MySQL, perhaps it requires delimiters
> > > around
> > > > > the
> > > > > > > schema name? Try creating the schemas manually as a workaround.
> > > > > > >
> > > > > > > [1] https://gist.github.com/jcvanderwal/c30e2d8c4d11aec5b0c0
> > > > > > >
> > > > > > >
> > > > > > > On 16 November 2015 at 11:10, Chuangyu <zhu.chuan...@gmail.com
> >
> > > > wrote:
> > > > > > >
> > > > > > > > Hi,
> > > > > > > >
> > > > > > > > I create a new 1.10 simple app and copy all code from 1.8 to
> > > 1.10.
> > > > > > > > And made some change to fit new 1.10 specs.
> > > > > > > > When start system , Eclipse show errors on console box.
> > > > > > > > It seems each addon module occur one error.
> > > > > > > > Below is one of errors:
> > > > > > > >
> > > > > > > > Unable to create schema
> > > > > > > > com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
> You
> > > have
> > > > > an
> > > > > > > > error in your SQL syntax; check the manual that corresponds
> to
> > > your
> > > > > > MySQL
> > > > > > > > server version for the right syntax to use near
> > > > '"isissessionlogger"'
> > > > > > at
> > > > > > > > line 1
> > > > > > > > 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:422)
> > > > > > > > at com.mysql.jdbc.Util.handleNewInstance(Util.java:408)
> > > > > > > > at com.mysql.jdbc.Util.getInstance(Util.java:383)
> > > > > > > > at
> > com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1062)
> > > > > > > > at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4226)
> > > > > > > > at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4158)
> > > > > > > > at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
> > > > > > > > at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
> > > > > > > > at
> > > com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2834)
> > > > > > > > at
> > > com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2783)
> > > > > > > > at
> com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:908)
> > > > > > > > at
> com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:788)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.objectstore.jdo.datanucleus.CreateSchemaObjectFromClassMetadata.exec(CreateSchemaObjectFromClassMetadata.java:117)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.objectstore.jdo.datanucleus.CreateSchemaObjectFromClassMetadata.loaded(CreateSchemaObjectFromClassMetadata.java:76)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.metadata.MetaDataManagerImpl.processListenerLoadingCall(MetaDataManagerImpl.java:1705)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.metadata.MetaDataManagerImpl.getMetaDataForClass(MetaDataManagerImpl.java:1681)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.metadata.MetaDataManagerImpl.getMetaDataForClass(MetaDataManagerImpl.java:1580)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.metadata.MetaDataManagerImpl.getReferencedClasses(MetaDataManagerImpl.java:3009)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.addClassTables(RDBMSStoreManager.java:2981)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.run(RDBMSStoreManager.java:2872)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.store.rdbms.AbstractSchemaTransaction.execute(AbstractSchemaTransaction.java:119)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.datanucleus.store.rdbms.RDBMSStoreManager.createSchemaForClasses(RDBMSStoreManager.java:3842)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.DataNucleusApplicationComponents.createSchema(DataNucleusApplicationComponents.java:191)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.DataNucleusApplicationComponents.createPmfAndSchemaIfRequired(DataNucleusApplicationComponents.java:150)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.DataNucleusApplicationComponents.initialize(DataNucleusApplicationComponents.java:105)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.DataNucleusApplicationComponents.<init>(DataNucleusApplicationComponents.java:98)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory.createDataNucleusApplicationComponents(PersistenceSessionFactory.java:92)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory.init(PersistenceSessionFactory.java:73)
> > > > > > > > at
> > > > > > >
> > > > >
> > >
> org.apache.isis.core.runtime.system.IsisSystem.init(IsisSystem.java:203)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:140)
> > > > > > > > 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:265)
> > > > > > > > at
> > > > > > >
> > > >
> tm.webapp.TruckMonitorApplication.init(TruckMonitorApplication.java:75)
> > > > > > > > at
> > > > > org.apache.wicket.Application.initApplication(Application.java:823)
> > > > > > > > at
> > > > > > >
> > > > >
> > >
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:427)
> > > > > > > > at
> > > > > > >
> > > > >
> > >
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:351)
> > > > > > > > at
> > > > > > >
> > > > >
> > >
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:138)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:852)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:298)
> > > > > > > > at
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1349)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1342)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741)
> > > > > > > > at
> > > > > >
> > > org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:505)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)
> > > > > > > > at org.eclipse.jetty.server.Server.start(Server.java:387)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
> > > > > > > > at org.eclipse.jetty.server.Server.doStart(Server.java:354)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> > > > > > > > at
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.isis.core.webserver.WebServerBootstrapper.bootstrap(WebServerBootstrapper.java:91)
> > > > > > > > at
> > > org.apache.isis.core.webserver.WebServer.run(WebServer.java:107)
> > > > > > > > at
> > > org.apache.isis.core.webserver.WebServer.main(WebServer.java:71)
> > > > > > > > at org.apache.isis.WebServer.main(WebServer.java:25)
> > > > > > > >
> > > > > > > >
> > > > > > > > I check addon's dom module adn find
> > > > > > > >
> > > > > > > > @javax.jdo.annotations.PersistenceCapable(
> > > > > > > >         identityType = IdentityType.DATASTORE,
> > > > > > > >         schema = "isissecurity",
> > > > > > > >         table = "ApplicationUser")
> > > > > > > >
> > > > > > > > There is schema = "isissecurity" than version 1.8.0  and
> table
> > > is
> > > > > > > > ApplicationUser not IsisSecurityApplicationUser.
> > > > > > > >
> > > > > > > > So how to migration these tables? And how to avoid "schema"
> > > clause
> > > > in
> > > > > > > > MySQL?
> > > > > > > >
> > > > > > > > Thanks,
> > > > > > > >
> > > > > > > > James Chu.
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to