[ 
https://issues.apache.org/jira/browse/ISIS-1401?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Haywood resolved ISIS-1401.
-------------------------------
    Resolution: Won't Fix

> NPE when wrapping call to FixtureScripts#runFixtureScript for a newly 
> instantiated FixtureScript 
> -------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-1401
>                 URL: https://issues.apache.org/jira/browse/ISIS-1401
>             Project: Isis
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.12.1
>            Reporter: Oscar Bou
>            Assignee: Dan Haywood
>             Fix For: 1.13.0
>
>
> The FixtureScripts#runFixtureScript action is marked as "Prototyping", and 
> basically there's no need to invoke it wrapped, but perhaps is relevant for 
> other use cases.
> When executing something like:
> this.wrap(this.fixtureScripts).runFixtureScript(
>                   new MyFixtureScript(), null);
> A NullPointerException is thrown, as for the execution on 
> DomainObjectInvokationHandler#handleActionMethod requires to create an 
> adapter for the contributee (line 590):
> [java]
> contributeeAdapter = adapterFor(contributed);
> [/java]
> As the MyFixtureScript is a ViewModel, this will be delegated to 
> FixtureScript#viewModelMemento() which in fact will contain:
> [java]
>     @Programmatic
>     @Override
>     public String viewModelMemento() {
>         return fixtureScripts.mementoFor(this);
>     }
> [/java]
> Being "fixtureScripts" null.
> Not sure how to solve this, as basically the FixtureScript requires to be 
> injected before executing it.
> As perhaps this will be the only method that can potentially been invoked 
> before the FixtureScript being wrapped on the "FixtureScripts" service, an 
> easy solution would be to check if the "fixtureScript" variable is null and, 
> in that case, inject its own instance on this same method.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to