[jira] [Updated] (ISIS-2010) Define a formal API for programmatic interactions between modules

2019-07-18 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2010:
--
Fix Version/s: (was: 2.0.0)
   2.0.3

> Define a formal API for programmatic interactions between modules
> -
>
> Key: ISIS-2010
> URL: https://issues.apache.org/jira/browse/ISIS-2010
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> One idea:
> - NatureOfService.DOMAIN_API vs NatureOfService.DOMAIN (latter interpreted as 
> IMPL)
> For the API, can wrap (and perhaps are auto-wrapped)
> For the IMPL, are not wrapped, and don't introspect the methods to create 
> actions.
> It's not clear to me which of the Isis services should be DOMAIN_API vs 
> DOMAIN.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)


[jira] [Commented] (ISIS-2151) Pull in Incode's security modul as an extension

2019-07-11 Thread Dan Haywood (JIRA)


[ 
https://issues.apache.org/jira/browse/ISIS-2151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16882685#comment-16882685
 ] 

Dan Haywood commented on ISIS-2151:
---

This is a nice idea.

 

Other candidates are command, auditing and publishingMq.  They do all have 
small issues things that I'd like to address, but perhaps treating them as 
extensions is the best way to tackle this.

 

> Pull in Incode's security modul as an extension
> ---
>
> Key: ISIS-2151
> URL: https://issues.apache.org/jira/browse/ISIS-2151
> Project: Isis
>  Issue Type: Improvement
>Reporter: Andi Huber
>Assignee: Andi Huber
>Priority: Major
> Fix For: 2.0.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.14#76016)


[jira] [Updated] (ISIS-2148) Fix snags for demo & example apps, move them to their own repos

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2148:
--
Summary: Fix snags for demo & example apps, move them to their own repos  
(was: Move demo & example apps to their own repos, and fix "snags")

> Fix snags for demo & example apps, move them to their own repos
> ---
>
> Key: ISIS-2148
> URL: https://issues.apache.org/jira/browse/ISIS-2148
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>
> The repos are:
>  * apache/isis-app-demo
>  * apache/isis-app-helloworld
>  * apache/isis-app-simpleapp
> For now, I *haven't* created a repo for "smoketest", I think this will 
> probably stay where it is.
>  
> Will also use this ticket to log any issues with the apps, or minor cleanup.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2146) New mixins to expose the objectType and objectIdentifier as properties in the "metadata" fieldset.

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2146.
---
Resolution: Fixed

> New mixins to expose the objectType and objectIdentifier as properties in the 
> "metadata" fieldset.
> --
>
> Key: ISIS-2146
> URL: https://issues.apache.org/jira/browse/ISIS-2146
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 2.0.0
>
>
> This is useful info, but it also guarantees that there will be at least two 
> properties in the "metadata" fieldset.
> This is useful for ISIS-2147.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2147) Provide a more sophisticated "fallback" layout if none is available.

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2147.
---
Resolution: Fixed

> Provide a more sophisticated "fallback" layout if none is available.
> 
>
> Key: ISIS-2147
> URL: https://issues.apache.org/jira/browse/ISIS-2147
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 2.0.0
>
>
> This is based on one that we have come to use in Estatio:
> row-1: domain-object
> row-2
>     col-4:
>         tabs: "identity" / "other" / "metadata"
>         fieldset: "details"
>     col-8:
>         collections
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2145) Move the Object_downloadMetaModelXml into the applib.

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2145.
---
Resolution: Fixed

> Move the Object_downloadMetaModelXml into the applib.
> -
>
> Key: ISIS-2145
> URL: https://issues.apache.org/jira/browse/ISIS-2145
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 2.0.0
>
>
> It doesn't depend on any framework internals, and all of the other mixins are 
> in the applib also.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2149) Moves static files (applib xsd, scheme xsd) into _partials so published automatically.

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2149.
---
Resolution: Fixed

> Moves static files (applib xsd, scheme xsd) into _partials so published 
> automatically.
> --
>
> Key: ISIS-2149
> URL: https://issues.apache.org/jira/browse/ISIS-2149
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 2.0.0
>
>
> (this is really part of ISIS-2062)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2144) Persistable mixins not showing in the demo apps.

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2144.
---
Resolution: Fixed

> Persistable mixins not showing in the demo apps.
> 
>
> Key: ISIS-2144
> URL: https://issues.apache.org/jira/browse/ISIS-2144
> Project: Isis
>  Issue Type: Bug
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 2.0.0
>
>
> This is because they are not scanned.
> I can put in a quick fix, but probably Andi should look at it for the "best" 
> solution.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2149) Moves static files (applib xsd, scheme xsd) into _partials so published automatically.

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2149:
-

 Summary: Moves static files (applib xsd, scheme xsd) into 
_partials so published automatically.
 Key: ISIS-2149
 URL: https://issues.apache.org/jira/browse/ISIS-2149
 Project: Isis
  Issue Type: Improvement
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


(this is really part of ISIS-2062)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2148) Move demo & example apps to their own repos, and fix "snags"

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2148:
-

 Summary: Move demo & example apps to their own repos, and fix 
"snags"
 Key: ISIS-2148
 URL: https://issues.apache.org/jira/browse/ISIS-2148
 Project: Isis
  Issue Type: Improvement
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


The repos are:
 * apache/isis-app-demo
 * apache/isis-app-helloworld
 * apache/isis-app-simpleapp

For now, I *haven't* created a repo for "smoketest", I think this will probably 
stay where it is.

 

Will also use this ticket to log any issues with the apps, or minor cleanup.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2147) Provide a more sophisticated "fallback" layout if none is available.

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2147:
-

 Summary: Provide a more sophisticated "fallback" layout if none is 
available.
 Key: ISIS-2147
 URL: https://issues.apache.org/jira/browse/ISIS-2147
 Project: Isis
  Issue Type: Improvement
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


This is based on one that we have come to use in Estatio:

row-1: domain-object

row-2

    col-4:

        tabs: "identity" / "other" / "metadata"

        fieldset: "details"

    col-8:

        collections

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2146) New mixins to expose the objectType and objectIdentifier as properties in the "metadata" fieldset.

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2146:
-

 Summary: New mixins to expose the objectType and objectIdentifier 
as properties in the "metadata" fieldset.
 Key: ISIS-2146
 URL: https://issues.apache.org/jira/browse/ISIS-2146
 Project: Isis
  Issue Type: Improvement
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


This is useful info, but it also guarantees that there will be at least two 
properties in the "metadata" fieldset.

This is useful for ISIS-2147.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2145) Move the Object_downloadMetaModelXml into the applib.

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2145:
-

 Summary: Move the Object_downloadMetaModelXml into the applib.
 Key: ISIS-2145
 URL: https://issues.apache.org/jira/browse/ISIS-2145
 Project: Isis
  Issue Type: Improvement
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


It doesn't depend on any framework internals, and all of the other mixins are 
in the applib also.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2144) Persistable mixins not showing in the demo apps.

2019-07-08 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2144:
-

 Summary: Persistable mixins not showing in the demo apps.
 Key: ISIS-2144
 URL: https://issues.apache.org/jira/browse/ISIS-2144
 Project: Isis
  Issue Type: Bug
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 2.0.0


This is because they are not scanned.

I can put in a quick fix, but probably Andi should look at it for the "best" 
solution.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ISIS-2041) LogonFixture is deprecated, replace by FixtureScript (see also ISIS-2133)

2019-07-08 Thread Dan Haywood (JIRA)


[ 
https://issues.apache.org/jira/browse/ISIS-2041?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16880274#comment-16880274
 ] 

Dan Haywood commented on ISIS-2041:
---

I don't think we need to replace LogonFixture, only a documentation fix to say 
to use SudoService instead.

> LogonFixture is deprecated, replace by FixtureScript (see also ISIS-2133)
> -
>
> Key: ISIS-2041
> URL: https://issues.apache.org/jira/browse/ISIS-2041
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Reporter: Andi Huber
>Assignee: Andi Huber
>Priority: Major
> Fix For: 2.0.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2041) LogonFixture is deprecated, replace by FixtureScript (see also ISIS-2133)

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2041:
--
Summary: LogonFixture is deprecated, replace by FixtureScript (see also 
ISIS-2133)  (was: LogonFixture is deprecated, replace by FixtureScript)

> LogonFixture is deprecated, replace by FixtureScript (see also ISIS-2133)
> -
>
> Key: ISIS-2041
> URL: https://issues.apache.org/jira/browse/ISIS-2041
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Reporter: Andi Huber
>Assignee: Andi Huber
>Priority: Major
> Fix For: 2.0.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2011) [superceded] Merge up AppManifest2 into AppManifest, untangle those builders

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2011.
---
Resolution: Fixed

This has been superceded by the work to bootstrap on top of Spring.  The 
AppManifest interface no longer exists, instead by convention we define an 
AppManifest that in essence declares a Spring configuration(.xml), but using 
@Import and @ComponentScan.

> [superceded] Merge up AppManifest2 into AppManifest, untangle those builders
> 
>
> Key: ISIS-2011
> URL: https://issues.apache.org/jira/browse/ISIS-2011
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>
> perhaps there's a deeper composite pattern (we already have 
> ModuleOrSomethingAbstract ... I think that AppManifest might be the root of a 
> hierarchy with a common supertype).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (ISIS-2011) [superceded] Merge up AppManifest2 into AppManifest, untangle those builders

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood closed ISIS-2011.
-

> [superceded] Merge up AppManifest2 into AppManifest, untangle those builders
> 
>
> Key: ISIS-2011
> URL: https://issues.apache.org/jira/browse/ISIS-2011
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>
> perhaps there's a deeper composite pattern (we already have 
> ModuleOrSomethingAbstract ... I think that AppManifest might be the root of a 
> hierarchy with a common supertype).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2011) [superceded] Merge up AppManifest2 into AppManifest, untangle those builders

2019-07-08 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2011:
--
Summary: [superceded] Merge up AppManifest2 into AppManifest, untangle 
those builders  (was: Merge up AppManifest2 into AppManifest, untangle those 
builders)

> [superceded] Merge up AppManifest2 into AppManifest, untangle those builders
> 
>
> Key: ISIS-2011
> URL: https://issues.apache.org/jira/browse/ISIS-2011
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>
> perhaps there's a deeper composite pattern (we already have 
> ModuleOrSomethingAbstract ... I think that AppManifest might be the root of a 
> hierarchy with a common supertype).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2122) per mailing list: extend the metamodel for adviseXxx(), a softer version of validateXxx().

2019-06-16 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2122:
-

 Summary: per mailing list: extend the metamodel for adviseXxx(), a 
softer version of validateXxx().
 Key: ISIS-2122
 URL: https://issues.apache.org/jira/browse/ISIS-2122
 Project: Isis
  Issue Type: Improvement
Reporter: Dan Haywood
 Fix For: 2.0.3


more discussion at

[https://lists.apache.org/thread.html/bd8a407ceb0e07cc42c1b7eb85e266817b802a11fccf05819c9c4812@%3Cusers.isis.apache.org%3E]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2062) Convert website to use Antora

2019-05-30 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2062:
--
Fix Version/s: (was: 2.4.0)
   2.0.0

> Convert website to use Antora
> -
>
> Key: ISIS-2062
> URL: https://issues.apache.org/jira/browse/ISIS-2062
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2121) Change layout of datetime widget so that is fully visible in sidebar

2019-05-29 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2121:
-

 Summary: Change layout of datetime widget so that is fully visible 
in sidebar
 Key: ISIS-2121
 URL: https://issues.apache.org/jira/browse/ISIS-2121
 Project: Isis
  Issue Type: Improvement
  Components: Core: Viewer: Wicket
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 1.18.0






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-538) Improve performance of rendering lists (in Wicket viewer)

2019-05-24 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-538.
--
Resolution: Fixed

