incubator-isis-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mukul joshi <mukul.ashok.jo...@gmail.com>
Subject Re: Thinking of contributing? Some ideas.
Date Mon, 01 Oct 2012 12:14:49 GMT
Hi Dan,

Thanks for the clarifications.

I have done the following:
1. Created a fork of Apache Isis in GitHub
2. Setup Eclipse Juno EE with M2E, JettyRunner, EclEmma and coding templates
3. Maven imported the "framework"
4. On launching the restfulobjects-tck in Eclipse I am getting the
following error:

Error in custom provider,
org.apache.isis.runtimes.dflt.runtime.services.InitialisationException:
Cannot find class
'org.apache.isis.tck.dom.refs.AssociatedEntitiesRepository' for service
  at
org.apache.isis.runtimes.dflt.runtime.runner.IsisModule.provideIsisSystem(IsisModule.java:154)
  at
org.apache.isis.runtimes.dflt.runtime.runner.IsisModule.provideIsisSystem(IsisModule.java:154)
  while locating org.apache.isis.runtimes.dflt.runtime.system.IsisSystem

1 error
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987)
    at
com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
    at
org.apache.isis.runtimes.dflt.webapp.IsisWebAppBootstrapper.contextInitialized(IsisWebAppBootstrapper.java:113)
    at
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:549)
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
    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.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 runjettyrun.Bootstrap.main(Bootstrap.java:97)
Caused by:
org.apache.isis.runtimes.dflt.runtime.services.InitialisationException:
Cannot find class
'org.apache.isis.tck.dom.refs.AssociatedEntitiesRepository' for service
    at
org.apache.isis.runtimes.dflt.runtime.services.ServicesInstallerFromConfiguration.loadClass(ServicesInstallerFromConfiguration.java:162)
    at
org.apache.isis.runtimes.dflt.runtime.services.ServicesInstallerFromConfiguration.createService(ServicesInstallerFromConfiguration.java:145)
    at
org.apache.isis.runtimes.dflt.runtime.services.ServicesInstallerFromConfiguration.appendConfiguredServices(ServicesInstallerFromConfiguration.java:104)
    at
org.apache.isis.runtimes.dflt.runtime.services.ServicesInstallerFromConfiguration.appendServices(ServicesInstallerFromConfiguration.java:84)
    at
org.apache.isis.runtimes.dflt.runtime.services.ServicesInstallerFromConfiguration.getServices(ServicesInstallerFromConfiguration.java:63)
    at
org.apache.isis.runtimes.dflt.runtime.systemusinginstallers.IsisSystemUsingInstallers.obtainServices(IsisSystemUsingInstallers.java:231)
    at
org.apache.isis.runtimes.dflt.runtime.systemusinginstallers.IsisSystemAbstract.createSessionFactory(IsisSystemAbstract.java:181)
    at
org.apache.isis.runtimes.dflt.runtime.systemusinginstallers.IsisSystemAbstract.doCreateSessionFactory(IsisSystemAbstract.java:160)
    at
org.apache.isis.runtimes.dflt.runtime.system.IsisSystemFixturesHookAbstract.init(IsisSystemFixturesHookAbstract.java:118)
    at
org.apache.isis.runtimes.dflt.runtime.runner.IsisModule.provideIsisSystem(IsisModule.java:155)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    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.InjectorImpl$4$1.call(InjectorImpl.java:978)
    at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
    ... 12 more

Checked the source tree and there is no AssociatedEntitiesRepository source
file.

The reference to AssociatedEntitiesRepository is in the isis.properties in
the WEB-INF of the restfulobjects-tck module.

Let me know if i have missed anything while doing the setup or whether we
need to fix anything.

Thanks & Regards,
Mukul

On 24 September 2012 16:33, Dan Haywood <dan@haywood-associates.co.uk>wrote:

