I've added the factories to the ' IsisConfigurationForJdoIntegTests' and
adjusted the DataNucleus properties to match 4.x
I can see the tables are getting created but there is a cast exception.
I won't flood the email distribution again until I'm stuck for a few hours. =]
Looks like it's pretty close now.
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.031 sec <<<
FAILURE! - in integration.tests.ToDoItemsIntegTest$NewToDo_and_Delete
happyCase(integration.tests.ToDoItemsIntegTest$NewToDo_and_Delete) Time
elapsed: 0.031 sec <<< ERROR!
java.lang.ClassCastException: dom.todo.ToDoItem cannot be cast to
javax.jdo.spi.PersistenceCapable
-------------------------
16:35:20,986 [Schema main DEBUG] CREATE TABLE "ToDoItem"
(
"id" BIGINT GENERATED BY DEFAULT AS IDENTITY,
"attachment_name" BLOB NULL,
"category" NVARCHAR(255) NOT NULL,
"complete" BOOLEAN NOT NULL,
"cost" DECIMAL(19,2) NULL,
"description" NVARCHAR(100) NOT NULL,
"doc_name" BLOB NULL,
"dueBy" DATE NULL,
"notes" NVARCHAR(400) NULL,
"ownedBy" NVARCHAR(255) NOT NULL,
"subcategory" NVARCHAR(255) NULL,
"version" BIGINT NOT NULL,
CONSTRAINT "ToDoItem_PK" PRIMARY KEY ("id")
)
16:35:20,986 [Schema main DEBUG] Execution Time = 0 ms
16:35:21,002 [Schema main DEBUG] Check of existence of
"ToDoItemDependencies" returned no table
16:35:21,002 [Schema main DEBUG] Creating table
"ToDoItemDependencies"
16:35:21,002 [Schema main DEBUG] CREATE TABLE
"ToDoItemDependencies"
(
"dependingId" BIGINT NOT NULL,
"dependentId" BIGINT NOT NULL,
CONSTRAINT "ToDoItemDependencies_PK" PRIMARY KEY
("dependingId","dependentId")
)
Jeremy D. Branham
Tel: **DOTNET
-----Original Message-----
From: Branham, Jeremy [HR]
Sent: Monday, December 29, 2014 3:31 PM
To: [email protected]
Subject: RE: Working on a branch with latest datanucleus
Forgot to mention -
I updated the 'JDOStateManagerForIsis' to use Persistable instead of
PersistanceCapable.
public class JDOStateManagerForIsis extends ReferentialStateManagerImpl { ...
}
Jeremy D. Branham
Tel: **DOTNET
-----Original Message-----
From: Branham, Jeremy [HR]
Sent: Monday, December 29, 2014 3:26 PM
To: [email protected]
Subject: RE: Working on a branch with latest datanucleus
Thanks, that has got me started.
For now I am just working with the RDMS capable statemanager, and will focus on
the Neo4j compatibility later.
I've added two ' AbstractRemoveMethodsFacetFactory'
[Finds 25 methods]
public RemoveDatanucleusPersistableTypesFacetFactory() {
super("org.datanucleus.enhancer.Persistable");
}
And
[org.apache.isis.core.commons.factory.UnavailableClassException: The default
type 'javax.jdo.spi.Persistable' cannot be found]
public RemoveJdoPersistableEnhancementTypesFacetFactory() {
super("javax.jdo.spi.Persistable");
}
In the 'FacetedMethodsBuilder# getActionFacetedMethods' I do see this - [It
looks like it is stripping off the dn methods, does this look right?]
associationFacetMethodsCollections$UnmodifiableRandomAccessList<E> (id=289)
[PROPERTY Peer
[identifier="dom.simple.SimpleObject#name()",type=java.lang.String ]]
introspectedClassClass<T> (dom.simple.SimpleObject) (id=291) class
dom.simple.SimpleObject
methodsArrays$ArrayList<E> (id=293)
[null, null, null, null, public static java.lang.Class
dom.simple.SimpleObject.___jdo$loadClass(java.lang.String), null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null]
Is it ok that the 'SimpleObject.___jdo$loadClass' method is listed there?
Although, this exception is getting thrown now -
// assert is persistent
if(!pojo.jdoIsPersistent()) {
throw new IllegalStateException("Pojo JDO state is not
persistent! pojo dnOid: " + JDOHelper.getObjectId(pojo));
}
Is there still something wrong with the method filtering? Or is this a
different issue?
Jeremy D. Branham
Tel: **DOTNET
-----Original Message-----
From: Dan Haywood [mailto:[email protected]]
Sent: Monday, December 29, 2014 11:33 AM
To: users
Subject: Re: Working on a branch with latest datanucleus
Hi Jeremy,
Having not looked at DN 4.x at all yet, can't specfically advise; have a few
general thoughts though.
Just to recap on stuff that you probably know/have figured out...
* With respect to javax.jdo.spi.PersistenceCapable vs
javax.jdo.spi.Persistable, in DN 3.x I know the enhancer makes all enhanced
objects implement the javax.jdo.spi.PersistenceCapable interface. Looking at
the javax.jdo.spi.Persistable interface for DN 3.x it seems like its a
placeholder, with a comment "Note that this is not yet used by DataNucleus, but
is intended as something for the future."
* My guess for DN 4.x is that Andy Jefferson (maintainer of DN) has now made
this change, and generalized things to work with javax.jdo.spi.Persistable
instead of, or perhaps as well as, PersistenceCapable. (This might explain the
new dnReplaceFields(...) methods rather than jdoReplaceFields(...) methods that
you saw before).
* I can tell you that JDOStateManagerForIsis is kinda important, as its the
point where we tell Isis about the objects that are brought into memory by DN,
to map them and inject services into them. So you will need to find some sort
of implementation of it.
~~~
From its name, I'm guessing that ReferentialJDOStateManager is for RDBMS
stores, whereas of course you are using Neo4J instead. So you probably need to
inherit from AbstractStateManager or something else higher up in the
inheritance hierarchy.
In terms of getting Isis to work with your own improved version of
JdoStateManagerForIsis, it looks like the implementation is specified in
DataNucleusPersistenceMechanismInstaller#addDataNucleusPropertiesIfRequired(...)
... so you can probably just add your impl to isis.properties.
Also, I notice that there's a thread-local in JdoStateManagerForIsis that is
referenced by EventBusServiceJdo, but that could easily be moved out into some
other class.
~~
If none of the above helps, you might want to try posting a question on the DN
forum [1], though I know that Andy does also answer DN questions on SO also.
The question will need to be framed in terms of DN rather than Isis though.
If you get nowhere, I can ping Andy also (so long as I'm clear about what I'm
asking, which I'm not quite, at the moment).
HTH
Dan
[1] http://www.datanucleus.org/support.html
On 29 December 2014 at 16:52, Branham, Jeremy [HR] <
[email protected]> wrote:
> I thought I was being clever changing over to 'Persitable' in the
> 'JDOStateManagerForIsis', but I get errors about the 'SimpleObject'
> not being persistable at runtime.
>
> ---------------
>
> I have a question about the ReferentialJDOStateManager in DataNucleus.
> The JDOStateManager extended this class in DN 3.x but it is not
> present in DN 4.x
>
> Affected class in Isis -
> public class JDOStateManagerForIsis extends ReferentialJDOStateManager
> implements StateManager, ObjectProvider
>
> I do see this class -
> org.datanucleus.state.ReferentialStateManagerImpl
>
> I thought this might be the appropriate replacement, but if I extend
> ReferentialStateManagerImpl, there are problems...
>
> The problem I encounter when extending the new class -
> ReferentialStateManagerImpl extends StateManagerImpl. Which extends
> AbstractStateManager<Persistable>
>
> The current JDOStateManagerForIsis is setup to handle
> PersistenceCapable objects rather than Persistable objects.
>
> I'm not sure where to go from here.
>
> Also posted on SO -
>
> http://stackoverflow.com/questions/27692754/is-referentialjdostatemana
> ger-not-used-in-datanucleus-4-x
>
>
>
>
> Jeremy D. Branham
> Tel: **DOTNET
>
>
> -----Original Message-----
> From: Dan Haywood [mailto:[email protected]]
> Sent: Friday, December 26, 2014 1:42 AM
> To: users
> Subject: Re: Working on a branch with latest datanucleus
>
> With Isis we have:
>
>
>
> org.apache.isis.core.metamodel.facets.object.ignore.jdo.RemoveJdoEnhan
> cementTypesFacetFactory
>
> that ensures that Isis ignores all the methods in the
> javax,jdo.spi.PersistenceCapable interface. That interface defines a
> bunch of methods called jdoReplaceFields(int[]) and so on.
>
> My guess is that with DN 4.0 that this has changed so that there is a
> similar DN-specific interface that the enhancer makes the
> persistence-capable objects implement.
>
> Have a go at writing a similar facet factory and register it in
> isis.properties using the "isis.reflector.facets.include" property,
> see [1]... If it works we can incorporate into Isis proper for a future
> version.
>
> Let us know how you get on.
>
> Dan
>
>
> [1]
>
> http://isis.apache.org/more-advanced-topics/metamodel-finetuning-the-p
> rogramming-model.html
>
>
> On 25 December 2014 at 00:43, Branham, Jeremy [HR] <
> [email protected]> wrote:
>
> > Thanks for checking Dan.
> > I solved that particular issue, but I'm not sure it's a valid solution.
> >
> > Changed -
> >
> > https://github.com/jdbranham/isis/blob/DN_404/core/metamodel/src/mai
> > n/
> > java/org/apache/isis/core/metamodel/specloader/classsubstitutor/Clas
> > sS
> > ubstitutor.java#L53-L55
> >
> >
> > New Issue I'm working on -
> >
> > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:
> > 0.197 sec <<< FAILURE! - in
> > integration.tests.ToDoItemIntegTest$Properties$Description
> > integration.tests.ToDoItemIntegTest$Properties$Description Time elapsed:
> > 0.197 sec <<< ERROR!
> > java.lang.RuntimeException:
> > org.apache.isis.core.commons.exceptions.UnknownTypeException:
> > collections not supported as parameters:
> > dom.todo.ToDoItem#dnProvideFields([I)
> > at
> > org.apache.isis.core.integtestsupport.IsisSystemForTest.setUpSystem(
> > Is
> > isSystemForTest.java:314)
> >
> >
> > Jeremy D. Branham
> > Tel: **DOTNET
> >
> >
> > -----Original Message-----
> > From: Dan Haywood [mailto:[email protected]]
> > Sent: Wednesday, December 24, 2014 12:05 PM
> > To: users
> > Subject: Re: Working on a branch with latest datanucleus
> >
> > Hi Jeremy,
> >
> > sorry, it's not clear to me if you had an issue but then resolved
> > it, or whether there is still an issue?
> >
> > With respect to moving to DN 4.0, that's certainly the intention,
> > and is a prerequisite for us to support Java8. Given that Java7
> > support finishes in April 2015, it's clearly something that we need
> > to do be tackling quite soon.
> >
> > Thx
> > Dan
> >
> >
> > On 24 December 2014 at 05:24, Branham, Jeremy [HR] <
> > [email protected]> wrote:
> >
> > > The line numbers didn't match because a different version of the
> > > class was being loaded.
> > > I added a null check that solved the issue, but the code running
> > > hadn't picked up the change yet.
> > >
> > >
> > > Jeremy D. Branham
> > > Tel: **DOTNET
> > >
> > >
> > > -----Original Message-----
> > > From: Branham, Jeremy [HR]
> > > Sent: Tuesday, December 23, 2014 11:04 PM
> > > To: [email protected]
> > > Subject: Working on a branch with latest datanucleus
> > >
> > > Sorry for the massive stack trace, but I was looking for some
> > > pointers on what might be happing here.
> > > I'm having a bit of difficulty debugging because the line numbers
> > > reported don't seem to match the source files, and even when
> > > stepping through the code. [maybe something wrong in my dev env]
> > >
> > > I'm working on a branch with a newer datanucleus support [4.0.4]
> > > and seems to be an issue with the spec loader.
> > > I understand if there is no support for this yet.
> > >
> > >
> > > 22:52:01,445 [Reflections main INFO ] Reflections took
> > > 421 ms to scan 7 urls, producing 148 keys and 716 values
> > > 22:52:01,523 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: dom.simple.SimpleObjects
> > > 22:52:01,523 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: fixture.simple.SimpleObjectsFixturesService
> > > 22:52:01,523 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: org.apache.isis.applib.annotation.Bulk$InteractionContext
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.applib.services.bookmark.BookmarkHolderActionContrib
> > ut
> > ions
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.applib.services.classdiscovery.ClassDiscoveryService
> > Us
> > ingReflections
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: org.apache.isis.applib.services.clock.ClockService
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: org.apache.isis.applib.services.command.CommandContext
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > org.apache.isis.applib.services.queryresultscache.QueryResultsCache
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: org.apache.isis.applib.services.scratchpad.Scratchpad
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceDefau
> lt
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.core.metamodel.services.container.DomainObjectContai
> > ne
> > rDefault
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> org.apache.isis.core.runtime.services.background.BackgroundServiceDefa
> ult
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > org.apache.isis.core.runtime.services.memento.MementoServiceDefault
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.core.runtime.services.xmlsnapshot.XmlSnapshotService
> > De
> > fault
> > > 22:52:01,571 [ServiceInstantiator main DEBUG] loading class
> for
> > > service: org.apache.isis.core.wrapper.WrapperFactoryDefault
> > > 22:52:01,587 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.objectstore.jdo.applib.service.exceprecog.ExceptionR
> > ec
> > ognizerCompositeForJdoObjectStore
> > > 22:52:01,618 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.objectstore.jdo.datanucleus.service.eventbus.EventBu
> > sS
> > erviceJdo
> > > 22:52:01,618 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.objectstore.jdo.datanucleus.service.support.IsisJdoS
> > up
> > portImpl
> > > 22:52:01,618 [ServiceInstantiator main DEBUG] loading class
> for
> > > service:
> > >
> > org.apache.isis.viewer.restfulobjects.rendering.service.Representati
> > on
> > ServiceForRestfulObjects
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21
> > > into SimpleObjects@529d935d[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.runtime.services.memento.MementoServiceDefaul
> > > t@ 6c dd377c into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.applib.services.classdiscovery.ClassDiscoveryServi
> > > ce
> > > Us
> > > ingReflections@64b17900 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into BookmarkHolderActionContributions@3f7f22a5[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21 into
> > > ClassDiscoveryServiceUsingReflections@64b17900[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.wrapper.WrapperFactoryDefault@33bb9f34 into
> > > BookmarkServiceDefault@4acd2ea5[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.wrapper.WrapperFactoryDefault@33bb9f34 into
> > > DomainObjectContainerDefault@397c8a21[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into BackgroundServiceDefault@4898c8f9[]
> > > 22:52:01,712 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.runtime.services.ServiceInstantiator$2@26b278
> > > ab into BackgroundServiceDefault@4898c8f9[]
> > > 22:52:01,727 [ObjectReflectorDefault main DEBUG] initialising
> > >
> org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault@1e614
> 4db
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21
> > > into SimpleObjects@529d935d[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.runtime.services.memento.MementoServiceDefaul
> > > t@ 6c dd377c into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.applib.services.classdiscovery.ClassDiscoveryServi
> > > ce
> > > Us
> > > ingReflections@64b17900 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21 into SimpleObjectsFixturesService@2f65e5ba[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into BookmarkHolderActionContributions@3f7f22a5[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.container.DomainObjectCont
> > > ai
> > > ne
> > > rDefault@397c8a21 into
> > > ClassDiscoveryServiceUsingReflections@64b17900[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.wrapper.WrapperFactoryDefault@33bb9f34 into
> > > BookmarkServiceDefault@4acd2ea5[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.wrapper.WrapperFactoryDefault@33bb9f34 into
> > > DomainObjectContainerDefault@397c8a21[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceD
> > > ef
> > > au
> > > lt@4acd2ea5 into BackgroundServiceDefault@4898c8f9[]
> > > 22:52:01,727 [ServicesInjectorDefault main DEBUG] injected
> > > org.apache.isis.core.runtime.services.ServiceInstantiator$2@26b278
> > > ab into BackgroundServiceDefault@4898c8f9[]
> > > 22:52:14,042 [ObjectSpecificationAbstract main DEBUG]
> > Superclass
> > > java.lang.Object
> > > 22:52:14,152 [ObjectSpecificationAbstract main DEBUG]
> > Superclass
> > > java.lang.Object
> > > 22:52:14,167 [IsisWicketApplication main ERROR] Failed to
> > > initialize
> > > com.google.inject.ProvisionException: Guice provision errors:
> > >
> > > 1) Error in custom provider, java.lang.NullPointerException
> > > at
> > >
> > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSyst
> > em
> > (IsisInjectModule.java:132)
> > > at
> > >
> > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSyst
> > em
> > (IsisInjectModule.java:132)
> > > while locating org.apache.isis.core.runtime.system.IsisSystem
> > > for field at
> > >
> > org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.system(Is
> > is
> > WicketApplication.java:138)
> > > while locating webapp.SimpleApplication
> > >
> > > 1 error
> > > at
> > >
> > com.google.inject.internal.Errors.throwProvisionExceptionIfErrorsExi
> > st
> > (Errors.java:451)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl.injectMembers(Members
> > In
> > jectorImpl.java:65)
> > > at
> > >
> > com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.j
> > av
> > a:944)
> > > at
> > >
> > org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.init(Isis
> > Wi
> > cketApplication.java:248)
> > > at webapp.SimpleApplication.init(SimpleApplication.java:81)
> > > at
> > > org.apache.wicket.Application.initApplication(Application.java:823)
> > > at
> > >
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:42
> 4)
> > > at
> > >
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:35
> 1)
> > > at
> > > org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
> > > at
> > >
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:5
> 0)
> > > at
> > >
> > org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.j
> > av
> > a:713)
> > > at
> > org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
> > > at
> > >
> > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.ja
> > va
> > :1282)
> > > at
> > >
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:5
> 18)
> > > at
> > > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
> > > at
> > >
> > org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6Plu
> > gi
> > nWebAppContext.java:115)
> > > at
> > >
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:5
> 0)
> > > at
> > >
> > org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.
> > java:152)
> > > at
> > >
> > org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHa
> > nd
> > lerCollection.java:156)
> > > at
> > >
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:5
> 0)
> > > at
> > >
> > org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.
> > java:152)
> > > at
> > >
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:5
> 0)
> > > at
> > >
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:1
> 30)
> > > at org.mortbay.jetty.Server.doStart(Server.java:224)
> > > at
> > >
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:5
> 0)
> > > at
> > >
> > org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer
> > .j
> > ava:132)
> > > at
> > >
> > org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyM
> > oj
> > o.java:454)
> > > at
> > >
> > org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo
> > .j
> > ava:396)
> > > at
> > >
> > org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyR
> > un
> > Mojo.java:210)
> > > at
> > > org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:184)
> > > at
> > >
> > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(Defaul
> > tB
> > uildPluginManager.java:106)
> > > at
> > >
> > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.
> > java:208)
> > > 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.buildProj
> > ec
> > t(LifecycleModuleBuilder.java:84)
> > > at
> > >
> > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProj
> > ec
> > t(LifecycleModuleBuilder.java:59)
> > > at
> > >
> > org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedB
> > ui
> > ld(LifecycleStarter.java:183)
> > > at
> > >
> > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecyc
> > le
> > Starter.java:161)
> > > at
> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317)
> > > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
> > > at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
> > > at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
> > > at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
> > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > > at
> > >
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl
> > .j
> > ava:57)
> > > at
> > >
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
> > ss
> > orImpl.java:43)
> > > at java.lang.reflect.Method.invoke(Method.java:606)
> > > at
> > >
> > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Lau
> > nc
> > her.java:289)
> > > at
> > >
> > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.ja
> > va
> > :229)
> > > at
> > >
> > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(L
> > au
> > ncher.java:415)
> > > at
> > >
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:3
> 56)
> > > at org.codehaus.classworlds.Launcher.main(Launcher.java:46)
> > > Caused by: java.lang.NullPointerException
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubs
> > ti
> > tutor.getClass(ClassSubstitutor.java:54)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubs
> > ti
> > tutor.getClass(ClassSubstitutor.java:55)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecif
> > ic
> > ationDefault.introspectTypeHierarchyAndMembers(ObjectSpecificationDe
> > fa
> > ult.java:146)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.int
> > ro
> > spectIfRequired(ObjectReflectorDefault.java:499)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.loa
> > dS
> > pecificationForSubstitutedClass(ObjectReflectorDefault.java:400)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.int
> > er
> > nalLoadSpecification(ObjectReflectorDefault.java:378)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.loa
> > dS
> > pecifications(ObjectReflectorDefault.java:415)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.loa
> > dS
> > pecifications(ObjectReflectorDefault.java:428)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.FacetedMethodsBui
> > ld
> > er.representsAction(FacetedMethodsBuilder.java:455)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.FacetedMethodsBui
> > ld
> > er.findActionFacetedMethod(FacetedMethodsBuilder.java:404)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.FacetedMethodsBui
> > ld
> > er.findActionFacetedMethods(FacetedMethodsBuilder.java:388)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.FacetedMethodsBui
> > ld
> > er.findActionFacetedMethods(FacetedMethodsBuilder.java:367)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.FacetedMethodsBui
> > ld
> > er.getActionFacetedMethods(FacetedMethodsBuilder.java:343)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecif
> > ic
> > ationDefault.createActions(ObjectSpecificationDefault.java:222)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecif
> > ic
> > ationDefault.introspectTypeHierarchyAndMembers(ObjectSpecificationDe
> > fa
> > ult.java:167)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.int
> > ro
> > spectIfRequired(ObjectReflectorDefault.java:499)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.loa
> > dS
> > pecificationForSubstitutedClass(ObjectReflectorDefault.java:400)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.int
> > er
> > nalLoadSpecification(ObjectReflectorDefault.java:378)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.pri
> > me
> > Cache(ObjectReflectorDefault.java:269)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.ini
> > tA
> > ndValidate(ObjectReflectorDefault.java:244)
> > > at
> > >
> > org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault.ini
> > t(
> > ObjectReflectorDefault.java:205)
> > > at
> > >
> > org.apache.isis.core.runtime.system.session.IsisSessionFactoryDefault.
> > init(IsisSessionFactoryDefault.java:192)
> > > at
> > >
> > org.apache.isis.core.runtime.system.IsisSystemFixturesHookAbstract.i
> > ni
> > t(IsisSystemFixturesHookAbstract.java:120)
> > > at
> > >
> > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSyst
> > em
> > (IsisInjectModule.java:133)
> > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > > at
> > >
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl
> > .j
> > ava:57)
> > > at
> > >
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
> > ss
> > orImpl.java:43)
> > > at java.lang.reflect.Method.invoke(Method.java:606)
> > > at
> > > com.google.inject.internal.ProviderMethod.get(ProviderMethod.java:104)
> > > at
> > >
> > com.google.inject.internal.InternalFactoryToProviderAdapter.get(Inte
> > rn
> > alFactoryToProviderAdapter.java:40)
> > > at
> > >
> > com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(P
> > ro
> > viderToInternalFactoryAdapter.java:46)
> > > at
> > >
> > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.j
> > av
> > a:1031)
> > > at
> > >
> > com.google.inject.internal.ProviderToInternalFactoryAdapter.get(Prov
> > id
> > erToInternalFactoryAdapter.java:40)
> > > at com.google.inject.Scopes$1$1.get(Scopes.java:65)
> > > at
> > >
> > com.google.inject.internal.InternalFactoryToProviderAdapter.get(Inte
> > rn
> > alFactoryToProviderAdapter.java:40)
> > > at
> > >
> > com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInj
> > ec
> > tor.java:53)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl.injectMembers(Members
> > In
> > jectorImpl.java:110)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjecto
> > rI
> > mpl.java:75)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjecto
> > rI
> > mpl.java:73)
> > > at
> > >
> > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.j
> > av
> > a:1024)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl.injectAndNotify(Membe
> > rs
> > InjectorImpl.java:73)
> > > at
> > >
> > com.google.inject.internal.MembersInjectorImpl.injectMembers(Members
> > In
> > jectorImpl.java:60)
> > > ... 50 more
> > > 22:52:14,167 [WicketFilter main ERROR] The
> initialization
> > > of an application with name 'WicketFilter' has failed.
> > > com.google.inject.ProvisionException: Guice provision errors:
> > >
> > >
> > >
> > > ________________________________
> > >
> > > This e-mail may contain Sprint proprietary information intended
> > > for the sole use of the recipient(s). Any use by others is prohibited.
> > > If you are not the intended recipient, please contact the sender
> > > and delete all copies of the message.
> > >
> > > ________________________________
> > >
> > > This e-mail may contain Sprint proprietary information intended
> > > for the sole use of the recipient(s). Any use by others is prohibited.
> > > If you are not the intended recipient, please contact the sender
> > > and delete all copies of the message.
> > >
> >
> > ________________________________
> >
> > This e-mail may contain Sprint proprietary information intended for
> > the sole use of the recipient(s). Any use by others is prohibited.
> > If you are not the intended recipient, please contact the sender and
> > delete all copies of the message.
> >
>
> ________________________________
>
> This e-mail may contain Sprint proprietary information intended for
> the sole use of the recipient(s). Any use by others is prohibited. If
> you are not the intended recipient, please contact the sender and
> delete all copies of the message.
>
________________________________
This e-mail may contain Sprint proprietary information intended for the sole
use of the recipient(s). Any use by others is prohibited. If you are not the
intended recipient, please contact the sender and delete all copies of the
message.
________________________________
This e-mail may contain Sprint proprietary information intended for the sole
use of the recipient(s). Any use by others is prohibited. If you are not the
intended recipient, please contact the sender and delete all copies of the
message.
________________________________
This e-mail may contain Sprint proprietary information intended for the sole
use of the recipient(s). Any use by others is prohibited. If you are not the
intended recipient, please contact the sender and delete all copies of the
message.