> Improve performance of rendering lists (in Wicket viewer)
> -
>
> Key: ISIS-538
> URL: https://issues.apache.org/jira/browse/ISIS-538
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.2.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> rendering a Lease, showing LeaseUnit in table (they would be in view mode).  
> Even so, we compute the choices etc, even though never used (see stack trace).
> In ScalarPanelAbstract#buildGui(), we have:
> private void buildGui() {
> 
> // REVIEW: this is nasty, both write to the same entityLink field
> // even though only one is used
> componentIfCompact = addComponentForCompact();
> componentIfRegular = addComponentForRegular();
> Brands.findUniqueNames() line: 46 
> LeaseUnit.choicesBrandName() line: 278
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not 
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: not available 
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not available 
> Method.invoke(Object, Object...) line: not available  
> MethodExtensions.invoke(Method, Object, Object[]) line: 50
> MethodExtensions.invoke(Method, Object) line: 45  
> AdapterInvokeUtils.invoke(Method, ObjectAdapter) line: 44 
> PropertyChoicesFacetViaMethod.getChoices(ObjectAdapter, SpecificationLoader) 
> line: 72 
> OneToOneAssociationImpl.getChoices(ObjectAdapter) line: 248   
> ScalarModel$Kind$1.getChoices(ScalarModel, ObjectAdapter[]) line: 163 
> ScalarModel.getChoices(ObjectAdapter[]) line: 584 
> ValueChoicesSelect2Panel.getChoiceMementos(ObjectAdapter[]) line: 93  
> ValueChoicesSelect2Panel.setChoices(ObjectAdapter[]) line: 194
> ValueChoicesSelect2Panel.addComponentForRegular() line: 76
> ValueChoicesSelect2Panel(ScalarPanelAbstract).buildGui() line: 178
> ValueChoicesSelect2Panel(ScalarPanelAbstract).onBeforeRender() line: 147  
> ValueChoicesSelect2Panel(Component).internalBeforeRender() line: 923  
> ValueChoicesSelect2Panel(Component).beforeRender() line: 991  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (ISIS-1806) [WON'T FIX] Reinstate ability to bookmark action invocations

2019-05-20 Thread Dan Haywood (JIRA)


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

Dan Haywood closed ISIS-1806.
-
Resolution: Fixed

> [WON'T FIX] Reinstate ability to bookmark action invocations 
> -
>
> Key: ISIS-1806
> URL: https://issues.apache.org/jira/browse/ISIS-1806
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.15.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> broken in 1.15.0, and commented out in 1.16.0 to avoid user failures.
> The issue is that the BookmarkTreeNode infers a pageType of ACTION_PROMPT, 
> which causes the ActionPromptPage to be rendered.  This in turn has a 
> ComponentType of ACTION_PARAMETERS.  
> However, the ActionParametersPromptPanelFactory explicitly does not match for 
> actions that take no arguments, and so the only component found is 
> UnknownPanel which - of course - fails to add the correct 
> ActionParametersPanel component.
> This whole area needs reworking ... the ActionParametersPanel now no-longer 
> supports being invoked with no-args or with populated n-args and 
> automatically resolving to the result of the action invocation.  
> Instead, will need to move the action execution stuff into the implementation 
> of the AbstractLink that is created within the BookmarkedPagesPanel.
> ~~
> or: maybe we just keep this functionality commented out; is it used anyway ?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ISIS-1806) [WON'T FIX] Reinstate ability to bookmark action invocations

2019-05-20 Thread Dan Haywood (JIRA)


[ 
https://issues.apache.org/jira/browse/ISIS-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16843957#comment-16843957
 ] 

Dan Haywood commented on ISIS-1806:
---

have decided I'm not even gonna delete the commented out code.

> [WON'T FIX] Reinstate ability to bookmark action invocations 
> -
>
> Key: ISIS-1806
> URL: https://issues.apache.org/jira/browse/ISIS-1806
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.15.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> broken in 1.15.0, and commented out in 1.16.0 to avoid user failures.
> The issue is that the BookmarkTreeNode infers a pageType of ACTION_PROMPT, 
> which causes the ActionPromptPage to be rendered.  This in turn has a 
> ComponentType of ACTION_PARAMETERS.  
> However, the ActionParametersPromptPanelFactory explicitly does not match for 
> actions that take no arguments, and so the only component found is 
> UnknownPanel which - of course - fails to add the correct 
> ActionParametersPanel component.
> This whole area needs reworking ... the ActionParametersPanel now no-longer 
> supports being invoked with no-args or with populated n-args and 
> automatically resolving to the result of the action invocation.  
> Instead, will need to move the action execution stuff into the implementation 
> of the AbstractLink that is created within the BookmarkedPagesPanel.
> ~~
> or: maybe we just keep this functionality commented out; is it used anyway ?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2084) Allow upload of snapshot builds to repo.incode.work

2019-05-20 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2084.
---
Resolution: Fixed

> Allow upload of snapshot builds to repo.incode.work
> ---
>
> Key: ISIS-2084
> URL: https://issues.apache.org/jira/browse/ISIS-2084
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2120) Extend DomainServiceLayout to specify menuName, and use to "slot into" appropriate part of menubars.layout.xml

2019-05-20 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2120:
-

 Summary: Extend DomainServiceLayout to specify menuName, and use 
to "slot into" appropriate part of menubars.layout.xml
 Key: ISIS-2120
 URL: https://issues.apache.org/jira/browse/ISIS-2120
 Project: Isis
  Issue Type: New Feature
Affects Versions: 1.17.0
Reporter: Dan Haywood
 Fix For: 1.18.0






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2084) Allow upload of snapshot builds to repo.incode.work

2019-05-20 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2084:
--
Summary: Allow upload of snapshot builds to repo.incode.work  (was: Extend 
DomainServiceLayout to specify menuName, and use to "slot into" appropriate 
part of menubars.layout.xml)

> Allow upload of snapshot builds to repo.incode.work
> ---
>
> Key: ISIS-2084
> URL: https://issues.apache.org/jira/browse/ISIS-2084
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2056) Fix Sonar Findings

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2056.
---
Resolution: Fixed

> Fix Sonar Findings
> --
>
> Key: ISIS-2056
> URL: https://issues.apache.org/jira/browse/ISIS-2056
> Project: Isis
>  Issue Type: Improvement
>Reporter: Jörg Rade
>Priority: Major
> Fix For: 1.18.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1984) Extend RO representation to show property format or type in object members

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1984:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Extend RO representation to show property format or type in object members
> --
>
> Key: ISIS-1984
> URL: https://issues.apache.org/jira/browse/ISIS-1984
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
> Attachments: contactnumber21.json
>
>
> See attached json representation of a contact number
> "x-isis-format": "string"
> is present in string properties
> however, this attribute is not on object properties.
> It would be very benefitial to have all I need to render that property in 
> this page only. Ideally, something like
> "x-isis-returntype" with the url to the domain-type (e.g. 
> [http://localhost:8080/restful/domain-types/org.incode.eurocommercial.contactapp.dom.number.ContactNumber/properties/owner])
> for now, I will render any non-string as a generic catch all object viewer
>  
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1980) Unexpected error when accessing collection through wrapper.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1980:
--
Fix Version/s: (was: 1.18.0)
   2.1.4

> Unexpected error when accessing collection through wrapper.
> ---
>
> Key: ISIS-1980
> URL: https://issues.apache.org/jira/browse/ISIS-1980
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.16.2
>Reporter: Andi Huber
>Priority: Major
> Fix For: 2.1.4
>
>
> As reported by Gabriel Terwesten  [1]
> Inside of integration tests i can’t seem to access collections through the 
> getter if the object is wrapped. From the documentation I got the impression 
> that that should be possible. 
> This is the offending line:
> assertThat(wrap(food).getCustomUnits()).hasSize(1);
> {noformat}
> IllegalArgumentException: d.m.c.d.i.Food#customUnits: more than one 
> ImperativeFacet for method getCustomUnits , with inconsistent intents: ...
> at o.a.i.c.m.facets.ImperativeFacet$Util.getIntent(ImperativeFacet.java:167)
> {noformat}
> [1] 
> https://lists.apache.org/thread.html/cd92d8cd28ae877104fc965f83ca90b98e2e8188f464b65181e79a27@%3Cusers.isis.apache.org%3E



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2004) Concurrent Modification Exception in grid service

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2004:
--
Fix Version/s: (was: 1.18.0)
   2.1.4

> Concurrent Modification Exception in grid service
> -
>
> Key: ISIS-2004
> URL: https://issues.apache.org/jira/browse/ISIS-2004
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Trivial
> Fix For: 2.1.4
>
>
> This occurred when invoking "latestFastnetImportLog" within Estatio (having 
> just restarted, in estatio-test - prototype mode)
> {code}
> 11:20:44,677 [RequestCycleExtra ] Handling the following exception
> org.apache.wicket.WicketRuntimeException: Error attaching this container for 
> rendering: [RepeatingViewWithDynamicallyVisibleContent [Component id = 
> tabGroups]]
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1837)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at 
> org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:143)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at 
> org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:143)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at 
> org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:143)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1825)
>   at org.apache.wicket.Component.onBeforeRender(Component.java:3916)
>   at org.apache.wicket.Page.onBeforeRender(Page.java:801)
>   at org.apache.wicket.Component.internalBeforeRender(Component.java:950)
>   at org.apache.wicket.Component.beforeRender(Component.java:1018)
>   at 
> org.apache.wicket.Component.internalPrepareForRender(Component.java:2236)
>   at org.apache.wicket.Page.internalPrepareForRender(Page.java:242)
>   at org.apache.wicket.Component.render(Component.java:2325)
>   at org.apache.wicket.Page.renderPage(Page.java:1018)

[jira] [Updated] (ISIS-1973) "republish" mixin - action button is rendered but attempting to invoke throws an exception

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1973:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> "republish" mixin - action button is rendered but attempting to invoke throws 
> an exception
> --
>
> Key: ISIS-1973
> URL: https://issues.apache.org/jira/browse/ISIS-1973
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> h2. To reproduce:
>  * login with estatio-user-it, ensure has "estatio-user" role but doesn't 
> have "estatio-superuser" role. 
> - navigate to 
> http://estatiotest.int.prd.ecpnv.com/wicket/entity/org.estatio.dom.invoice.Invoice:106874
> - the "republish" action (contributed from 
> - when invoke, get an exception in the UI, with stack trace below:
>  
> message shown to user:
> Reason: Not authorized to view. Identifier: 
> org.isisaddons.module.publishmq.dom.jdo.events.PublishedEvent_republish#$$()
> stack trace:
> {code}
> Caused by: org.apache.isis.core.commons.exceptions.IsisApplicationException: 
> org.apache.isis.applib.services.wrapper.HiddenException: Reason: Not 
> authorized to view. Identifier: 
> org.isisaddons.module.publishmq.dom.jdo.events.PublishedEvent_republish#$$()
>  at 
> org.apache.isis.core.commons.lang.ThrowableExtensions.throwWithinIsisException(ThrowableExtensions.java:55)
>  at 
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$2.execute(ActionInvocationFacetForDomainEventAbstract.java:303)
>  at 
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$2.execute(ActionInvocationFacetForDomainEventAbstract.java:222)
>  at 
> org.apache.isis.applib.services.iactn.Interaction.executeInternal(Interaction.java:173)
>  at 
> org.apache.isis.applib.services.iactn.Interaction.execute(Interaction.java:143)
>  at 
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.doInvoke(ActionInvocationFacetForDomainEventAbstract.java:310)
>  at 
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$1.execute(ActionInvocationFacetForDomainEventAbstract.java:164)
>  at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:142)
>  at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:132)
>  at 
> org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.executeWithinTransaction(PersistenceSessionServiceInternalDefault.java:192)
>  at 
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:160)
>  at 
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeInternal(ObjectActionDefault.java:400)
>  at 
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionMixedIn.execute(ObjectActionMixedIn.java:230)
>  at 
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeWithRuleChecking(ObjectActionDefault.java:370)
>  at 
> org.apache.isis.viewer.wicket.model.models.ActionModel.executeAction(ActionModel.java:460)
>  at 
> org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:439)
>  at 
> org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:76)
>  at 
> org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:135)
>  at 
> org.apache.isis.viewer.wicket.model.models.ActionModel.execute(ActionModel.java:569)
>  at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionFormExecutorStrategy.obtainResultAdapter(ActionFormExecutorStrategy.java:71)
>  at 
> org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.obtainResultAdapter(FormExecutorDefault.java:514)
>  at 
> org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.executeAndProcessResults(FormExecutorDefault.java:147)
>  at 
> org.apache.isis.viewer.wicket.ui.components.widgets.linkandlabel.ActionLinkFactoryAbstract.onClick(ActionLinkFactoryAbstract.java:214)
>  at 
> org.apache.isis.viewer.wicket.ui.components.widgets.linkandlabel.ActionLinkFactoryAbstract.access$100(ActionLinkFactoryAbstract.java:71)
>  at 
> org.apache.isis.viewer.wicket.ui.components.widgets.linkandlabel.ActionLinkFactoryAbstract$1.performOnClick(ActionLinkFactoryAbstract.java:147)
>  at 
> 