> On 24 September 2012 06:40, mukul joshi <mukul.ashok.joshi@gmail.com>
> wrote:
>
> >
> > Thanks for the suggestions.
> >
> > I will start looking at the viewers i.e. Wicket and Restful Objects. I
> > guess an application will be required in both the areas. So will start
> with
> > a sample application and then see how these viewers are built/triggered.
>
>
> What we've been moving to - slowly - is to move these sample applications
> into the "tck" application (named after the technology compatibility kits
> that formal Java specifications have).  The ideas, eventually, is to have a
> single standard application that contains all of the features supported by
> Isis (eg choices, defaults, validation, hiding, disabling, hints such as
> memberorder, autocomplete, parent/child relations, polymorphic relations,
> aggregated entities, custom value types etc... );such that each component
> can use this same TCK app to write tests against.  (It might be possible in
> the future to write contract tests [1] so we can be assured that the
> behaviour of different implementations of the objectstore API, say, is
> identical.
>
> But in the first event, just to say that the tck app is the thing to use as
> your sample app.  You'll find that there is wicket-tck and
> restfulobjects-tck projects that will boot up that app in their respective
> viewers.
>
>
>
> > A
> > selenium script will be applicable to both viewers - or will need
> > customisation for both the viewers?
> >
>
> I can see selenium as being relevant to Wicket, but I don't see it as being
> relevant to the RestfulObjects viewer.  For the latter, you can use the RO
> applib.  Some of the existing tests already use this.
>
> Even for the Wicket viewer, it might be possible to avoid the weight and
> complexity of Selenium by instead using a lighter-weight testing library.
>  On a (non-Isis) project I was on last year we used JSoup [2] with some
> success.  It's licensed under MIT, so is compatible with ASF.
>
>
>
> > What is required to use the latest Restful Objects spec? Do we need to
> > implement the latest spec?
> >
>
> Yes, we need to implement the latest spec.   The spec currently is at
> v1.0.0, but the Isis implementation (ie viewer/restfulobjects) is currently
> at v0.52.  In fact, given I wrote the spec, it'd be rather good if someone
> other than me did the remainder of the implementation + tests ;-)
>
>
> If you prefer to use git over svn, you might find it easiest to work using
> a fork from my github copy of Isis [3]
>
> Cheers
> Dan
>
> [1] http://martinfowler.com/bliki/IntegrationContractTest.html
> [2] http://jsoup.org/
> [3] https://github.com/danhaywood/apache-isis
>
>
>
>
> > Thanks & Regards,
> > Mukul
> >
> > On 20 September 2012 23:29, Dan Haywood <dan@haywood-associates.co.uk
> > >wrote:
> >
> > > Hi Mukul / anyone else...
> > >
> > > On 4 September 2012 11:17, mukul joshi <mukul.ashok.joshi@gmail.com>
> > > wrote:
> > >
> > > >
> > > > Let me know if you need help in any areas where the design is clear
> and
> > > the
> > > > changes are clear cut. I can start with some simple things. I have
> just
> > > > started to go through the organisation of Isis and its architecture.
> > > >
> > > >
> > > Just wanted to pick up on your offer... are there any areas of Isis in
> > > particular you feel like working on?  (Of course, not being a committer
> > > these would need to be patches attached to JIRAs; but forking from
> github
> > > makes this relatively painless to do).
> > >
> > > Right now my own interests are in the Wicket viewer, and the JDO
> > > objectstore.  So one thing that would be of help is just building some
> > new
> > > apps that use these particular components, and help test them by using
> > > them.  Or, (though this doesn't sound like fun to me), writing some
> > > end-to-end regression tests for the wicket viewer using Selenium or
> JSoup
> > > or something similar will be needed at some point.
> > >
> > > Another area that needs work is the Restful Objects viewer... currently
> > it
> > > doesn't implement the spec 1.0.0.  That's a nice little discrete area
> to
> > > work on.
> > >
> > > Alternatively, there's a bunch of "newbie" issues up on Jira [1].  A
> lot
> > of
> > > them are to do with building "off-the-shelf" domain services and/or
> > > entities.  Would all be valuable stuff.
> > >
> > > Let me know if any of this sounds of interest
> > >
> > > Dan
> > >
> > > PS: other committers... please feel free to suggest other ideas!
> > >
> > > [1] newbie issues query -
> > >
> > >
> >
> https://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12318871
> > >
> > >
> > > Thanks & Regards,
> > > > Mukul
> > > >
> > > >
> > >
> >
>

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