[jira] [Closed] (ISIS-1938) [WON'T FIX] Unable to specify FakeDataModule as a dependency using ModuleAbstract#withAdditionalDependencies

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood closed ISIS-1938.
-
Resolution: Won't Fix

This is all being reworked for v2 / SB

> [WON'T FIX] Unable to specify FakeDataModule as a dependency using 
> ModuleAbstract#withAdditionalDependencies
> 
>
> Key: ISIS-1938
> URL: https://issues.apache.org/jira/browse/ISIS-1938
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> as a workaround, had to override getDependencies()
> {code:java}
> java.lang.IllegalArgumentException: Module domainapp.modules.PetClinicModule 
> has returned class org.isisaddons.module.fakedata.FakeDataModule from 
> getAdditionalModules(). This class implements 'Module' interface so should 
> instead be returned from getDependencies()
> at 
> org.apache.isis.applib.Module$Util.transitiveAdditionalModulesOf(Module.java:150)
> at 
> org.apache.isis.applib.ModuleOrBuilderAbstract.withTransitiveFrom(ModuleOrBuilderAbstract.java:66)
> at 
> org.apache.isis.applib.AppManifestAbstract2$Builder.(AppManifestAbstract2.java:99)
> at 
> org.apache.isis.applib.AppManifestAbstract2$Builder.forModule(AppManifestAbstract2.java:92)
> at 
> org.apache.isis.core.runtime.headless.IsisSystemBootstrapper.(IsisSystemBootstrapper.java:60)
> at 
> org.apache.isis.core.runtime.headless.HeadlessWithBootstrappingAbstract.(HeadlessWithBootstrappingAbstract.java:94)
> at 
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract3.(IntegrationTestAbstract3.java:160)
> at 
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract3.(IntegrationTestAbstract3.java:154)
> at 
> domainapp.modules.impl.PetClinicModuleIntegTestAbstract.(PetClinicModuleIntegTestAbstract.java:34)
> at 
> domainapp.modules.impl.visits.integtests.Visit_enterOutcome_IntegTest.(Visit_enterOutcome_IntegTest.java:37)
> 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:423)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:217)
> at 
> org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:266)
> at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:263)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1938) [WON'T FIX] Unable to specify FakeDataModule as a dependency using ModuleAbstract#withAdditionalDependencies

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1938:
--
Summary: [WON'T FIX] Unable to specify FakeDataModule as a dependency using 
ModuleAbstract#withAdditionalDependencies  (was: Unable to specify 
FakeDataModule as a dependency using ModuleAbstract#withAdditionalDependencies)

> [WON'T FIX] Unable to specify FakeDataModule as a dependency using 
> ModuleAbstract#withAdditionalDependencies
> 
>
> Key: ISIS-1938
> URL: https://issues.apache.org/jira/browse/ISIS-1938
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> as a workaround, had to override getDependencies()
> {code:java}
> java.lang.IllegalArgumentException: Module domainapp.modules.PetClinicModule 
> has returned class org.isisaddons.module.fakedata.FakeDataModule from 
> getAdditionalModules(). This class implements 'Module' interface so should 
> instead be returned from getDependencies()
> at 
> org.apache.isis.applib.Module$Util.transitiveAdditionalModulesOf(Module.java:150)
> at 
> org.apache.isis.applib.ModuleOrBuilderAbstract.withTransitiveFrom(ModuleOrBuilderAbstract.java:66)
> at 
> org.apache.isis.applib.AppManifestAbstract2$Builder.(AppManifestAbstract2.java:99)
> at 
> org.apache.isis.applib.AppManifestAbstract2$Builder.forModule(AppManifestAbstract2.java:92)
> at 
> org.apache.isis.core.runtime.headless.IsisSystemBootstrapper.(IsisSystemBootstrapper.java:60)
> at 
> org.apache.isis.core.runtime.headless.HeadlessWithBootstrappingAbstract.(HeadlessWithBootstrappingAbstract.java:94)
> at 
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract3.(IntegrationTestAbstract3.java:160)
> at 
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract3.(IntegrationTestAbstract3.java:154)
> at 
> domainapp.modules.impl.PetClinicModuleIntegTestAbstract.(PetClinicModuleIntegTestAbstract.java:34)
> at 
> domainapp.modules.impl.visits.integtests.Visit_enterOutcome_IntegTest.(Visit_enterOutcome_IntegTest.java:37)
> 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:423)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:217)
> at 
> org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:266)
> at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:263)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1937) NPE when render domain entity for first time that has contributed action on contributed collection.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1937:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> NPE when render domain entity for first time that has contributed action on 
> contributed collection.
> ---
>
> Key: ISIS-1937
> URL: https://issues.apache.org/jira/browse/ISIS-1937
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> for example
> [https://github.com/danhaywood/busydevtutorial]
> in Pets.layout.xml, remove the "visits" collection to reproduce.  The 
> contributed Pet_bookVisit action causes the issue because its "owner" is not 
> declared and so returns null.
>  
> {code:java}
> Caused by: java.lang.NullPointerException
> at 
> org.apache.isis.core.metamodel.services.grid.bootstrap3.GridSystemServiceBS3.addActionTo(GridSystemServiceBS3.java:661)
> at 
> org.apache.isis.core.metamodel.services.grid.bootstrap3.GridSystemServiceBS3.validateAndNormalize(GridSystemServiceBS3.java:529)
> at 
> org.apache.isis.core.metamodel.services.grid.GridSystemServiceAbstract.normalize(GridSystemServiceAbstract.java:165)
> at 
> org.apache.isis.core.metamodel.services.grid.GridServiceDefault.normalize(GridServiceDefault.java:102)
> at 
> org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault.load(GridFacetDefault.java:75)
> at 
> org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault.getGrid(GridFacetDefault.java:65)
> at 
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel.addPropertyColumnsIfRequired(CollectionContentsAsAjaxTablePanel.java:170)
> at 
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel.buildGui(CollectionContentsAsAjaxTablePanel.java:102)
> at 
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel.onInitialize(CollectionContentsAsAjaxTablePanel.java:80)
> at org.apache.wicket.Component.fireInitialize(Component.java:878)
> at 
> org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:1070)
> at org.apache.wicket.MarkupContainer.addedComponent(MarkupContainer.java:1047)
> at org.apache.wicket.MarkupContainer.add(MarkupContainer.java:241)
> at org.apache.wicket.MarkupContainer.addOrReplace(MarkupContainer.java:265)
> at{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1936) FK exception on delete action not rendered to user correctly.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1936:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> FK exception on delete action not rendered to user correctly.
> -
>
> Key: ISIS-1936
> URL: https://issues.apache.org/jira/browse/ISIS-1936
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> To reproduce:
>  * for simpleapp, introduce a child entity (not cascade)
>  * delete parent entity to force an FK exception (due to child entities still 
> present)
> this results in a 500 html exception (RestartResponseException).  the FK 
> exception messages are queued and only rendered subsequently.
> (Also, see two exceptions queued, one warning - orange - and one error - red).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1926) Why do we create an ActionInvocationDto for a mixin property anyway ?

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1926:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Why do we create an ActionInvocationDto for a mixin property anyway ?
> -
>
> Key: ISIS-1926
> URL: https://issues.apache.org/jira/browse/ISIS-1926
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> see ISIS-1925



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1873) Resilience: if hideXxx, disableXxx or validateXxx method throws NPE, then assume veto and log a WARNing.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1873:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Resilience: if hideXxx, disableXxx or validateXxx method throws NPE, then 
> assume veto and log a WARNing.
> 
>
> Key: ISIS-1873
> URL: https://issues.apache.org/jira/browse/ISIS-1873
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.1
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> Currently the framework doesn't degrade gracefully.
> For example, had a coding error in a hideXxx() method.
> This resulted in the error page, rather than simply hide the relevant member.
> {code:java}
> org.eclipse.jetty.util.thread.QueuedThreadPool#runJob(QueuedThreadPool.java:672)
> org.eclipse.jetty.util.thread.QueuedThreadPool$2#run(QueuedThreadPool.java:590)
> java.lang.Thread#run(Thread.java:745)
> Caused by:
> java.lang.NullPointerException
> org.isisaddons.module.command.dom.CommandJdo#hideReplayStateFailureReason(CommandJdo.java:386)
> sun.reflect.NativeMethodAccessorImpl#invoke0(NativeMethodAccessorImpl.java:-2)
> sun.reflect.NativeMethodAccessorImpl#invoke(NativeMethodAccessorImpl.java:62)
> sun.reflect.DelegatingMethodAccessorImpl#invoke(DelegatingMethodAccessorImpl.java:43)
> java.lang.reflect.Method#invoke(Method.java:498)
> org.apache.isis.core.commons.lang.MethodExtensions#invoke(MethodExtensions.java:53)
> org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils#invoke(ObjectAdapter.java:38{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1898) Use Joda Interval for LocalDate collection parameter

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1898:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Use Joda Interval for LocalDate collection parameter
> 
>
> Key: ISIS-1898
> URL: https://issues.apache.org/jira/browse/ISIS-1898
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.1
>Reporter: Sander Ginn
>Priority: Major
> Fix For: 2.0.3
>
>
> {code:java}
> // code placeholder
> {code}
> To accommodate to the requirement of a {{choicesXxx}}/{{autoCompleteXxx}} 
> method for a collection parameter on an action, it would be useful to be able 
> to return a Joda Interval instead of a collection of LocalDates.
> Furthermore, it is desirable that the available options are offered through 
> the date picker that is currently used for single LocalDate parameters.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1927) Invoking an action returning a non-null Blob via RO results in exception

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1927:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Invoking an action returning a non-null Blob via RO results in exception
> 
>
> Key: ISIS-1927
> URL: https://issues.apache.org/jira/browse/ISIS-1927
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> Also as per Erik on users ml
> [https://lists.apache.org/thread.html/2055cf053e713d768c36d2cf25632c8bed74bf757a4be4d3ab540b05@%3Cusers.isis.apache.org%3E]
> the second issue he reports suggests that hitting an action returning a  
> non-null Blob via RO results in an exception in OidUtils. 
>  
> {code:java}
> public static String getOidStr(final ObjectAdapter objectAdapter) {
>   final Oid oid = objectAdapter.getOid();
>   if (!(oid instanceof RootOid)) {
> throw new IllegalArgumentException("objectAdapter must be a root 
> adapter");
>   }
>   return oid.enStringNoVersion();
> }{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1883) Validate that scalar reference parameters (not value types) have a choices or autoComplete.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1883:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Validate that scalar reference parameters (not value types) have a choices or 
> autoComplete.
> ---
>
> Key: ISIS-1883
> URL: https://issues.apache.org/jira/browse/ISIS-1883
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.1
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> We do this for collection parameters already (see 
> ActionChoicesForCollectionParameterFacetFactory) but not for scalar reference 
> parameter.
> NOTE: be careful to ignore scalar VALUE parameters (such as string or date); 
> obviously they *aren't* required to have a choices or autoComplete facet.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1815) Log URL for when we get Tomcat ClientConnection closed error (which we think is mostly due to slow response and users getting tired of waiting).

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1815:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Log URL for when we get Tomcat ClientConnection closed error (which we think 
> is mostly due to slow response and users getting tired of waiting).
> 
>
> Key: ISIS-1815
> URL: https://issues.apache.org/jira/browse/ISIS-1815
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1864) Refactor EntityModel and ScalarModel so that don't unnecessarily reset scalar model properties after action invocation.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1864:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Refactor EntityModel and ScalarModel so that don't unnecessarily reset scalar 
> model properties after action invocation.
> ---
>
> Key: ISIS-1864
> URL: https://issues.apache.org/jira/browse/ISIS-1864
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> as per 
> [https://lists.apache.org/thread.html/9924509e3d3e0398e230467d80370e2f9d6dc94641aaa402db56c24e@%3Cusers.isis.apache.org%3E]
>  
> I think that the parent EntityModel shouldnt' really have this responsibility 
> of telling each of its child ScalarModel's to reset themselves. Rather, 
> perhaps it should simply instruct the ScalarModels that they are now dirty, 
> so that if and when the ScalarModels are next asked for their state (for 
> re-rendering) they then will query the underlying domain object ... but not 
> before.
>  
> Also, ScalarModel inherits from EntityModel, but I think that's not correct; 
> should factor out a common supertype for both.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1734) Enhance TitleService, return an enhanced TitleBuffer that uses TitleService for new appendTitleOf(...)

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1734:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Enhance TitleService, return an enhanced TitleBuffer that uses TitleService 
> for new appendTitleOf(...)
> --
>
> Key: ISIS-1734
> URL: https://issues.apache.org/jira/browse/ISIS-1734
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.15.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> thus:
> TitleBuffer buffer = titleService.newBuffer();



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1663) Metamodel validatoor to check: any method annotated with @Property, @Collection or @Action should be public.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1663:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Metamodel validatoor to check: any method annotated with @Property, 
> @Collection or @Action should be public.
> 
>
> Key: ISIS-1663
> URL: https://issues.apache.org/jira/browse/ISIS-1663
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1666) Inline prompt should show the name of the action

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1666:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Inline prompt should show the name of the action
> 
>
> Key: ISIS-1666
> URL: https://issues.apache.org/jira/browse/ISIS-1666
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.14.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1692) Should be more resilient if an implementation of TableColumnOrderingService returns a non-existent property name.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1692:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Should be more resilient if an implementation of TableColumnOrderingService 
> returns a non-existent property name.
> -
>
> Key: ISIS-1692
> URL: https://issues.apache.org/jira/browse/ISIS-1692
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.14.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> at least in 1.15.0-SNAPSHOT, this gave me an NPE
> eg in Estatio, because of non-existent property in TableColumnOrderingService
> {code}
>  @DomainService(nature = NatureOfService.DOMAIN)
> public static class TableColumnOrderServiceForCreditTransfer implements 
> TableColumnOrderService {
> @Override
> public List orderParented(
> final Object parent,
> final String collectionId,
> final Class collectionType,
> final List propertyIds) {
> if(parent instanceof PaymentBatch && 
> CreditTransfer.class.isAssignableFrom(collectionType)) {
> return Lists.newArrayList(
> "endToEndId",
> "seller",
> "sellerBankAccount",
> "amount",
> "remittanceInformation"
> );
> }
> return null;
> }
> @Override
> public List orderStandalone(final Class collectionType, 
> final List propertyIds) {
> return null;
> }
> }
> {code}
> resulted in stack trace:
> {code}
> java.lang.NullPointerException
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel#createObjectAdapterPropertyColumn(CollectionContentsAsAjaxTablePanel.java:256)
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel#addPropertyColumnsIfRequired(CollectionContentsAsAjaxTablePanel.java:208)
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel#buildGui(CollectionContentsAsAjaxTablePanel.java:102)
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel#onInitialize(CollectionContentsAsAjaxTablePanel.java:80)
> org.apache.wicket.Component#fireInitialize(Component.java:878)
> org.apache.wicket.MarkupContainer#internalInitialize(MarkupContainer.java:1081)
> org.apache.wicket.MarkupContainer#addedComponent(MarkupContainer.java:1058)
> org.apache.wicket.MarkupContainer#add(MarkupContainer.java:241)
> org.apache.wicket.MarkupContainer#addOrReplace(MarkupContainer.java:265)
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.multiple.CollectionContentsMultipleViewsPanel#addUnderlyingViews(CollectionContentsMultipleViewsPanel.java:118)
> org.apache.isis.viewer.wicket.ui.components.collectioncontents.multiple.CollectionContentsMultipleViewsPanel#onInitialize(CollectionContentsMultipleViewsPanel.java:87)
> org.apache.wicket.Component#fireInitialize(Component.java:878)
> org.apache.wicket.MarkupContainer#internalInitialize(MarkupContainer.java:1081)
> org.apache.wicket.MarkupContainer#addedComponent(MarkupContainer.java:1058)
> org.apache.wicket.MarkupContainer#add(MarkupContainer.java:241)
> org.apache.wicket.MarkupContainer#addOrReplace(MarkupContainer.java:265)
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault#addOrReplaceComponent(ComponentFactoryRegistryDefault.java:107)
> org.apache.isis.viewer.wicket.ui.components.collection.CollectionPanel#buildGui(CollectionPanel.java:87)
> org.apache.isis.viewer.wicket.ui.components.collection.CollectionPanel#onInitialize(CollectionPanel.java:83)
> org.apache.wicket.Component#fireInitialize(Component.java:878)
> org.apache.wicket.MarkupContainer$3#component(MarkupContainer.java:1087)
> org.apache.wicket.MarkupContainer$3#component(MarkupContainer.java:1083)
> org.apache.wicket.util.visit.Visits#visitChildren(Visits.java:144)
> org.apache.wicket.util.visit.Visits#visitChildren(Visits.java:123)
> org.apache.wicket.util.visit.Visits#visitChildren(Visits.java:192)
> org.apache.wicket.MarkupContainer#visitChildren(MarkupContainer.java:983)
> org.apache.wicket.MarkupContainer#internalInitialize(MarkupContainer.java:1082)
> org.apache.wicket.MarkupContainer#addedComponent(MarkupContainer.java:1058)
> org.apache.wicket.MarkupContainer#add(MarkupContainer.java:241)
> 

[jira] [Updated] (ISIS-1704) BigDecimal properties are not right aligned in Wicket viewer when shown in read-only mode.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1704:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> BigDecimal properties are not right aligned in Wicket viewer when shown in 
> read-only mode.
> --
>
> Key: ISIS-1704
> URL: https://issues.apache.org/jira/browse/ISIS-1704
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.15.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1665) inline prompt for panel action should replace entire panel

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1665:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> inline prompt for panel action should replace entire panel
> --
>
> Key: ISIS-1665
> URL: https://issues.apache.org/jira/browse/ISIS-1665
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.14.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1732) Document "hidden" as a supported method for services.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1732:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Document "hidden" as a supported method for services.
> -
>
> Key: ISIS-1732
> URL: https://issues.apache.org/jira/browse/ISIS-1732
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.15.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> eg, in kitchensink, we have:
> {code}
> public abstract class RepositoryAbstract {
> private final Class cls;
> public RepositoryAbstract(Class cls, Visibility visibility) {
> this.cls = cls;
> this.visibility = visibility;
> }
> //region > visibility
> private final Visibility visibility;
> protected enum Visibility {
> VISIBLE,
> NOT_VISIBLE
> }
> public boolean hidden() {
> return this.visibility == Visibility.NOT_VISIBLE;
> }
> //endregion
>  
> {code}
> and then:
> {code}
> @DomainService(
> repositoryFor = ChildObject.class
> )
> public class ChildObjects extends RepositoryAbstract {
> public ChildObjects() {
> super(ChildObject.class, Visibility.NOT_VISIBLE);
> }
> public ChildObject create(
> final String name,
> final ParentObject parentObject) {
> return repositoryService.persist(ChildObject.create(name, 
> parentObject));
> }
> public List listAll() {
> return repositoryService.allInstances(ChildObject.class);
> }
> }
> {code}
> if use super(...VISIBLE) then this service appears in the menu.  so, 
> "hidden()" is a way of globally hiding an object (or a domain service, at 
> least).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1612) [WON'T FIX] Extend the programming model so that mixins can have multiple actions

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1612:
--
Summary: [WON'T FIX] Extend the programming model so that mixins can have 
multiple actions  (was: Extend the programming model so that mixins can have 
multiple actions)

> [WON'T FIX] Extend the programming model so that mixins can have multiple 
> actions
> -
>
> Key: ISIS-1612
> URL: https://issues.apache.org/jira/browse/ISIS-1612
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.14.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> I see this as a hybrid of a contributed service and a mixin.
> I quite like the idea of calling these "responsibilities", eg
> {code}
> @Responsibility
> public class Customer_orders {
> private final Customer customer;
> public List getOrders() { ... }
> public Customer addOrder(...) { ... }
> public Customer removeOrder(...) { ... }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (ISIS-1612) [WON'T FIX] Extend the programming model so that mixins can have multiple actions

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood closed ISIS-1612.
-
Resolution: Won't Fix

non requirement - I agree with Andi

> [WON'T FIX] Extend the programming model so that mixins can have multiple 
> actions
> -
>
> Key: ISIS-1612
> URL: https://issues.apache.org/jira/browse/ISIS-1612
> Project: Isis
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.14.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> I see this as a hybrid of a contributed service and a mixin.
> I quite like the idea of calling these "responsibilities", eg
> {code}
> @Responsibility
> public class Customer_orders {
> private final Customer customer;
> public List getOrders() { ... }
> public Customer addOrder(...) { ... }
> public Customer removeOrder(...) { ... }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1562) Metamodel validator if forget to annotate @DomainObject(nature=ENTITY) with @PersistenceCapable

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1562:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Metamodel validator if forget to annotate @DomainObject(nature=ENTITY) with 
> @PersistenceCapable
> ---
>
> Key: ISIS-1562
> URL: https://issues.apache.org/jira/browse/ISIS-1562
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.13.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> Also, RepositoryService#persist(...) is a no-op if the domain object passed 
> in is not an entity; this should probably fail-fast.
> This was originally prompted by an obscure message being thrown in 
> Memento#updateFieldsAndResolveState(...), as the result of an entity being 
> treated as transient, because (a) the @PersistenceCapable annotation was 
> accidentally omitted, and (b) a call to RepositoryService#persist(...) just 
> did nothing.
> So, this ticket would be a fail-fast for that scenario.
> {code}
> private void updateFieldsAndResolveState(final ObjectAdapter 
> objectAdapter, final Data data) {
> 
> boolean dataIsTransient = data.getOid().isTransient();
> 
> if (!dataIsTransient) {
>...
> } else if (objectAdapter.isTransient() && dataIsTransient) {
>...
> 
> } else if (objectAdapter.isParentedCollection()) {
>...
> 
> } else {
>// THIS IS THE BRANCH THAT'S TRIGGERED IF @PersistenceCapable IS 
> ACCIDENTALLY OMITTED.
> final ObjectData od = (ObjectData) data;
> if (od.containsField()) {
> throw new IsisException("Resolve state (for " + objectAdapter 
> + ") inconsistent with fact that data exists for fields");
> }
> }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2058) Pre-render home page to avoid wait when first hit webapp after bootstrapping

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2058:
--
Fix Version/s: (was: 1.18.0)
   2.1.4

> Pre-render home page to avoid wait when first hit webapp after bootstrapping
> 
>
> Key: ISIS-2058
> URL: https://issues.apache.org/jira/browse/ISIS-2058
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.1.4
>
>
> You can try by rendering the home page in a separate thread during the 
> bootstraping
> You need to use ComponentRenderer#renderPage(app.getHomePage())
> you can do this for any of Isis' pages. You just need to provide their input 
> if they require such
>  
> It is a static method and it creates an artificial RequestCycle for its needs 
> (so it doesn't need an HTTP thread)
> [this is an cool idea for a small WicketStuff project that uses Wicket 
> IInitializer to render the home page in the background as soon as the app is 
> started]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2063) Entering a string such as "10:45" for a joda LocalTime causes stack trace.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2063:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Entering a string such as "10:45" for a joda LocalTime causes stack trace.
> --
>
> Key: ISIS-2063
> URL: https://issues.apache.org/jira/browse/ISIS-2063
> Project: Isis
>  Issue Type: Bug
>  Components: Core: Viewer: Wicket
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> stack trace:
>  
>  * org.apache.wicket.WicketRuntimeException
>  * Method onRequest of interface org.apache.wicket.behavior.IBehaviorListener 
> targeted at 
> org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract2$ScalarUpdatingBehavior@292c9c2f
>  on component [TextField [Component id = scalarValue]] threw an exception
>  * 
> org.apache.wicket.RequestListenerInterface#internalInvoke(RequestListenerInterface.java:268)
>  * 
> org.apache.wicket.RequestListenerInterface#invoke(RequestListenerInterface.java:241)
>  * 
> org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#invokeListener(ListenerInterfaceRequestHandler.java:248)
>  * 
> org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#respond(ListenerInterfaceRequestHandler.java:234)
>  * 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor#respond(RequestCycle.java:895)
>  * 
> org.apache.wicket.request.RequestHandlerStack#execute(RequestHandlerStack.java:64)
>  * org.apache.wicket.request.cycle.RequestCycle#execute(RequestCycle.java:265)
>  * 
> org.apache.wicket.request.cycle.RequestCycle#processRequest(RequestCycle.java:222)
>  * 
> org.apache.wicket.request.cycle.RequestCycle#processRequestAndDetach(RequestCycle.java:293)
>  * 
> org.apache.wicket.protocol.http.WicketFilter#processRequestCycle(WicketFilter.java:261)
>  * 
> org.apache.wicket.protocol.http.WicketFilter#processRequest(WicketFilter.java:203)
>  * 
> org.apache.wicket.protocol.http.WicketFilter#doFilter(WicketFilter.java:284)
>  * 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
>  * 
> org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter#doFilter(IsisLogOnExceptionFilter.java:52)
>  * 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
>  * 
> org.apache.shiro.web.servlet.AbstractShiroFilter#executeChain(AbstractShiroFilter.java:449)
>  * 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1#call(AbstractShiroFilter.java:365)
>  * 
> org.apache.shiro.subject.support.SubjectCallable#doCall(SubjectCallable.java:90)
>  * 
> org.apache.shiro.subject.support.SubjectCallable#call(SubjectCallable.java:83)
>  * 
> org.apache.shiro.subject.support.DelegatingSubject#execute(DelegatingSubject.java:383)
>  * 
> org.apache.shiro.web.servlet.AbstractShiroFilter#doFilterInternal(AbstractShiroFilter.java:362)
>  * 
> org.apache.shiro.web.servlet.OncePerRequestFilter#doFilter(OncePerRequestFilter.java:125)
>  * 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1613)
>  * org.eclipse.jetty.servlet.ServletHandler#doHandle(ServletHandler.java:541)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:143)
>  * org.eclipse.jetty.security.SecurityHandler#handle(SecurityHandler.java:548)
>  * 
> org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:190)
>  * 
> org.eclipse.jetty.server.session.SessionHandler#doHandle(SessionHandler.java:1593)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:188)
>  * 
> org.eclipse.jetty.server.handler.ContextHandler#doHandle(ContextHandler.java:1239)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:168)
>  * org.eclipse.jetty.servlet.ServletHandler#doScope(ServletHandler.java:481)
>  * 
> org.eclipse.jetty.server.session.SessionHandler#doScope(SessionHandler.java:1562)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:166)
>  * 
> org.eclipse.jetty.server.handler.ContextHandler#doScope(ContextHandler.java:1141)
>  * 
> org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:141)
>  * 
> org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
>  * org.eclipse.jetty.server.Server#handle(Server.java:564)
>  * org.eclipse.jetty.server.HttpChannel#handle(HttpChannel.java:320)
>  * org.eclipse.jetty.server.HttpConnection#onFillable(HttpConnection.java:251)
>  * 
> org.eclipse.jetty.io.AbstractConnection$ReadCallback#succeeded(AbstractConnection.java:279)
>  * 

[jira] [Closed] (ISIS-2071) [WON'T FIX] Backport suppression of "client connection abort" errors from v2

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood closed ISIS-2071.
-
Resolution: Won't Fix

> [WON'T FIX] Backport suppression of "client connection abort" errors from v2
> 
>
> Key: ISIS-2071
> URL: https://issues.apache.org/jira/browse/ISIS-2071
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> In ResourceCachingFilter.
>  
> {code:java}
> ...
> // try to suppress java.io.IOException of kind 'client connection abort'
> // 1) the TCP protocol (by design) does not provide a means to check, 
> whether a
> //connection has been closed by the client
> // 2) the exception thrown and the exception message text are specific to 
> the
> //servlet-engine implementation, so we can only guess here
> try {
> chain.doFilter(servletRequest, servletResponse);
> } catch (IOException e) {
> FluentException.of(e)
> .suppressIf(this::isConnectionAbortException);
> }
> }
> // -- HELPER
> private boolean isConnectionAbortException(IOException e) {
> // tomcat 9
> if(e.getMessage().contains("An established connection was aborted by the 
> software in your host machine")) {
> return true;
> }
> // payara 4
> if(e.getMessage().contains("Connection is closed")) {
> return true;
> }
> return false;
> }
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2060) Allow safe actions to be invoked if only have read-only access.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2060:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Allow safe actions to be invoked if only have read-only access.
> ---
>
> Key: ISIS-2060
> URL: https://issues.apache.org/jira/browse/ISIS-2060
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> Use a config property to enable this feature.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2059) Allow Wicket viewer caching strategy (timestamp or digest) to be selected via config property.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2059:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Allow Wicket viewer caching strategy (timestamp or digest) to be selected via 
> config property.
> --
>
> Key: ISIS-2059
> URL: https://issues.apache.org/jira/browse/ISIS-2059
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> There is already some commented-out code in IsisWicketApplication.
> // getResourceSettings().setCachingStrategy(
> // new FilenameWithVersionResourceCachingStrategy(
> // new CachingResourceVersion(
> // new MessageDigestResourceVersion(;



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2071) [WON'T FIX] Backport suppression of "client connection abort" errors from v2

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2071:
--
Summary: [WON'T FIX] Backport suppression of "client connection abort" 
errors from v2  (was: Backport suppression of "client connection abort" errors 
from v2)

> [WON'T FIX] Backport suppression of "client connection abort" errors from v2
> 
>
> Key: ISIS-2071
> URL: https://issues.apache.org/jira/browse/ISIS-2071
> Project: Isis
>  Issue Type: Improvement
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> In ResourceCachingFilter.
>  
> {code:java}
> ...
> // try to suppress java.io.IOException of kind 'client connection abort'
> // 1) the TCP protocol (by design) does not provide a means to check, 
> whether a
> //connection has been closed by the client
> // 2) the exception thrown and the exception message text are specific to 
> the
> //servlet-engine implementation, so we can only guess here
> try {
> chain.doFilter(servletRequest, servletResponse);
> } catch (IOException e) {
> FluentException.of(e)
> .suppressIf(this::isConnectionAbortException);
> }
> }
> // -- HELPER
> private boolean isConnectionAbortException(IOException e) {
> // tomcat 9
> if(e.getMessage().contains("An established connection was aborted by the 
> software in your host machine")) {
> return true;
> }
> // payara 4
> if(e.getMessage().contains("Connection is closed")) {
> return true;
> }
> return false;
> }
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (ISIS-1993) allow factory actions to be associated with both properties and parameters.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood reassigned ISIS-1993:
-

Assignee: (was: Dan Haywood)

> allow factory actions to be associated with both properties and parameters.
> ---
>
> Key: ISIS-1993
> URL: https://issues.apache.org/jira/browse/ISIS-1993
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> See also ISIS-1509
>  
> {code:java}
> @Property(createRepository=Supplier.Repository.class, createAction="create")
> @Getter @Setter Party supplier;{code}
> and
> {code:java}
> public IncomingInvoice edit(
> @Parameter(createRepository=Supplier.Repository.class, 
> createAction="create")
> Party supplier,
> ...
> ) {
>...
> }{code}
>  
> to invoke a nominated action "in-situ".
> This could be bound to a keystroke, eg "F3"
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1993) allow factory actions to be associated with both properties and parameters.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1993:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> allow factory actions to be associated with both properties and parameters.
> ---
>
> Key: ISIS-1993
> URL: https://issues.apache.org/jira/browse/ISIS-1993
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> See also ISIS-1509
>  
> {code:java}
> @Property(createRepository=Supplier.Repository.class, createAction="create")
> @Getter @Setter Party supplier;{code}
> and
> {code:java}
> public IncomingInvoice edit(
> @Parameter(createRepository=Supplier.Repository.class, 
> createAction="create")
> Party supplier,
> ...
> ) {
>...
> }{code}
>  
> to invoke a nominated action "in-situ".
> This could be bound to a keystroke, eg "F3"
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1995) Render collection of objects as panels

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1995:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Render collection of objects as panels
> --
>
> Key: ISIS-1995
> URL: https://issues.apache.org/jira/browse/ISIS-1995
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1994) Render collection of objects as tabs

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1994:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Render collection of objects as tabs
> 
>
> Key: ISIS-1994
> URL: https://issues.apache.org/jira/browse/ISIS-1994
> Project: Isis
>  Issue Type: New Feature
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1509) Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1509:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Extending Action Dialogs: new kind of Support Action to contribute to Action 
> Parameters
> ---
>
> Key: ISIS-1509
> URL: https://issues.apache.org/jira/browse/ISIS-1509
> Project: Isis
>  Issue Type: New Feature
>  Components: Core
>Affects Versions: 1.13.0
>Reporter: Oscar Bou
>Priority: Major
> Fix For: 2.0.3
>
> Attachments: Slide1.PNG, Slide2.PNG, Slide3.PNG, factory-methods.pptx
>
>
> See also ISIS-1993
> ~~~
> Factory Methods should be able to be identified as that.
> It could be useful, for example, when executing any action.
> For any param of any type, Apache Isis could offer the option to create a new 
> instance by executing an action that both return that type and has been 
> identified as a Factory Method.
> An example of defining a Factory Method could be:
> {code:java}
> class Concert {
> @Action(factoryMethod=true)
> public Concert someAction() {
>   return new Concert();
> }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1998) Simplify syntax way for mixins, to better express intent using @Action, @Collection and @Property

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1998:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Simplify syntax way for mixins, to better express intent using @Action, 
> @Collection and @Property
> -
>
> Key: ISIS-1998
> URL: https://issues.apache.org/jira/browse/ISIS-1998
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.3
>
>
> that is:
>  * for actions with @Action annotation at class level (replacing @Mixin), new 
> mixinMethod="act". Also allow @ActionLayout at top-level
>  * for collections, ditto @Collection, new mixinMethod="coll"; 
> @CollectionLayout
>  * for properties, ditto @Property, mixinMethod="prop" and @PropertyLayout



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1023) Allow actions to be invoked on entity when rendered within a table.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1023:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Allow actions to be invoked on entity when rendered within a table.
> ---
>
> Key: ISIS-1023
> URL: https://issues.apache.org/jira/browse/ISIS-1023
> Project: Isis
>  Issue Type: New Feature
>  Components: Core, Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.7.0, core-1.7.0
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> Enhance the Wicket viewer (with corresponding metadata annotations) to render 
> an entity's actions as drop-down menu when that entity is rendered as a row 
> of a table.
> There's probably no need to introduce additional annotations; the 
> @ActionLayout(hidden=...) indicates whether an action is hidden in various 
> contexts, one of these being it being hidden (or not) within tables.
> My idea therefore is that, unless every action of an entity is indicated as 
> hidden for a table, that there is an additional column that includes a 
> drop-down and that allows the actions to be invoked (bringing up the dialog).
> Once the action is invoked (like bulk actions) the table should be reloaded 
> (rather than, say, navigate to the object returned by the action).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1350) Refactor/simplify ExceptionRecognitionService to follow chain-of-responsibility pattern.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1350:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> Refactor/simplify ExceptionRecognitionService to follow 
> chain-of-responsibility pattern.
> 
>
> Key: ISIS-1350
> URL: https://issues.apache.org/jira/browse/ISIS-1350
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.11.1
>Reporter: Dan Haywood
>Priority: Minor
> Fix For: 2.0.3
>
>
> To exploit the fact that we can inject List



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1021) suppress/disable the link in the first column of a table (CollectionProperty)

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1021:
--
Fix Version/s: (was: 1.18.0)
   2.0.3

> suppress/disable the link in the first column of a table (CollectionProperty)
> -
>
> Key: ISIS-1021
> URL: https://issues.apache.org/jira/browse/ISIS-1021
> Project: Isis
>  Issue Type: New Feature
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.7.0
>Reporter: ARI
>Priority: Major
> Fix For: 2.0.3
>
>
> Goal:
> Suppress/disable the link in the first column of a table (CollectionProperty) 
> for marked DomainObjects.
> Proposal:
> - Add a new field to the @DomainObjectLayout like openable/viewable.
> - Special handling of title columns in CollectionContentsAsAjaxTablePanel / 
> ObjectAdapterTitleColumn / EntityIconAndTitlePanel
> Background:
> I have a complex entity which is displayed in tables in different places.
> In one place I want to show a subset of properties only. For this
> projection I made a special in-memory object, which wraps the complex
> entity and has getters for the subset of properties only. How can I mark
> this inmemory object to be not openable, or with other words how do i 
> suppress/disable the link in the first column.
> Dan/Martins "QuickFix" was:
> The column is added at
> https://github.com/apache/isis/blob/master/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java#L96
> and I see no way how to suppress the addition in current master branch.
> The column is marked with "title-column" CSS class so it is easy to hide
> with: visibility:hidden;, but I'm not sure how easy is to detect on which
> page to apply this CSS rule.
> If you use 1.8.0-SNAPSHOT then maybe you can combine it with the new
> #cssClass() special method that may be used to set a custom CSS class. See
> http://issues.apache.org/jira/browse/ISIS-1000
> Am 26.01.2015 um 23:11 schrieb Dan Haywood :
> +1 to Martin's answer, there is no configuration setting but it is possible
> to hack it using Javascript and CSS and the new #cssClass in 1.8.0-SNAPSHOT.
> For example, the todo app uses #cssClass() so that completed todo items are
> shown in a table with a strikethrough.  This comes from the "done" CSS
> class:
>   public String cssClass() { return !isComplete() ? "todo" : "done"; }
> In webapp/css/application.css, if we add:
>   tr.done a {
>   pointer-events: none;
>   cursor: default;
>   }
> and in webapp/scripts/application.js, if we add:
>   $(document).ready(function() {
>   $('tr.done a').click(function() { return false; });
>   });
> then the icon for each completed item cannot be clicked.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2086) Define beans for configuration, so that (eventually) can use Spring Boot's @ConfigurationProperties infrastructure.

2019-05-17 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2086:
--
Fix Version/s: (was: 1.21.0)
   2.0.0
  Description: 
ie as per 
[https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config]



Another benefit we will get from this is that SB has an annotation processor 
that generates some IDE config files to provide autocomplete when editing the 
application.properties file

[https://docs.spring.io/spring-boot/docs/2.0.8.RELEASE/reference/html/configuration-metadata.html#configuration-metadata-annotation-processor]

 

 

  was:
ie as per 
[https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config]

However, it doesn't seem that Spring Boot itself exposes a standalone library 
that will consume its application.properties etc into config classes.  So we 
might need to write some equivalent code (also for support on MicroProfile).

~~~

Another benefit we will get from this is that SB has an annotation processor 
that generates some IDE config files to provide autocomplete when editing the 
application.properties file

[https://docs.spring.io/spring-boot/docs/2.0.8.RELEASE/reference/html/configuration-metadata.html#configuration-metadata-annotation-processor]

 

 


This perhaps isn't mandatory for 2.0.0, but would improve the developer 
experience significantly, as well as our codebase.

> Define beans for configuration, so that (eventually) can use Spring Boot's 
> @ConfigurationProperties infrastructure.
> ---
>
> Key: ISIS-2086
> URL: https://issues.apache.org/jira/browse/ISIS-2086
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.0
>
>
> ie as per 
> [https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config]
> Another benefit we will get from this is that SB has an annotation processor 
> that generates some IDE config files to provide autocomplete when editing the 
> application.properties file
> [https://docs.spring.io/spring-boot/docs/2.0.8.RELEASE/reference/html/configuration-metadata.html#configuration-metadata-annotation-processor]
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2119) Increase timeout to avoid occasional exceptions when download Blobs

2019-05-16 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2119:
--
Description: 
On a slow connection, can get occasional exceptions when downloading a blob... 
that the behaviour cannot be found on the entity:
{code}
org.apache.wicket.behavior.InvalidBehaviorIdException
Cannot find behavior with id '2' on component 
'org.apache.isis.viewer.wicket.ui.components.scalars.reference.ReferencePanel:theme:entityPageContainer:entity:rows:1:rowContents:2:col:rows:1:rowContents:1:col:tabGroups:1:panel:tabPanel:rows:1:rowContents:1:col:fieldSets:1:memberGroup:properties:1:property'
 in page '[Page class = 
org.apache.isis.viewer.wicket.ui.pages.entity.EntityPage, id = 10, render count 
= 1]'. Perhaps the behavior did not properly implement getStatelessHint() and 
returned 'true' to indicate that it is stateless instead of returning 'false' 
to indicate that it is stateful.
org.apache.wicket.Behaviors#getBehaviorById(Behaviors.java:316)
org.apache.wicket.Component#getBehaviorById(Component.java:4596)
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#invokeListener(ListenerInterfaceRequestHandler.java:247)
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#respond(ListenerInterfaceRequestHandler.java:234)
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor#respond(RequestCycle.java:895)
org.apache.wicket.request.RequestHandlerStack#execute(RequestHandlerStack.java:64)
org.apache.wicket.request.cycle.RequestCycle#execute(RequestCycle.java:265)
org.apache.wicket.request.cycle.RequestCycle#processRequest(RequestCycle.java:222)
org.apache.wicket.request.cycle.RequestCycle#processRequestAndDetach(RequestCycle.java:293)
org.apache.wicket.protocol.http.WicketFilter#processRequestCycle(WicketFilter.java:261)
org.apache.wicket.protocol.http.WicketFilter#processRequest(WicketFilter.java:203)
org.apache.wicket.protocol.http.WicketFilter#doFilter(WicketFilter.java:284)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter#doFilter(IsisLogOnExceptionFilter.java:52)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.togglz.servlet.TogglzFilter#doFilter(TogglzFilter.java:100)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.apache.shiro.web.servlet.AbstractShiroFilter#executeChain(AbstractShiroFilter.java:449)
org.apache.shiro.web.servlet.AbstractShiroFilter$1#call(AbstractShiroFilter.java:365)
org.apache.shiro.subject.support.SubjectCallable#doCall(SubjectCallable.java:90)
org.apache.shiro.subject.support.SubjectCallable#call(SubjectCallable.java:83)
org.apache.shiro.subject.support.DelegatingSubject#execute(DelegatingSubject.java:383)
org.apache.shiro.web.servlet.AbstractShiroFilter#doFilterInternal(AbstractShiroFilter.java:362)
org.apache.shiro.web.servlet.OncePerRequestFilter#doFilter(OncePerRequestFilter.java:125)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1613)
org.eclipse.jetty.servlet.ServletHandler#doHandle(ServletHandler.java:541)
org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:143)
org.eclipse.jetty.security.SecurityHandler#handle(SecurityHandler.java:548)
org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:190)
org.eclipse.jetty.server.session.SessionHandler#doHandle(SessionHandler.java:1593)
org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:188)
org.eclipse.jetty.server.handler.ContextHandler#doHandle(ContextHandler.java:1239)
org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:168)
org.eclipse.jetty.servlet.ServletHandler#doScope(ServletHandler.java:481)
org.eclipse.jetty.server.session.SessionHandler#doScope(SessionHandler.java:1562)
org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:166)
org.eclipse.jetty.server.handler.ContextHandler#doScope(ContextHandler.java:1141)
org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:141)
org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
org.eclipse.jetty.server.Server#handle(Server.java:564)
org.eclipse.jetty.server.HttpChannel#handle(HttpChannel.java:320)
org.eclipse.jetty.server.HttpConnection#onFillable(HttpConnection.java:251)
org.eclipse.jetty.io.AbstractConnection$ReadCallback#succeeded(AbstractConnection.java:279)
org.eclipse.jetty.io.FillInterest#fillable(FillInterest.java:110)
org.eclipse.jetty.io.ChannelEndPoint$2#run(ChannelEndPoint.java:124)
org.eclipse.jetty.util.thread.Invocable#invokePreferred(Invocable.java:122)
org.eclipse.jetty.util.thread.strategy.ExecutingExecutionStrategy#invoke(ExecutingExecutionStrategy.java:58)

[jira] [Updated] (ISIS-2119) Increase timeout to avoid occasional exceptions when download Blobs

2019-05-16 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2119:
--
Description: 
On a slow connection, can get occasional exceptions when downloading a blob... 
that the behaviour cannot be found on the entity:
{code}
org.apache.wicket.behavior.InvalidBehaviorIdException
Cannot find behavior with id '2' on component 
'org.apache.isis.viewer.wicket.ui.components.scalars.reference.ReferencePanel:theme:entityPageContainer:entity:rows:1:rowContents:2:col:rows:1:rowContents:1:col:tabGroups:1:panel:tabPanel:rows:1:rowContents:1:col:fieldSets:1:memberGroup:properties:1:property'
 in page '[Page class = 
org.apache.isis.viewer.wicket.ui.pages.entity.EntityPage, id = 10, render count 
= 1]'. Perhaps the behavior did not properly implement getStatelessHint() and 
returned 'true' to indicate that it is stateless instead of returning 'false' 
to indicate that it is stateful.
org.apache.wicket.Behaviors#getBehaviorById(Behaviors.java:316)
org.apache.wicket.Component#getBehaviorById(Component.java:4596)
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#invokeListener(ListenerInterfaceRequestHandler.java:247)
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler#respond(ListenerInterfaceRequestHandler.java:234)
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor#respond(RequestCycle.java:895)
org.apache.wicket.request.RequestHandlerStack#execute(RequestHandlerStack.java:64)
org.apache.wicket.request.cycle.RequestCycle#execute(RequestCycle.java:265)
org.apache.wicket.request.cycle.RequestCycle#processRequest(RequestCycle.java:222)
org.apache.wicket.request.cycle.RequestCycle#processRequestAndDetach(RequestCycle.java:293)
org.apache.wicket.protocol.http.WicketFilter#processRequestCycle(WicketFilter.java:261)
org.apache.wicket.protocol.http.WicketFilter#processRequest(WicketFilter.java:203)
org.apache.wicket.protocol.http.WicketFilter#doFilter(WicketFilter.java:284)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter#doFilter(IsisLogOnExceptionFilter.java:52)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.togglz.servlet.TogglzFilter#doFilter(TogglzFilter.java:100)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1621)
org.apache.shiro.web.servlet.AbstractShiroFilter#executeChain(AbstractShiroFilter.java:449)
org.apache.shiro.web.servlet.AbstractShiroFilter$1#call(AbstractShiroFilter.java:365)
org.apache.shiro.subject.support.SubjectCallable#doCall(SubjectCallable.java:90)
org.apache.shiro.subject.support.SubjectCallable#call(SubjectCallable.java:83)
org.apache.shiro.subject.support.DelegatingSubject#execute(DelegatingSubject.java:383)
org.apache.shiro.web.servlet.AbstractShiroFilter#doFilterInternal(AbstractShiroFilter.java:362)
org.apache.shiro.web.servlet.OncePerRequestFilter#doFilter(OncePerRequestFilter.java:125)
org.eclipse.jetty.servlet.ServletHandler$CachedChain#doFilter(ServletHandler.java:1613)
org.eclipse.jetty.servlet.ServletHandler#doHandle(ServletHandler.java:541)
org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:143)
org.eclipse.jetty.security.SecurityHandler#handle(SecurityHandler.java:548)
org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:190)
org.eclipse.jetty.server.session.SessionHandler#doHandle(SessionHandler.java:1593)
org.eclipse.jetty.server.handler.ScopedHandler#nextHandle(ScopedHandler.java:188)
org.eclipse.jetty.server.handler.ContextHandler#doHandle(ContextHandler.java:1239)
org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:168)
org.eclipse.jetty.servlet.ServletHandler#doScope(ServletHandler.java:481)
org.eclipse.jetty.server.session.SessionHandler#doScope(SessionHandler.java:1562)
org.eclipse.jetty.server.handler.ScopedHandler#nextScope(ScopedHandler.java:166)
org.eclipse.jetty.server.handler.ContextHandler#doScope(ContextHandler.java:1141)
org.eclipse.jetty.server.handler.ScopedHandler#handle(ScopedHandler.java:141)
org.eclipse.jetty.server.handler.HandlerWrapper#handle(HandlerWrapper.java:132)
org.eclipse.jetty.server.Server#handle(Server.java:564)
org.eclipse.jetty.server.HttpChannel#handle(HttpChannel.java:320)
org.eclipse.jetty.server.HttpConnection#onFillable(HttpConnection.java:251)
org.eclipse.jetty.io.AbstractConnection$ReadCallback#succeeded(AbstractConnection.java:279)
org.eclipse.jetty.io.FillInterest#fillable(FillInterest.java:110)
org.eclipse.jetty.io.ChannelEndPoint$2#run(ChannelEndPoint.java:124)
org.eclipse.jetty.util.thread.Invocable#invokePreferred(Invocable.java:122)
org.eclipse.jetty.util.thread.strategy.ExecutingExecutionStrategy#invoke(ExecutingExecutionStrategy.java:58)

[jira] [Created] (ISIS-2119) Increase timeout to avoid occasional exceptions when download Blobs

2019-05-15 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2119:
-

 Summary: Increase timeout to avoid occasional exceptions when 
download Blobs
 Key: ISIS-2119
 URL: https://issues.apache.org/jira/browse/ISIS-2119
 Project: Isis
  Issue Type: Bug
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 1.18.0


On a slow connection, can get occasional exceptions when downloading a blob... 
that the behaviour cannot be found on the entity.  There's not a lot to go on.

Inspecting the returned payload though, I discovered at the end:

{code}

{code}

which gave me the clue.  The relevant code is in 
ActionResultResponseHandlingStrategy:

{code}
SCHEDULE_HANDLER {
@Override
public void handleResults(
final ActionResultResponse resultResponse,
final IsisSessionFactory isisSessionFactory) {
final RequestCycle requestCycle = RequestCycle.get();
AjaxRequestTarget target = 
requestCycle.find(AjaxRequestTarget.class);

if (target == null) {
// non-Ajax request => just stream the Lob to the browser
// or if this is a no-arg action, there also will be no parent 
for the component

requestCycle.scheduleRequestHandlerAfterCurrent(resultResponse.getHandler());
} else {
// otherwise,
// Ajax request => respond with a redirect to be able to stream 
the Lob to the client
ResourceStreamRequestHandler scheduledHandler = 
(ResourceStreamRequestHandler) resultResponse.getHandler();
StreamAfterAjaxResponseBehavior streamingBehavior = new 
StreamAfterAjaxResponseBehavior(scheduledHandler);
final Page page = target.getPage();
page.add(streamingBehavior);
String callbackUrl = 
streamingBehavior.getCallbackUrl().toString();
target.appendJavaScript("setTimeout(\"window.location.href='" + 
callbackUrl + "'\", 10);");
}

}
},
{code}

What's happening here is that response from the ajax call to invoke the button 
is the fragments to rebuild the page ... it's not possible to also return the 
BLOB.  So the Ajax instead sets a timeout to download that Blob as a separate 
web call.

Experimenting with this code, if the behaviour is stripped off (everything 
after the "?") then the download doesn't occur; so this is needed.

Since I've seen the problem mostly with large docs and on a slow connection, my 
guess is that this is some sort of race condition.  Since we can wait a bit 
more than 10ms, my suggestion is to increase the timeout to 250ms.




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (ISIS-538) Improve performance of rendering lists (in Wicket viewer)

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood reassigned ISIS-538:


Assignee: Dan Haywood

> Improve performance of rendering lists (in Wicket viewer)
> -
>
> Key: ISIS-538
> URL: https://issues.apache.org/jira/browse/ISIS-538
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.2.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> rendering a Lease, showing LeaseUnit in table (they would be in view mode).  
> Even so, we compute the choices etc, even though never used (see stack trace).
> In ScalarPanelAbstract#buildGui(), we have:
> private void buildGui() {
> 
> // REVIEW: this is nasty, both write to the same entityLink field
> // even though only one is used
> componentIfCompact = addComponentForCompact();
> componentIfRegular = addComponentForRegular();
> Brands.findUniqueNames() line: 46 
> LeaseUnit.choicesBrandName() line: 278
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not 
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: not available 
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not available 
> Method.invoke(Object, Object...) line: not available  
> MethodExtensions.invoke(Method, Object, Object[]) line: 50
> MethodExtensions.invoke(Method, Object) line: 45  
> AdapterInvokeUtils.invoke(Method, ObjectAdapter) line: 44 
> PropertyChoicesFacetViaMethod.getChoices(ObjectAdapter, SpecificationLoader) 
> line: 72 
> OneToOneAssociationImpl.getChoices(ObjectAdapter) line: 248   
> ScalarModel$Kind$1.getChoices(ScalarModel, ObjectAdapter[]) line: 163 
> ScalarModel.getChoices(ObjectAdapter[]) line: 584 
> ValueChoicesSelect2Panel.getChoiceMementos(ObjectAdapter[]) line: 93  
> ValueChoicesSelect2Panel.setChoices(ObjectAdapter[]) line: 194
> ValueChoicesSelect2Panel.addComponentForRegular() line: 76
> ValueChoicesSelect2Panel(ScalarPanelAbstract).buildGui() line: 178
> ValueChoicesSelect2Panel(ScalarPanelAbstract).onBeforeRender() line: 147  
> ValueChoicesSelect2Panel(Component).internalBeforeRender() line: 923  
> ValueChoicesSelect2Panel(Component).beforeRender() line: 991  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-962) Update all Wicket viewer HTML to use html5 doctype

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-962.
--
Resolution: Fixed

> Update all Wicket viewer HTML to use html5 doctype
> --
>
> Key: ISIS-962
> URL: https://issues.apache.org/jira/browse/ISIS-962
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.7.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> ie 
> also: update website to explain how to configure IntelliJ and Eclipse's file 
> templates to use HTML5 by default.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (ISIS-962) [FIXED] Update all Wicket viewer HTML to use html5 doctype

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood reassigned ISIS-962:


Assignee: Dan Haywood

> [FIXED] Update all Wicket viewer HTML to use html5 doctype
> --
>
> Key: ISIS-962
> URL: https://issues.apache.org/jira/browse/ISIS-962
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.7.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> ie 
> also: update website to explain how to configure IntelliJ and Eclipse's file 
> templates to use HTML5 by default.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-962) Update all Wicket viewer HTML to use html5 doctype

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-962:
-
Summary: Update all Wicket viewer HTML to use html5 doctype  (was: [FIXED] 
Update all Wicket viewer HTML to use html5 doctype)

> Update all Wicket viewer HTML to use html5 doctype
> --
>
> Key: ISIS-962
> URL: https://issues.apache.org/jira/browse/ISIS-962
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Affects Versions: viewer-wicket-1.7.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> ie 
> also: update website to explain how to configure IntelliJ and Eclipse's file 
> templates to use HTML5 by default.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2001) Dynamically hide/disable/default action parameters (based on other parameter arguments)

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2001.
---
Resolution: Fixed

This doesn't quite work for disablement with blobs, but I'm gonna descope - 
there's enough done already that works fine to push this.

> Dynamically hide/disable/default action parameters (based on other parameter 
> arguments)
> ---
>
> Key: ISIS-2001
> URL: https://issues.apache.org/jira/browse/ISIS-2001
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> some notes:
> ActionParametersForm.java
> ScalarPanelAbstract2#updateIfNecessary(..) as a new hook method to be 
> implemented everywhere
> - if choices facet then update choices ... DONE ALREADY
> - if default facet then recompute ... TO DO EVERYWHERE, on the getModel() 
>   - and "sync" the value into the UI widget
> 1. for the existing logic that evaluates choicesX based on choices(Y should also evaluate any defaultX that we see.
> 2. also do this for an autoCompleteX
> 3. new logic looking for a change in any scalar, then search for other params 
> with a default that depend on that.
> Nice to have, but will need changes to metamodel so we'll leave for now:
> 4. support the idea of disableX for params
> 5. support the idea of hideX for params
> based on a change (autoComplete, choices or scalar)
> ... re-evaluate choices, default, disable, hide
> ~~
> Organisation -> BankAccount
> public void doSomething(
>   Organisation org,
>   BankAccount bankAccount,
>   ...
>   ) {
>   
> }
> public List autoComplete0DoSomething(String str) {  }
> public List choices0DoSomething() {  }
> public List choices1DoSomething(Organisation org) { ... }
> public BankAccount default1DoSomething(Organisation org) { /*return 
> choices1DoSomething(organisation).get(0); */ }
> ~~
> public void calc(
>   BigDecimal netAmount,
>   BigDecimal vatAmount,
>   BigDecimal grossAmount
>   ...
>   ) {
>   
> }
> public BigDecimal default2Calc(BigDecimal netAmount, BigDecimal vatAmount) { 
> return netAmount + vatAmount; }
> //public String disable2Calc() { return "disabled"; }
> //public boolean hide2Calc(BigDecimal netAmount, BigDecimal vatAmount) { 
> return netAmount == null; }



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (ISIS-2054) Reduce memory pressure when reducing calls on getMethod(byName) when looking up annotations.

2019-05-15 Thread Dan Haywood (JIRA)


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

Dan Haywood reassigned ISIS-2054:
-

 Assignee: Andi Huber
Fix Version/s: (was: 1.18.0)
   2.0.0-M2

This ticket has had commits on it for v2 (M2).  The idea was to backport to 1.x 
codebase, but I don't think there's any point in doing so.

> Reduce memory pressure when reducing calls on getMethod(byName) when looking 
> up annotations.
> 
>
> Key: ISIS-2054
> URL: https://issues.apache.org/jira/browse/ISIS-2054
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Andi Huber
>Priority: Minor
> Fix For: 2.0.0-M2
>
>
> Comment by Andi ...
> think this relates to just noticed we can improve performance of specloader 
> initialization by tweaking ... 
> org.apache.isis.core.metamodel.facets.Annotations such that annotation lookup 
> does no longer call getMethod(byName, ...) 
> this produces a huge amount of stack-trace objects that pollute the heap
> This has already been parallelized, but I think the bottleneck could be 
> memory related :)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2107) Allow enums to implement interfaces for choices.

2019-05-14 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2107.
---
Resolution: Fixed

> Allow enums to implement interfaces for choices.
> 
>
> Key: ISIS-2107
> URL: https://issues.apache.org/jira/browse/ISIS-2107
> Project: Isis
>  Issue Type: Bug
>  Components: Core, Core: Viewer: Wicket
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> The code we wanted to write was equivalent to:
> {code:java}
> public Object act(
> final INflLeague nflLeague,
> final NflRegion nflRegion,
> final NflTeamEntity nflTeam) {
> nflPlayer.updateUsingEntity((NflLeague)nflLeague, nflRegion, nflTeam);
> return this.nflPlayer;
> }
> public List choices0Act() {
> return Arrays.asList(NflLeague.values());
> }
> ...
> {code}
> where NflLeague is an enum that implements INflLeague :
> {code:java}
> public interface INflLeague {
> String getName();
> }
> {code}
> and
> {code:java}
> public enum NflLeague implements INflLeague {
> AFC,
> NFC;
> @Override
> public String getName() {
> return name();
> }
> }
> {code}
> There are two issues:
> * first, in the metamodel we don't introspect enums to recognise that a list 
> of NflLeague enum instances can be returned in the choices method returning 
> List 
> * second, in the Wicket viewer the selection of the choicesPanel is based on 
> the type, and if an interface is used then it guesses a referencePanel rather 
> than ValueSelect2Panel that is normally used for enums.  The marshalling 
> logic for ReferencePanel assumes entities, and fails when handed a bunch of 
> scalar enums.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2118) Don't redundantly add additional DisabledFacet when disabled at class-level.

2019-05-14 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2118.
---
Resolution: Fixed

> Don't redundantly add additional DisabledFacet when disabled at class-level.
> 
>
> Key: ISIS-2118
> URL: https://issues.apache.org/jira/browse/ISIS-2118
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Minor
> Fix For: 1.18.0
>
>
> using the ISIS-2015 mixin, I see the following for kitchensink's 
> ReferenceObject when annotated as @DomainObject(editing=DISABLED)
> {code}
> 
> 
> ...
>  id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" 
> fqcn="org.apache.isis.core.metamodel.facets.properties.disabled.fromimmutable.DisabledFacetOnPropertyDerivedFromImmutable">
> true
> false
> DISABLED
> ALWAYS
> ANYWHERE
> 
> ...
>  id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" 
> fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.editing.ImmutableFacetForDomainObjectAnnotation">
> true
> Disabled
> ALWAYS
> 
> {code}
> The ImmutableFacet isn't required, because the 
> DisabledFacetOnPropertyDerivedFromImmutable should suffice.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2118) Don't redundantly add additional DisabledFacet when disabled at class-level.

2019-05-14 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2118:
-

 Summary: Don't redundantly add additional DisabledFacet when 
disabled at class-level.
 Key: ISIS-2118
 URL: https://issues.apache.org/jira/browse/ISIS-2118
 Project: Isis
  Issue Type: Bug
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 1.18.0



using the ISIS-2015 mixin, I see the following for kitchensink's 
ReferenceObject when annotated as @DomainObject(editing=DISABLED)
{code}


...

true
false
DISABLED
ALWAYS
ANYWHERE

...

true
Disabled
ALWAYS

{code}

The ImmutableFacet isn't required, because the 
DisabledFacetOnPropertyDerivedFromImmutable should suffice.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2115) Prevent ajax js error for inlinePromptLink on scalar panel

2019-05-09 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2115.
---
Resolution: Fixed

> Prevent ajax js error for inlinePromptLink on scalar panel
> --
>
> Key: ISIS-2115
> URL: https://issues.apache.org/jira/browse/ISIS-2115
> Project: Isis
>  Issue Type: Bug
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Trivial
> Fix For: 1.18.0
>
>
> Doesn't seem to effect behaviour, but creates noise in browser JS console.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2001) Dynamically hide/disable/default action parameters (based on other parameter arguments)

2019-05-09 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2001:
--

Still some issues, though:
- we don't render any of the params as disabled by default. the initial logic 
to hide params is in ActionParametersForm, so could add 'disable' logic in 
there.
- however, also, really that logic should probably move to ScalarModel 
(currently whetherHidden/Disabled for params always returns false/null, which 
is now a lie - should push this logic further back).

Also
- couldn't get disablement working for blob panels, so that is not yet 
supported (multipart exceptions)
- ? get (ignored) exception if hit Esc (rather than Cancel button)

~~

THE CURRENT PARTIAL SOLUTION has the UNFORTUNATE side effect that the 
IsisBlobPanel is invisible when rendered as a disable property...

 

> Dynamically hide/disable/default action parameters (based on other parameter 
> arguments)
> ---
>
> Key: ISIS-2001
> URL: https://issues.apache.org/jira/browse/ISIS-2001
> Project: Isis
>  Issue Type: New Feature
>Affects Versions: 1.16.2
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 1.18.0
>
>
> some notes:
> ActionParametersForm.java
> ScalarPanelAbstract2#updateIfNecessary(..) as a new hook method to be 
> implemented everywhere
> - if choices facet then update choices ... DONE ALREADY
> - if default facet then recompute ... TO DO EVERYWHERE, on the getModel() 
>   - and "sync" the value into the UI widget
> 1. for the existing logic that evaluates choicesX based on choices(Y should also evaluate any defaultX that we see.
> 2. also do this for an autoCompleteX
> 3. new logic looking for a change in any scalar, then search for other params 
> with a default that depend on that.
> Nice to have, but will need changes to metamodel so we'll leave for now:
> 4. support the idea of disableX for params
> 5. support the idea of hideX for params
> based on a change (autoComplete, choices or scalar)
> ... re-evaluate choices, default, disable, hide
> ~~
> Organisation -> BankAccount
> public void doSomething(
>   Organisation org,
>   BankAccount bankAccount,
>   ...
>   ) {
>   
> }
> public List autoComplete0DoSomething(String str) {  }
> public List choices0DoSomething() {  }
> public List choices1DoSomething(Organisation org) { ... }
> public BankAccount default1DoSomething(Organisation org) { /*return 
> choices1DoSomething(organisation).get(0); */ }
> ~~
> public void calc(
>   BigDecimal netAmount,
>   BigDecimal vatAmount,
>   BigDecimal grossAmount
>   ...
>   ) {
>   
> }
> public BigDecimal default2Calc(BigDecimal netAmount, BigDecimal vatAmount) { 
> return netAmount + vatAmount; }
> //public String disable2Calc() { return "disabled"; }
> //public boolean hide2Calc(BigDecimal netAmount, BigDecimal vatAmount) { 
> return netAmount == null; }



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (ISIS-2105) mixin to download metamodel in XML for each class

2019-05-09 Thread Dan Haywood (JIRA)


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

Dan Haywood resolved ISIS-2105.
---
Resolution: Fixed

> mixin to download metamodel in XML for each class
> -
>
> Key: ISIS-2105
> URL: https://issues.apache.org/jira/browse/ISIS-2105
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.17.0
>Reporter: Dan Haywood
>Assignee: Dan Haywood
>Priority: Trivial
> Fix For: 1.18.0
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2116) Avoid error in downloadMetaModelXml, CommandPersistence.NOT_PERSISTED facet not decoded correctly.

2019-05-09 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2116:
-

 Summary: Avoid error in downloadMetaModelXml, 
CommandPersistence.NOT_PERSISTED facet not decoded correctly.
 Key: ISIS-2116
 URL: https://issues.apache.org/jira/browse/ISIS-2116
 Project: Isis
  Issue Type: Bug
Affects Versions: 1.17.0
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 1.18.0






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ISIS-2115) Prevent ajax js error for inlinePromptLink on scalar panel

2019-05-09 Thread Dan Haywood (JIRA)
Dan Haywood created ISIS-2115:
-

 Summary: Prevent ajax js error for inlinePromptLink on scalar panel
 Key: ISIS-2115
 URL: https://issues.apache.org/jira/browse/ISIS-2115
 Project: Isis
  Issue Type: Bug
Reporter: Dan Haywood
Assignee: Dan Haywood
 Fix For: 1.18.0


Doesn't seem to effect behaviour, but creates noise in browser JS console.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2064) Allow explicit vs implicit metamodel discovery to be specified with @DomainObject

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2064:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Allow explicit vs implicit metamodel discovery to be specified with 
> @DomainObject
> -
>
> Key: ISIS-2064
> URL: https://issues.apache.org/jira/browse/ISIS-2064
> Project: Isis
>  Issue Type: New Feature
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.5
>
>
> as per dev mailing list
> [https://lists.apache.org/thread.html/9d766b4e43079f81d1a72c9a78be9f78f65433cb92288394b7f195df@%3Cusers.isis.apache.org%3E]
>  
> We currently have the configuration property 
> "isis.reflector.explicitAnnotations.action" which if specified requires 
> @Action to be added as an annotation for all public methods that don't 
> represent properties/collections or supporting methods.  If this is enabled 
> then there's generally no need to annotate public methods that aren't meant 
> to be in the metamodel with the @Programmatic annotation.
>   
>  Andi and I have just been discussing this (off-list) and wondering if we 
> should extend this in v2.  Our idea is maybe to allow this to be specified at 
> the class level, and to also have three levels rather than two:
>   
>  - explicit : all properties, collections and actions must be annotated
>  - actions : actions must be annotated, but properties and collections need 
> not.  This is the behavior if the above configuration property is specified.
>  - implicit : no annotations are required.  This is the current default
>   
>  So, we were thinking to add a value to @DomainObject, eg
>   
>  @DomainObject(metamodelDiscoveryStrategy = EXPLICIT | ACTIONS | IMPLICIT | 
> AS_CONFIGURED)
>   
>  where "AS_CONFIGURED" would read a new configuration property that would 
> take these three values (replacing the existing 
> "isis.reflector.explicitAnnotations.action".
>   
>  Two questions:
>   
>  1. is the idea of a new level to explicitly annotate everything (properties 
> and collections as well as actions) useful ?
>  2. is there a need to configure this on a class-by-class basis, or is a 
> global configuration property sufficient?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2093) Dialog OK Button: when ARE_YOU_SURE semantics then render style 'DANGER'

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2093:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Dialog OK Button: when ARE_YOU_SURE semantics then render style 'DANGER'
> 
>
> Key: ISIS-2093
> URL: https://issues.apache.org/jira/browse/ISIS-2093
> Project: Isis
>  Issue Type: Improvement
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Assignee: Andi Huber
>Priority: Major
> Fix For: 2.0.5
>
> Attachments: confirm_no_danger.png
>
>
> To be consistent with other action buttons, that have an associated 
> are-you-sure confirmation dialog.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2041) LogonFixture is deprecated, replace by FixtureScript

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2041:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> LogonFixture is deprecated, replace by FixtureScript
> 
>
> Key: ISIS-2041
> URL: https://issues.apache.org/jira/browse/ISIS-2041
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Reporter: Andi Huber
>Priority: Major
> Fix For: 2.0.5
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1971) JAXB view model: setting view's properties via PostConstruct method not honored

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1971:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> JAXB view model: setting view's properties via PostConstruct method not 
> honored
> ---
>
> Key: ISIS-1971
> URL: https://issues.apache.org/jira/browse/ISIS-1971
> Project: Isis
>  Issue Type: Bug
>Affects Versions: 2.0.0-M1
>Reporter: Andi Huber
>Priority: Major
> Fix For: 2.0.5
>
>
> {code:java}
> // CALLER
> @DomainService(nature=NatureOfService.VIEW_MENU_ONLY)
> @DomainObjectLayout(named="Scalar Demo")
> public class ScalarMenu {
> 
> @Inject private FactoryService factoryService;
> @Action
> @ActionLayout(cssClassFa="fa-font")
> public TextDemo text(){
> val demo = factoryService.instantiate(TextDemo.class);
> return demo;
> }
> }
> // VIEW MODEL
> @XmlRootElement(name = "Demo")
> @XmlType
> @XmlAccessorType(XmlAccessType.FIELD)
> @DomainObject(nature=Nature.VIEW_MODEL)
> @Log
> public class TextDemo {
> @PostConstruct
> public void initDefaults() {
> 
> log.info("TextDemo::initDefaults");
> 
> string = "a string (click me)";
> }
> 
> @Property(editing=Editing.ENABLED) 
> @XmlElement @Getter @Setter private String string; // string shows up on 
> UI as empty, even though initDefaults was called
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1921) Confirmation-Popups sometimes render outside window bounds

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1921:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Confirmation-Popups sometimes render outside window bounds
> --
>
> Key: ISIS-1921
> URL: https://issues.apache.org/jira/browse/ISIS-1921
> Project: Isis
>  Issue Type: Sub-task
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Priority: Minor
> Fix For: 2.0.5
>
>
> ARE_YOU_SURE semantics triggers a UI popup that sometimes might render 
> outside the windows bounds.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1922) Session Timeout Indication

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1922:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Session Timeout Indication
> --
>
> Key: ISIS-1922
> URL: https://issues.apache.org/jira/browse/ISIS-1922
> Project: Isis
>  Issue Type: Sub-task
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Priority: Minor
> Fix For: 2.0.5
>
>
> Eg when a user clicks on a Menu Item, while the session has already timed 
> out, the session silently refreshes and no action is executed.
> From a user's perspective, she/he experiences an application that sometimes 
> is ignoring clicks.
> We should a least show a fade-in/out message to give a user friendly 
> notification, that her/his session was timed out and hence needed to be 
> refreshed.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1989) Disabled buttons (action-links) won't show the styled tooltip

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1989:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Disabled buttons (action-links) won't show the styled tooltip
> -
>
> Key: ISIS-1989
> URL: https://issues.apache.org/jira/browse/ISIS-1989
> Project: Isis
>  Issue Type: Sub-task
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Assignee: Dan Haywood
>Priority: Major
> Fix For: 2.0.5
>
> Attachments: no-tooltip.png
>
>
> Disabled buttons (action-links) won't show the styled tooltip, only the 
> browser's built in one.
> jquery select for tooltip() does ignore disabled dom elements



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1990) Buttons (action-links) don't honor disabled state if providing a confirmation dialog

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1990:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Buttons (action-links) don't honor disabled state if providing a confirmation 
> dialog
> 
>
> Key: ISIS-1990
> URL: https://issues.apache.org/jira/browse/ISIS-1990
> Project: Isis
>  Issue Type: Sub-task
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Priority: Major
> Fix For: 2.0.5
>
> Attachments: confirm_not_auth.png
>
>
> Disabled buttons (action-links) with confirmation dialog do open the dialog 
> on click, but should not. Should instead show a 'no access' tooltip.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1924) Indicator for Long Running Actions

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1924:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Indicator for Long Running Actions
> --
>
> Key: ISIS-1924
> URL: https://issues.apache.org/jira/browse/ISIS-1924
> Project: Isis
>  Issue Type: Sub-task
>  Components: Core: Viewer: Wicket
>Reporter: Andi Huber
>Priority: Minor
> Fix For: 2.0.5
>
>
> Actions that take more than 1-2 sec to execute should indicate activity.
> Maybe we can do this the same way as its already done when switching a 
> Collection-View's rendering mode. (eg 'excel' to 'table')



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-2098) Buttons (action-links) with confirmation don't show their associated tooltip

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-2098:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Buttons (action-links) with confirmation don't show their associated tooltip
> 
>
> Key: ISIS-2098
> URL: https://issues.apache.org/jira/browse/ISIS-2098
> Project: Isis
>  Issue Type: Sub-task
>Reporter: Andi Huber
>Priority: Minor
> Fix For: 2.0.5
>
> Attachments: no-tooltip-2.png
>
>
> Buttons (action-links) with confirmation don't show their associated tooltip 
> when mouse-over.
> Tooltip text is however rendered after clicking on the button (on top of the 
> opened confirmation-dialog). 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1914) Remove the ability to add additional services to an AppManifest or Module

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1914:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Remove the ability to add additional services to an AppManifest or Module
> -
>
> Key: ISIS-1914
> URL: https://issues.apache.org/jira/browse/ISIS-1914
> Project: Isis
>  Issue Type: Question
>Reporter: Andi Huber
>Priority: Major
> Fix For: 2.0.5
>
>
> Instead, should work only at the Module level.
> ~~~
> this is prompted by Andi's original reason for raising this ticket, where he 
> noted:
>  
> Adding a Service outside of the scope of configured modules fails with
> {noformat}
> java.lang.AssertionError: Metamodel is invalid: 
> Domain objects discovered in package 'x.x.x' are not in the set of modules 
> obtained from the AppManifest's top-level module 'y.y.y.MyModule'.  Classes 
> are: x.x.x.MyService
> {noformat}
> +Source:+
> {code:java}
> public abstract class DomainAppIntegTestAbstract extends 
> IntegrationTestAbstract3 {
> public DomainAppIntegTestAbstract() {
> super(new MyModule()
>   .withAdditionalServices(MyService.class)
>   
>   ...
>   
>   ;
> }
> }
> {code}
> If this behavior is intended, than what is the point of adding additional 
> services?
>  
> ~~~
> ^^^ which is a fair point.  So, we ought to just get rid of that capability 
> to add adhoc services, and instead require only that the user specifies 
> additional modules (which they already can do) and pick up any services 
> within those modules.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-561) Now we have support for view models, we could simplify matters elsewhere by removing support for transient objects.

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-561:
-
Fix Version/s: (was: 2.0.0)
   2.0.5

> Now we have support for view models, we could simplify matters elsewhere by 
> removing support for transient objects.
> ---
>
> Key: ISIS-561
> URL: https://issues.apache.org/jira/browse/ISIS-561
> Project: Isis
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: viewer-wicket-1.2.0, viewer-restfulobjects-2.0.0, 
> core-1.2.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.5
>
>
> Some discussion is required before going ahead with this.  But it'd be nice 
> to delete a bunch of code... :-)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ISIS-1862) Delete CukeGlueBootstrappingAbstract, since of no practicable use.

2019-05-02 Thread Dan Haywood (JIRA)


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

Dan Haywood updated ISIS-1862:
--
Fix Version/s: (was: 2.0.0)
   2.0.5

> Delete CukeGlueBootstrappingAbstract, since of no practicable use.
> --
>
> Key: ISIS-1862
> URL: https://issues.apache.org/jira/browse/ISIS-1862
> Project: Isis
>  Issue Type: Improvement
>Affects Versions: 1.16.0
>Reporter: Dan Haywood
>Priority: Major
> Fix For: 2.0.5
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


  1   2   3   4   5   6   7   8   9   10   >