[jira] [Created] (ISIS-2217) Rename ext fixture's Module interface to ModuleWithFixtures
Daniel Keir Haywood created ISIS-2217: - Summary: Rename ext fixture's Module interface to ModuleWithFixtures Key: ISIS-2217 URL: https://issues.apache.org/jira/browse/ISIS-2217 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2217) Rename ext fixture's Module interface to ModuleWithFixtures
[ https://issues.apache.org/jira/browse/ISIS-2217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2217. --- Resolution: Fixed > Rename ext fixture's Module interface to ModuleWithFixtures > --- > > Key: ISIS-2217 > URL: https://issues.apache.org/jira/browse/ISIS-2217 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-1297) Integrate with Keycloak
[ https://issues.apache.org/jira/browse/ISIS-1297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-1297. --- Resolution: Fixed > Integrate with Keycloak > --- > > Key: ISIS-1297 > URL: https://issues.apache.org/jira/browse/ISIS-1297 > Project: Isis > Issue Type: New Feature >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > As suggested on the Apache Isis mailing list. > http://markmail.org/message/6jwghlmyravuxfbx > There are several approaches ... > As described in our security guide [1] Apache Isis has a pluggable API for > both authentication and authorization, so at the lowest level one could > take implement either/both of these plugin points. > Apache Isis has two integrations, one for Shiro and one called "bypass" > (which basically disables security). So one could ignore Apache Isis' > Shiro integration and implement everything yourself. > However, it would probably make more sense to build > upon the Isis Add-ons security module [2], which builds upon the Shiro > integration by providing an implementation of a Shiro Realm. This is > described in [3]. In fact, I would suggest that keycloak would be used as > a delegate realm within the Isis addons' security module. > In other words, the design that we could use is: > Apache Isis -> Shiro -> Isis addons security realm -> Isis addons > delegate realm > This last realm would be implemented using Keycloak. > The documentation in the security module [4] and [5] might also help to > explain this. > Note that this design would use Keycloak for authentication (validate > credentials and lookup roles), with the security module taking > responsibility for authorization. > [1] http://isis.apache.org/guides/ugsec.html > [2] https://github.com/isisaddons/isis-module-security > [3] > http://isis.apache.org/guides/ugsec.html#_ugsec_shiro-isisaddons-security-module-realm > [4] https://github.com/isisaddons/isis-module-security#application-users > [5] > https://github.com/isisaddons/isis-module-security#shiro-configuration-shiroini -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2216) Standardize service @Ordered, @Named, @Primary
[ https://issues.apache.org/jira/browse/ISIS-2216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2216. --- Resolution: Fixed > Standardize service @Ordered, @Named, @Primary > -- > > Key: ISIS-2216 > URL: https://issues.apache.org/jira/browse/ISIS-2216 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2190) ExceptionRecognizer not working - eg attempt to create 2 Hello World objects with same name.
[ https://issues.apache.org/jira/browse/ISIS-2190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2190. --- Resolution: Fixed fixed during ISIS-2215, ISIS-2216, I think (an ExceptionRecognizer wasn't registered) > ExceptionRecognizer not working - eg attempt to create 2 Hello World objects > with same name. > > > Key: ISIS-2190 > URL: https://issues.apache.org/jira/browse/ISIS-2190 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > To reproduce: > with hello world: > a) create "Hello World" object > b) attempt to create another object with the same name > What should happen: > * toast warning that the object already exists > What actually happens: > * stack trace -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2184) Rationalize @Order of our service beans to use enum constants.
[ https://issues.apache.org/jira/browse/ISIS-2184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2184. --- Resolution: Fixed Done as part of ISIS-2216 > Rationalize @Order of our service beans to use enum constants. > -- > > Key: ISIS-2184 > URL: https://issues.apache.org/jira/browse/ISIS-2184 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > On the note of @Order, I've been meaning to mention, I think our highest > priority beans should be +100, and our lowest priority beans should be > (Integer.MAX_VALUE - 100). That way it gives the application developer the > ability to provide overrides or fallbacks as required. > > Andi, 11:20 > we could just define order constants; Just looking, because I think I've > declared these somewhere already. > not consequently used yet, but its there ... > org.apache.isis.commons.internal.ioc.PriorityConstants > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2218) Remove AuthenticationManager interface, just use AuthenticationManagerStandard as default impl.
Daniel Keir Haywood created ISIS-2218: - Summary: Remove AuthenticationManager interface, just use AuthenticationManagerStandard as default impl. Key: ISIS-2218 URL: https://issues.apache.org/jira/browse/ISIS-2218 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2218) Remove AuthenticationManager interface, just use AuthenticationManagerStandard as default impl.
[ https://issues.apache.org/jira/browse/ISIS-2218?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2218. --- Resolution: Fixed > Remove AuthenticationManager interface, just use > AuthenticationManagerStandard as default impl. > --- > > Key: ISIS-2218 > URL: https://issues.apache.org/jira/browse/ISIS-2218 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (ISIS-2189) HealthCheckService should integrate with Spring Boot's actuator infra.
[ https://issues.apache.org/jira/browse/ISIS-2189?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reassigned ISIS-2189: - Assignee: Daniel Keir Haywood > HealthCheckService should integrate with Spring Boot's actuator infra. > -- > > Key: ISIS-2189 > URL: https://issues.apache.org/jira/browse/ISIS-2189 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2189) HealthCheckService should integrate with Spring Boot's actuator infra.
[ https://issues.apache.org/jira/browse/ISIS-2189?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2189. --- Resolution: Fixed > HealthCheckService should integrate with Spring Boot's actuator infra. > -- > > Key: ISIS-2189 > URL: https://issues.apache.org/jira/browse/ISIS-2189 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2219) Move LDAP Realm implementation into an extension.
Daniel Keir Haywood created ISIS-2219: - Summary: Move LDAP Realm implementation into an extension. Key: ISIS-2219 URL: https://issues.apache.org/jira/browse/ISIS-2219 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2219) Move LDAP Realm implementation into an extension.
[ https://issues.apache.org/jira/browse/ISIS-2219?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2219. --- Resolution: Fixed > Move LDAP Realm implementation into an extension. > - > > Key: ISIS-2219 > URL: https://issues.apache.org/jira/browse/ISIS-2219 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2222) Flesh out demo app with extra examples.
Daniel Keir Haywood created ISIS-: - Summary: Flesh out demo app with extra examples. Key: ISIS- URL: https://issues.apache.org/jira/browse/ISIS- Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (ISIS-2210) When web browser is narrow, sidebar always shown.
[ https://issues.apache.org/jira/browse/ISIS-2210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reassigned ISIS-2210: - Assignee: Daniel Keir Haywood > When web browser is narrow, sidebar always shown. > - > > Key: ISIS-2210 > URL: https://issues.apache.org/jira/browse/ISIS-2210 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2210) When web browser is narrow, sidebar always shown.
[ https://issues.apache.org/jira/browse/ISIS-2210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2210. --- Resolution: Fixed > When web browser is narrow, sidebar always shown. > - > > Key: ISIS-2210 > URL: https://issues.apache.org/jira/browse/ISIS-2210 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2225) Simplify config metadata for wicket footer credits.
Daniel Keir Haywood created ISIS-2225: - Summary: Simplify config metadata for wicket footer credits. Key: ISIS-2225 URL: https://issues.apache.org/jira/browse/ISIS-2225 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2225) Simplify config metadata for wicket footer credits.
[ https://issues.apache.org/jira/browse/ISIS-2225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2225. --- Resolution: Fixed > Simplify config metadata for wicket footer credits. > --- > > Key: ISIS-2225 > URL: https://issues.apache.org/jira/browse/ISIS-2225 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2198) Remove welcome.file config settings and welcome text
[ https://issues.apache.org/jira/browse/ISIS-2198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2198. --- Resolution: Fixed > Remove welcome.file config settings and welcome text > > > Key: ISIS-2198 > URL: https://issues.apache.org/jira/browse/ISIS-2198 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > Most major apps will have a home page, so the concept of some welcome text on > the home page isn't really that useful. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2201) Configure a Spring Boot fallback error page.
[ https://issues.apache.org/jira/browse/ISIS-2201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2201. --- Resolution: Fixed > Configure a Spring Boot fallback error page. > > > Key: ISIS-2201 > URL: https://issues.apache.org/jira/browse/ISIS-2201 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2230) ERROR: Recursive call to appender Console (showing up on MacBook)
Daniel Keir Haywood created ISIS-2230: - Summary: ERROR: Recursive call to appender Console (showing up on MacBook) Key: ISIS-2230 URL: https://issues.apache.org/jira/browse/ISIS-2230 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-857) [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, Note, Description); ann
[ https://issues.apache.org/jira/browse/ISIS-857?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-857: - Summary: [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, Note, Description); annotated with @Mask annotation (was: [DUPLICATE] JDO/Wicket/RO: provide support for a number of built-in value types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, Note, Description); annotated with @Mask annotation) > [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value > types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, > Note, Description); annotated with @Mask annotation > > > Key: ISIS-857 > URL: https://issues.apache.org/jira/browse/ISIS-857 > Project: Isis > Issue Type: New Feature > Components: Core: Objectstore: JDO, Core: Viewer: RestfulObjects, > Core: Viewer: Wicket >Affects Versions: viewer-wicket-1.6.0, core-1.6.0 >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.10.0 > > > The idea here is to make it easy for the developer to write their own value > types which (by inheriting from base classes) are automatically supported by > both the JDO Objectstore, the Wicket viewer and the RO viewer. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-1695) Support value types (simple ones at least) as a first-class citizen
[ https://issues.apache.org/jira/browse/ISIS-1695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-1695: -- Fix Version/s: (was: 2.10.0) 2.0.0 > Support value types (simple ones at least) as a first-class citizen > --- > > Key: ISIS-1695 > URL: https://issues.apache.org/jira/browse/ISIS-1695 > Project: Isis > Issue Type: New Feature >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > I would like to reintroduce value types as a first-class citizen, but without > requiring the developer to have to write lots of code to teach DataNucleus, > Wicket and the RO viewer about these. > I don't have a general solution in mind on how to do this. > However, for very simple value types that are just a type-safe wrapper around > a single field (eg Password, or Money, or Temperature, or Email say), then > perhaps there might be a way to support this, eg : > public class Temperature implements > org.apache.isis.valuetypes.Value { ... } > or > @Value(underlying=BigDecimal.class) > public class Temperature { ... } > The idea here is that the framework would treat any instance of this custom > value type as if it were the underlying type (BigDecimal in the case above). > It would also be possible to apply validations to the value type that would > apply everywhere it is used as a property/parameter. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-857) [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, Note, Description); ann
[ https://issues.apache.org/jira/browse/ISIS-857?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-857: - Fix Version/s: (was: 2.10.0) 2.0.0 > [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value > types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, > Note, Description); annotated with @Mask annotation > > > Key: ISIS-857 > URL: https://issues.apache.org/jira/browse/ISIS-857 > Project: Isis > Issue Type: New Feature > Components: Core: Objectstore: JDO, Core: Viewer: RestfulObjects, > Core: Viewer: Wicket >Affects Versions: viewer-wicket-1.6.0, core-1.6.0 >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > The idea here is to make it easy for the developer to write their own value > types which (by inheriting from base classes) are automatically supported by > both the JDO Objectstore, the Wicket viewer and the RO viewer. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-857) [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, Note, Description); an
[ https://issues.apache.org/jira/browse/ISIS-857?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-857. -- Resolution: Won't Fix instead, see ISIS-1695 > [WON'T FIX] JDO/Wicket/RO: provide support for a number of built-in value > types (eg BaseNumber, BaseString, BaseDate... to support Money, Reference, > Note, Description); annotated with @Mask annotation > > > Key: ISIS-857 > URL: https://issues.apache.org/jira/browse/ISIS-857 > Project: Isis > Issue Type: New Feature > Components: Core: Objectstore: JDO, Core: Viewer: RestfulObjects, > Core: Viewer: Wicket >Affects Versions: viewer-wicket-1.6.0, core-1.6.0 >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > The idea here is to make it easy for the developer to write their own value > types which (by inheriting from base classes) are automatically supported by > both the JDO Objectstore, the Wicket viewer and the RO viewer. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-1695) Support value types (simple ones at least) as a first-class citizen
[ https://issues.apache.org/jira/browse/ISIS-1695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-1695: -- Description: I would like to reintroduce value types as a first-class citizen, but without requiring the developer to have to write lots of code to teach DataNucleus, Wicket and the RO viewer about these. I don't have a general solution in mind on how to do this. However, for very simple value types that are just a type-safe wrapper around a single field (eg Password, or Money, or Temperature, or Email say), then perhaps there might be a way to support this, eg : public class Temperature implements org.apache.isis.valuetypes.Value { public Temperature(BigDecimal value) \{ ... } BigDecimal getValue() \{ ... } } or @Value(underlying=BigDecimal.class) public class Temperature \{ ... } The idea here is that the framework would treat any instance of this custom value type as if it were the underlying type (BigDecimal in the case above). It would also be possible to apply validations to the value type that would apply everywhere it is used as a property/parameter. We would expect these value types to be immutable, and (although this can't be expressed in an interface), would expect there to be a public 1-arg constructor of the appropriate type, and a package-local "getValue()" method. These allow the framework to marshal values in and out of the value type. was: I would like to reintroduce value types as a first-class citizen, but without requiring the developer to have to write lots of code to teach DataNucleus, Wicket and the RO viewer about these. I don't have a general solution in mind on how to do this. However, for very simple value types that are just a type-safe wrapper around a single field (eg Password, or Money, or Temperature, or Email say), then perhaps there might be a way to support this, eg : public class Temperature implements org.apache.isis.valuetypes.Value { ... } or @Value(underlying=BigDecimal.class) public class Temperature { ... } The idea here is that the framework would treat any instance of this custom value type as if it were the underlying type (BigDecimal in the case above). It would also be possible to apply validations to the value type that would apply everywhere it is used as a property/parameter. > Support value types (simple ones at least) as a first-class citizen > --- > > Key: ISIS-1695 > URL: https://issues.apache.org/jira/browse/ISIS-1695 > Project: Isis > Issue Type: New Feature >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > I would like to reintroduce value types as a first-class citizen, but without > requiring the developer to have to write lots of code to teach DataNucleus, > Wicket and the RO viewer about these. > I don't have a general solution in mind on how to do this. > However, for very simple value types that are just a type-safe wrapper around > a single field (eg Password, or Money, or Temperature, or Email say), then > perhaps there might be a way to support this, eg : > public class Temperature implements > org.apache.isis.valuetypes.Value { > public Temperature(BigDecimal value) \{ ... } > BigDecimal getValue() \{ ... } > } > > or > > @Value(underlying=BigDecimal.class) > public class Temperature \{ ... } > The idea here is that the framework would treat any instance of this custom > value type as if it were the underlying type (BigDecimal in the case above). > It would also be possible to apply validations to the value type that would > apply everywhere it is used as a property/parameter. > > We would expect these value types to be immutable, and (although this can't > be expressed in an interface), would expect there to be a public 1-arg > constructor of the appropriate type, and a package-local "getValue()" method. > These allow the framework to marshal values in and out of the value type. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2231) Bring incode-platform's lib modules in as extensions.
Daniel Keir Haywood created ISIS-2231: - Summary: Bring incode-platform's lib modules in as extensions. Key: ISIS-2231 URL: https://issues.apache.org/jira/browse/ISIS-2231 Project: Isis Issue Type: Improvement Affects Versions: 2.0.0-M2 Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2232) Interaction's executionGraph should not be appended to during the render phase.
Daniel Keir Haywood created ISIS-2232: - Summary: Interaction's executionGraph should not be appended to during the render phase. Key: ISIS-2232 URL: https://issues.apache.org/jira/browse/ISIS-2232 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (ISIS-2232) Interaction's executionGraph should not be appended to during the render phase.
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reassigned ISIS-2232: - Assignee: Daniel Keir Haywood > Interaction's executionGraph should not be appended to during the render > phase. > --- > > Key: ISIS-2232 > URL: https://issues.apache.org/jira/browse/ISIS-2232 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2232) Interaction's executionGraph should not be appended to during the render phase.
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Fix Version/s: 2.0.0 > Interaction's executionGraph should not be appended to during the render > phase. > --- > > Key: ISIS-2232 > URL: https://issues.apache.org/jira/browse/ISIS-2232 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-1656) Flush auditing/publishing etc to end of the ACTION phase, rather than end of RENDER phase.
[ https://issues.apache.org/jira/browse/ISIS-1656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-1656: -- Fix Version/s: (was: 2.3.0) 2.0.0 > Flush auditing/publishing etc to end of the ACTION phase, rather than end of > RENDER phase. > -- > > Key: ISIS-1656 > URL: https://issues.apache.org/jira/browse/ISIS-1656 > Project: Isis > Issue Type: Improvement > Components: Core: Viewer: Wicket >Affects Versions: 1.14.0 >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > cf ISIS=1655, whereby we can only flush QueryResultsCache and not the other > two transaction-scoped services. > I think we should probably bring the hook for the auditing etc forward to the > beginning of the RENDER phase, ie using the same hook that we have installed > TargetRespondListenerToResetQueryResultCache class. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (ISIS-1656) Flush auditing/publishing etc to end of the ACTION phase, rather than end of RENDER phase.
[ https://issues.apache.org/jira/browse/ISIS-1656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reassigned ISIS-1656: - Assignee: Daniel Keir Haywood > Flush auditing/publishing etc to end of the ACTION phase, rather than end of > RENDER phase. > -- > > Key: ISIS-1656 > URL: https://issues.apache.org/jira/browse/ISIS-1656 > Project: Isis > Issue Type: Improvement > Components: Core: Viewer: Wicket >Affects Versions: 1.14.0 >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > cf ISIS=1655, whereby we can only flush QueryResultsCache and not the other > two transaction-scoped services. > I think we should probably bring the hook for the auditing etc forward to the > beginning of the RENDER phase, ie using the same hook that we have installed > TargetRespondListenerToResetQueryResultCache class. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2233) Wicket developer bar is now semi-opaque. and cannot be interacted with.
Daniel Keir Haywood created ISIS-2233: - Summary: Wicket developer bar is now semi-opaque. and cannot be interacted with. Key: ISIS-2233 URL: https://issues.apache.org/jira/browse/ISIS-2233 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2232) Interaction's executionGraph should not be appended to during the render phase.
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Description: in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of the presence of this contributed action (nb: contributed from a service): {code:java} public class SimpleObjects { @Action(semantics = SemanticsOf.SAFE) public SimpleObject search(final SimpleObject simpleObject) { return simpleObject; } public List autoComplete0Search(final String search) { return findByName(search); } ... }{code} The NPE occurs in the stuff around Interaction's execution: h3. Stack trace: * java.lang.NullPointerException * * org.apache.isis.applib.util.schema.MemberExecutionDtoUtils#metricsFor(MemberExecutionDtoUtils.java:77) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#metricsFor(Interaction.java:640) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#access$200(Interaction.java:582) * org.apache.isis.applib.services.iactn.Interaction$Execution$When$2#syncMetrics(Interaction.java:613) * org.apache.isis.applib.services.iactn.Interaction$Execution#syncMetrics(Interaction.java:660) * org.apache.isis.applib.services.iactn.Interaction$Execution#setCompletedAt(Interaction.java:503) * org.apache.isis.applib.services.iactn.Interaction#pop(Interaction.java:246) * org.apache.isis.applib.services.iactn.Interaction#executeInternal(Interaction.java:193) * org.apache.isis.applib.services.iactn.Interaction#execute(Interaction.java:142) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#doInvoke(ActionInvocationFacetForDomainEventAbstract.java:208) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#lambda$invoke$0(ActionInvocationFacetForDomainEventAbstract.java:129) * org.apache.isis.runtime.services.xactn.TransactionServiceSpring#executeWithinTransaction(TransactionServiceSpring.java:149) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#invoke(ActionInvocationFacetForDomainEventAbstract.java:128) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#executeInternal(ObjectActionDefault.java:423) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#execute(ObjectActionDefault.java:409) * org.apache.isis.metamodel.specloader.specimpl.OneToOneAssociationContributee#get(OneToOneAssociationContributee.java:117) * org.apache.isis.viewer.wicket.model.models.ScalarModel#setObjectFromPropertyIfVisible(ScalarModel.java:761) * org.apache.isis.viewer.wicket.model.models.ScalarModel#access$200(ScalarModel.java:83) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#reset(ScalarModel.java:315) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#init(ScalarModel.java:305) * org.apache.isis.viewer.wicket.model.models.ScalarModel#init(ScalarModel.java:729) * org.apache.isis.viewer.wicket.model.models.ScalarModel#(ScalarModel.java:724) * org.apache.isis.viewer.wicket.model.models.EntityModel#getPropertyModel(EntityModel.java:367) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#addPropertyToForm(PropertyGroup.java:215) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#buildGui(PropertyGroup.java:117) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#(PropertyGroup.java:81) we can see that 'pop' is called but there's no execution to work upon; the stack trace tells us that we're in the render phase and evaluating this contributed property (as an action) to reset the model of the rendered entity. > Interaction's executionGraph should not be appended to during the render > phase. > --- > > Key: ISIS-2232 > URL: https://issues.apache.org/jira/browse/ISIS-2232 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of > the presence of this contributed action (nb: contributed from a service): > > {code:java} > public class SimpleObjects { > @Action(semantics = SemanticsOf.SAFE) > public SimpleObject search(final SimpleObject simpleObject) { > return simpleObject; > } > public List autoComplete0Search(final String search) { > return findByName(search); > } > ... > }{code} > > The NPE occurs in the stuff around Interaction's execution: > h3. Stack trace: > * java.lang.NullPointerException > * > * > org.apache
[jira] [Updated] (ISIS-2232) Contributed properties (from service) throws NPE, due to mismatch in push/pop on the interaction execution graph.
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Summary: Contributed properties (from service) throws NPE, due to mismatch in push/pop on the interaction execution graph. (was: Interaction's executionGraph should not be appended to during the render phase.) > Contributed properties (from service) throws NPE, due to mismatch in push/pop > on the interaction execution graph. > - > > Key: ISIS-2232 > URL: https://issues.apache.org/jira/browse/ISIS-2232 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of > the presence of this contributed action (nb: contributed from a service): > > {code:java} > public class SimpleObjects { > @Action(semantics = SemanticsOf.SAFE) > public SimpleObject search(final SimpleObject simpleObject) { > return simpleObject; > } > public List autoComplete0Search(final String search) { > return findByName(search); > } > ... > }{code} > > The NPE occurs in the stuff around Interaction's execution: > h3. Stack trace: > * java.lang.NullPointerException > * > * > org.apache.isis.applib.util.schema.MemberExecutionDtoUtils#metricsFor(MemberExecutionDtoUtils.java:77) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When#metricsFor(Interaction.java:640) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When#access$200(Interaction.java:582) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When$2#syncMetrics(Interaction.java:613) > * > org.apache.isis.applib.services.iactn.Interaction$Execution#syncMetrics(Interaction.java:660) > * > org.apache.isis.applib.services.iactn.Interaction$Execution#setCompletedAt(Interaction.java:503) > * org.apache.isis.applib.services.iactn.Interaction#pop(Interaction.java:246) > * > org.apache.isis.applib.services.iactn.Interaction#executeInternal(Interaction.java:193) > * > org.apache.isis.applib.services.iactn.Interaction#execute(Interaction.java:142) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#doInvoke(ActionInvocationFacetForDomainEventAbstract.java:208) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#lambda$invoke$0(ActionInvocationFacetForDomainEventAbstract.java:129) > * > org.apache.isis.runtime.services.xactn.TransactionServiceSpring#executeWithinTransaction(TransactionServiceSpring.java:149) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#invoke(ActionInvocationFacetForDomainEventAbstract.java:128) > * > org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#executeInternal(ObjectActionDefault.java:423) > * > org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#execute(ObjectActionDefault.java:409) > * > org.apache.isis.metamodel.specloader.specimpl.OneToOneAssociationContributee#get(OneToOneAssociationContributee.java:117) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#setObjectFromPropertyIfVisible(ScalarModel.java:761) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#access$200(ScalarModel.java:83) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#reset(ScalarModel.java:315) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#init(ScalarModel.java:305) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#init(ScalarModel.java:729) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#(ScalarModel.java:724) > * > org.apache.isis.viewer.wicket.model.models.EntityModel#getPropertyModel(EntityModel.java:367) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#addPropertyToForm(PropertyGroup.java:215) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#buildGui(PropertyGroup.java:117) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#(PropertyGroup.java:81) > > we can see that 'pop' is called but there's no execution to work upon; the > stack trace tells us that we're in the render phase and evaluating this > contributed property (as an action) to reset the model of the rendered entity. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2232) Remove support for domain services contributing properties, collections or actions. (Use mixins instead).
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Summary: Remove support for domain services contributing properties, collections or actions. (Use mixins instead). (was: Contributed properties (from service) throws NPE, due to mismatch in push/pop on the interaction execution graph.) > Remove support for domain services contributing properties, collections or > actions. (Use mixins instead). > -- > > Key: ISIS-2232 > URL: https://issues.apache.org/jira/browse/ISIS-2232 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of > the presence of this contributed action (nb: contributed from a service): > > {code:java} > public class SimpleObjects { > @Action(semantics = SemanticsOf.SAFE) > public SimpleObject search(final SimpleObject simpleObject) { > return simpleObject; > } > public List autoComplete0Search(final String search) { > return findByName(search); > } > ... > }{code} > > The NPE occurs in the stuff around Interaction's execution: > h3. Stack trace: > * java.lang.NullPointerException > * > * > org.apache.isis.applib.util.schema.MemberExecutionDtoUtils#metricsFor(MemberExecutionDtoUtils.java:77) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When#metricsFor(Interaction.java:640) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When#access$200(Interaction.java:582) > * > org.apache.isis.applib.services.iactn.Interaction$Execution$When$2#syncMetrics(Interaction.java:613) > * > org.apache.isis.applib.services.iactn.Interaction$Execution#syncMetrics(Interaction.java:660) > * > org.apache.isis.applib.services.iactn.Interaction$Execution#setCompletedAt(Interaction.java:503) > * org.apache.isis.applib.services.iactn.Interaction#pop(Interaction.java:246) > * > org.apache.isis.applib.services.iactn.Interaction#executeInternal(Interaction.java:193) > * > org.apache.isis.applib.services.iactn.Interaction#execute(Interaction.java:142) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#doInvoke(ActionInvocationFacetForDomainEventAbstract.java:208) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#lambda$invoke$0(ActionInvocationFacetForDomainEventAbstract.java:129) > * > org.apache.isis.runtime.services.xactn.TransactionServiceSpring#executeWithinTransaction(TransactionServiceSpring.java:149) > * > org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#invoke(ActionInvocationFacetForDomainEventAbstract.java:128) > * > org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#executeInternal(ObjectActionDefault.java:423) > * > org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#execute(ObjectActionDefault.java:409) > * > org.apache.isis.metamodel.specloader.specimpl.OneToOneAssociationContributee#get(OneToOneAssociationContributee.java:117) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#setObjectFromPropertyIfVisible(ScalarModel.java:761) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#access$200(ScalarModel.java:83) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#reset(ScalarModel.java:315) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#init(ScalarModel.java:305) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#init(ScalarModel.java:729) > * > org.apache.isis.viewer.wicket.model.models.ScalarModel#(ScalarModel.java:724) > * > org.apache.isis.viewer.wicket.model.models.EntityModel#getPropertyModel(EntityModel.java:367) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#addPropertyToForm(PropertyGroup.java:215) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#buildGui(PropertyGroup.java:117) > * > org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#(PropertyGroup.java:81) > > we can see that 'pop' is called but there's no execution to work upon; the > stack trace tells us that we're in the render phase and evaluating this > contributed property (as an action) to reset the model of the rendered entity. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2232) Remove support for domain services contributing properties, collections or actions. (Use mixins instead).
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Description: Hit an issue where there's an error in contributed properties (from service) throwing NPE, due to mismatch of push/pop with interactoin execution graph. Mixins work fine. Rather than fix the inconsistency, think it's better to now remove that functionality (as we've planned a long while now). Details of the problem encountered: in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of the presence of this contributed action (nb: contributed from a service): {code:java} public class SimpleObjects { @Action(semantics = SemanticsOf.SAFE) public SimpleObject search(final SimpleObject simpleObject) { return simpleObject; } public List autoComplete0Search(final String search) { return findByName(search); } ... }{code} The NPE occurs in the stuff around Interaction's execution: h3. Stack trace: * java.lang.NullPointerException * * org.apache.isis.applib.util.schema.MemberExecutionDtoUtils#metricsFor(MemberExecutionDtoUtils.java:77) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#metricsFor(Interaction.java:640) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#access$200(Interaction.java:582) * org.apache.isis.applib.services.iactn.Interaction$Execution$When$2#syncMetrics(Interaction.java:613) * org.apache.isis.applib.services.iactn.Interaction$Execution#syncMetrics(Interaction.java:660) * org.apache.isis.applib.services.iactn.Interaction$Execution#setCompletedAt(Interaction.java:503) * org.apache.isis.applib.services.iactn.Interaction#pop(Interaction.java:246) * org.apache.isis.applib.services.iactn.Interaction#executeInternal(Interaction.java:193) * org.apache.isis.applib.services.iactn.Interaction#execute(Interaction.java:142) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#doInvoke(ActionInvocationFacetForDomainEventAbstract.java:208) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#lambda$invoke$0(ActionInvocationFacetForDomainEventAbstract.java:129) * org.apache.isis.runtime.services.xactn.TransactionServiceSpring#executeWithinTransaction(TransactionServiceSpring.java:149) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#invoke(ActionInvocationFacetForDomainEventAbstract.java:128) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#executeInternal(ObjectActionDefault.java:423) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#execute(ObjectActionDefault.java:409) * org.apache.isis.metamodel.specloader.specimpl.OneToOneAssociationContributee#get(OneToOneAssociationContributee.java:117) * org.apache.isis.viewer.wicket.model.models.ScalarModel#setObjectFromPropertyIfVisible(ScalarModel.java:761) * org.apache.isis.viewer.wicket.model.models.ScalarModel#access$200(ScalarModel.java:83) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#reset(ScalarModel.java:315) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#init(ScalarModel.java:305) * org.apache.isis.viewer.wicket.model.models.ScalarModel#init(ScalarModel.java:729) * org.apache.isis.viewer.wicket.model.models.ScalarModel#(ScalarModel.java:724) * org.apache.isis.viewer.wicket.model.models.EntityModel#getPropertyModel(EntityModel.java:367) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#addPropertyToForm(PropertyGroup.java:215) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#buildGui(PropertyGroup.java:117) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#(PropertyGroup.java:81) we can see that 'pop' is called but there's no execution to work upon; the stack trace tells us that we're in the render phase and evaluating this contributed property (as an action) to reset the model of the rendered entity. FWIW, with this mixin: {code:java} @Mixin(method = "prop") public class SimpleObject_search { private final SimpleObject simpleObject; public SimpleObject_search(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @Action(semantics = SemanticsOf.SAFE) @Property public SimpleObject prop() { return simpleObject; } } {code} then everything behaves itself. That said, we do get an interaction graph being built up in the render phase, which is odd. was: in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of the presence of this contributed action (nb: contributed from a service): {code:java} public class SimpleObjects { @Action(semantics = SemanticsOf.SAFE)
[jira] [Updated] (ISIS-1656) Flush auditing/publishing etc to end of the ACTION phase, rather than end of RENDER phase.
[ https://issues.apache.org/jira/browse/ISIS-1656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-1656: -- Fix Version/s: (was: 2.0.0) 2.3.0 > Flush auditing/publishing etc to end of the ACTION phase, rather than end of > RENDER phase. > -- > > Key: ISIS-1656 > URL: https://issues.apache.org/jira/browse/ISIS-1656 > Project: Isis > Issue Type: Improvement > Components: Core: Viewer: Wicket >Affects Versions: 1.14.0 >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.3.0 > > > cf ISIS=1655, whereby we can only flush QueryResultsCache and not the other > two transaction-scoped services. > I think we should probably bring the hook for the auditing etc forward to the > beginning of the RENDER phase, ie using the same hook that we have installed > TargetRespondListenerToResetQueryResultCache class. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2234) During the render phase, don't populate the execution call graphs with results of mixins being invoked.
Daniel Keir Haywood created ISIS-2234: - Summary: During the render phase, don't populate the execution call graphs with results of mixins being invoked. Key: ISIS-2234 URL: https://issues.apache.org/jira/browse/ISIS-2234 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.3.0 This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc at the end of the ACTION phase, rather than the RENDER phase. More broadly stated: RENDERing shouldn't have any side-effects. ~~~ Looking at the code today, we can see that in OneToOneAssociationMixedIn there's a hack: {code:java} @Override public ManagedObject get( final ManagedObject mixedInAdapter, final InteractionInitiatedBy interactionInitiatedBy) { val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); return getPublishingServiceInternal().withPublishingSuppressed( () -> mixinAction.executeInternal( mixinAdapter, mixedInAdapter, Can.empty(), interactionInitiatedBy) ); } {code} which prevents the action invocation in the render phase from doing anything. However, inspection of the internal data structures does currently show that the Interaction executionGraph (push, pop) gets populated. ... the bottom line is that actions don't know which phase they are being executed in. Perhaps the solution might be to include that info in the InteractionContext ??? -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2232) Remove support for domain services contributing properties, collections or actions. (Use mixins instead).
[ https://issues.apache.org/jira/browse/ISIS-2232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2232: -- Description: Hit an issue where there's an error in contributed properties (from service) throwing NPE, due to mismatch of push/pop with interactoin execution graph. Mixins work fine. Rather than fix the inconsistency, think it's better to now remove that functionality (as we've planned a long while now). Details of the problem encountered: in the current HEAD (2.0.0-M3-SNAPSHOT), I am getting an NPE as the result of the presence of this contributed action (nb: contributed from a service): {code:java} public class SimpleObjects { @Action(semantics = SemanticsOf.SAFE) public SimpleObject search(final SimpleObject simpleObject) { return simpleObject; } public List autoComplete0Search(final String search) { return findByName(search); } ... }{code} The NPE occurs in the stuff around Interaction's execution: h3. Stack trace: * java.lang.NullPointerException * * org.apache.isis.applib.util.schema.MemberExecutionDtoUtils#metricsFor(MemberExecutionDtoUtils.java:77) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#metricsFor(Interaction.java:640) * org.apache.isis.applib.services.iactn.Interaction$Execution$When#access$200(Interaction.java:582) * org.apache.isis.applib.services.iactn.Interaction$Execution$When$2#syncMetrics(Interaction.java:613) * org.apache.isis.applib.services.iactn.Interaction$Execution#syncMetrics(Interaction.java:660) * org.apache.isis.applib.services.iactn.Interaction$Execution#setCompletedAt(Interaction.java:503) * org.apache.isis.applib.services.iactn.Interaction#pop(Interaction.java:246) * org.apache.isis.applib.services.iactn.Interaction#executeInternal(Interaction.java:193) * org.apache.isis.applib.services.iactn.Interaction#execute(Interaction.java:142) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#doInvoke(ActionInvocationFacetForDomainEventAbstract.java:208) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#lambda$invoke$0(ActionInvocationFacetForDomainEventAbstract.java:129) * org.apache.isis.runtime.services.xactn.TransactionServiceSpring#executeWithinTransaction(TransactionServiceSpring.java:149) * org.apache.isis.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract#invoke(ActionInvocationFacetForDomainEventAbstract.java:128) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#executeInternal(ObjectActionDefault.java:423) * org.apache.isis.metamodel.specloader.specimpl.ObjectActionDefault#execute(ObjectActionDefault.java:409) * org.apache.isis.metamodel.specloader.specimpl.OneToOneAssociationContributee#get(OneToOneAssociationContributee.java:117) * org.apache.isis.viewer.wicket.model.models.ScalarModel#setObjectFromPropertyIfVisible(ScalarModel.java:761) * org.apache.isis.viewer.wicket.model.models.ScalarModel#access$200(ScalarModel.java:83) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#reset(ScalarModel.java:315) * org.apache.isis.viewer.wicket.model.models.ScalarModel$Kind$1#init(ScalarModel.java:305) * org.apache.isis.viewer.wicket.model.models.ScalarModel#init(ScalarModel.java:729) * org.apache.isis.viewer.wicket.model.models.ScalarModel#(ScalarModel.java:724) * org.apache.isis.viewer.wicket.model.models.EntityModel#getPropertyModel(EntityModel.java:367) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#addPropertyToForm(PropertyGroup.java:215) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#buildGui(PropertyGroup.java:117) * org.apache.isis.viewer.wicket.ui.components.entity.fieldset.PropertyGroup#(PropertyGroup.java:81) we can see that 'pop' is called but there's no execution to work upon; the stack trace tells us that we're in the render phase and evaluating this contributed property (as an action) to reset the model of the rendered entity. FWIW, with this mixin: {code:java} @Mixin(method = "prop") public class SimpleObject_search { private final SimpleObject simpleObject; public SimpleObject_search(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @Action(semantics = SemanticsOf.SAFE) @Property public SimpleObject prop() { return simpleObject; } } {code} then everything behaves itself. That said, we do get an interaction graph being built up in the render phase, which is odd. See ISIS-2234 for more discussion on fixing this, and also the similar ISIS-1656 which relates to auditing/publishing. was: Hit an issue where there's an error in contributed properties (from service) throwing NPE, due to mismatch of push/pop
[jira] [Updated] (ISIS-2234) During the render phase, don't populate the execution call graphs with results of mixins being invoked.
[ https://issues.apache.org/jira/browse/ISIS-2234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2234: -- Attachment: screenshot-1.png > During the render phase, don't populate the execution call graphs with > results of mixins being invoked. > --- > > Key: ISIS-2234 > URL: https://issues.apache.org/jira/browse/ISIS-2234 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.3.0 > > Attachments: screenshot-1.png > > > This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc > at the end of the ACTION phase, rather than the RENDER phase. > More broadly stated: RENDERing shouldn't have any side-effects. > ~~~ > Looking at the code today, we can see that in OneToOneAssociationMixedIn > there's a hack: > {code:java} > @Override > public ManagedObject get( > final ManagedObject mixedInAdapter, > final InteractionInitiatedBy interactionInitiatedBy) { > val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); > return getPublishingServiceInternal().withPublishingSuppressed( > () -> mixinAction.executeInternal( > mixinAdapter, mixedInAdapter, Can.empty(), > interactionInitiatedBy) > ); > } > {code} > which prevents the action invocation in the render phase from doing anything. > However, inspection of the internal data structures does currently show that > the Interaction executionGraph (push, pop) gets populated. > ... the bottom line is that actions don't know which phase they are being > executed in. > Perhaps the solution might be to include that info in the InteractionContext > ??? -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2234) During the render phase, don't populate the execution call graphs with results of mixins being invoked.
[ https://issues.apache.org/jira/browse/ISIS-2234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2234: -- Fix Version/s: (was: 2.3.0) 2.0.0 > During the render phase, don't populate the execution call graphs with > results of mixins being invoked. > --- > > Key: ISIS-2234 > URL: https://issues.apache.org/jira/browse/ISIS-2234 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > Attachments: screenshot-1.png > > > This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc > at the end of the ACTION phase, rather than the RENDER phase. > More broadly stated: RENDERing shouldn't have any side-effects. > ~~~ > Looking at the code today, we can see that in OneToOneAssociationMixedIn > there's a hack: > {code:java} > @Override > public ManagedObject get( > final ManagedObject mixedInAdapter, > final InteractionInitiatedBy interactionInitiatedBy) { > val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); > return getPublishingServiceInternal().withPublishingSuppressed( > () -> mixinAction.executeInternal( > mixinAdapter, mixedInAdapter, Can.empty(), > interactionInitiatedBy) > ); > } > {code} > which prevents the action invocation in the render phase from publishing > anything. > However, inspection of the internal data structures does currently show that > the Interaction executionGraph (push, pop) gets populated, there is no > corresponding hack... see attached screenshot, that shows a number of > executions for all of the contributed properties of a SimpleObject. This > isn't harmful per se, but it is odd that we spend all this effort to create > the execution graph for it to be consumed by no-one at all. > The bottom line is that actions don't know which phase they are being > executed in, and so they do all this extra work. > Perhaps the solution might be to include the phase in the InteractionContext, > so we can therefore avoid this unnecessary work populating the executionGraph. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2234) During the render phase, don't populate the execution call graphs with results of mixins being invoked.
[ https://issues.apache.org/jira/browse/ISIS-2234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2234: -- Description: This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc at the end of the ACTION phase, rather than the RENDER phase. More broadly stated: RENDERing shouldn't have any side-effects. ~~~ Looking at the code today, we can see that in OneToOneAssociationMixedIn there's a hack: {code:java} @Override public ManagedObject get( final ManagedObject mixedInAdapter, final InteractionInitiatedBy interactionInitiatedBy) { val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); return getPublishingServiceInternal().withPublishingSuppressed( () -> mixinAction.executeInternal( mixinAdapter, mixedInAdapter, Can.empty(), interactionInitiatedBy) ); } {code} which prevents the action invocation in the render phase from publishing anything. However, inspection of the internal data structures does currently show that the Interaction executionGraph (push, pop) gets populated, there is no corresponding hack... see attached screenshot, that shows a number of executions for all of the contributed properties of a SimpleObject. This isn't harmful per se, but it is odd that we spend all this effort to create the execution graph for it to be consumed by no-one at all. The bottom line is that actions don't know which phase they are being executed in, and so they do all this extra work. Perhaps the solution might be to include the phase in the InteractionContext, so we can therefore avoid this unnecessary work populating the executionGraph. was: This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc at the end of the ACTION phase, rather than the RENDER phase. More broadly stated: RENDERing shouldn't have any side-effects. ~~~ Looking at the code today, we can see that in OneToOneAssociationMixedIn there's a hack: {code:java} @Override public ManagedObject get( final ManagedObject mixedInAdapter, final InteractionInitiatedBy interactionInitiatedBy) { val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); return getPublishingServiceInternal().withPublishingSuppressed( () -> mixinAction.executeInternal( mixinAdapter, mixedInAdapter, Can.empty(), interactionInitiatedBy) ); } {code} which prevents the action invocation in the render phase from doing anything. However, inspection of the internal data structures does currently show that the Interaction executionGraph (push, pop) gets populated. ... the bottom line is that actions don't know which phase they are being executed in. Perhaps the solution might be to include that info in the InteractionContext ??? > During the render phase, don't populate the execution call graphs with > results of mixins being invoked. > --- > > Key: ISIS-2234 > URL: https://issues.apache.org/jira/browse/ISIS-2234 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.3.0 > > Attachments: screenshot-1.png > > > This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc > at the end of the ACTION phase, rather than the RENDER phase. > More broadly stated: RENDERing shouldn't have any side-effects. > ~~~ > Looking at the code today, we can see that in OneToOneAssociationMixedIn > there's a hack: > {code:java} > @Override > public ManagedObject get( > final ManagedObject mixedInAdapter, > final InteractionInitiatedBy interactionInitiatedBy) { > val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); > return getPublishingServiceInternal().withPublishingSuppressed( > () -> mixinAction.executeInternal( > mixinAdapter, mixedInAdapter, Can.empty(), > interactionInitiatedBy) > ); > } > {code} > which prevents the action invocation in the render phase from publishing > anything. > However, inspection of the internal data structures does currently show that > the Interaction executionGraph (push, pop) gets populated, there is no > corresponding hack... see attached screenshot, that shows a number of > executions for all of the contributed properties of a SimpleObject. This > isn't harmful per se, but it is odd that we spend all this effort to create > the execution graph for it to be consumed by no-one at all. > The bottom line is that actions don't know which phase they are being > executed in, and so they do all this extra work. > Perhaps the solution might be to include the phase in the InteractionContext, > so we can therefore avoid this un
[jira] [Commented] (ISIS-2065) Allow homePageService to specify the homePage without the workaround of setting its nature to VIEW_CONTRIBUTIONS_ONLY
[ https://issues.apache.org/jira/browse/ISIS-2065?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17006412#comment-17006412 ] Daniel Keir Haywood commented on ISIS-2065: --- This is fixed in 2.0.0, eg {code:java} @Service @Named("domainapp.HomePageService") public class HomePageService { private final FactoryService factoryService; @Inject public HomePageService(final FactoryService factoryService) { this.factoryService = factoryService; } @Action(semantics = SemanticsOf.SAFE) @HomePage public HomePageViewModel homePage() { return factoryService.instantiate(HomePageViewModel.class); } } {code} > Allow homePageService to specify the homePage without the workaround of > setting its nature to VIEW_CONTRIBUTIONS_ONLY > - > > Key: ISIS-2065 > URL: https://issues.apache.org/jira/browse/ISIS-2065 > Project: Isis > Issue Type: Improvement >Reporter: Maré du Preez >Priority: Minor > Fix For: 1.18.0 > > > Contributed actions will be removed in 2.0, and can be disabled, however they > are used as a workaround for HomePageService to advertise an action to be > invoked to return the homePage but nevertheless to not be rendered in the > menu. > ~~~ > Improve the viewing for WickedCharts. At the moment, if you set the nature of > a WickedChart object to VIEW_MENU_ONLY, it has the side effect of having an > unnecessary menu item appear. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (ISIS-2099) The framework should re-connect to the database if it is lost (eg after an overnight DB restore in a test environment)
[ https://issues.apache.org/jira/browse/ISIS-2099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17006413#comment-17006413 ] Daniel Keir Haywood commented on ISIS-2099: --- This is just a matter of DN configuration settings. datanucleus.connectionPool.testWhenIdle=true datanucleus.connectionPool.testOnBorrow=true datanucleus.connectionPool.testOnReturn=true datanucleus.connectionPool.maxAge=180 datanucleus.connectionPool.minIdle=0 datanucleus.connectionPool.validationQuery=SELECT 1 > The framework should re-connect to the database if it is lost (eg after an > overnight DB restore in a test environment) > -- > > Key: ISIS-2099 > URL: https://issues.apache.org/jira/browse/ISIS-2099 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.17.0 >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 1.18.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2235) Mixins with @Property shouldn't need to indicate contribution style.
Daniel Keir Haywood created ISIS-2235: - Summary: Mixins with @Property shouldn't need to indicate contribution style. Key: ISIS-2235 URL: https://issues.apache.org/jira/browse/ISIS-2235 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.0.0 with this mixin: {code:java} @Property public class SimpleObject_self { private final SimpleObject simpleObject; public SimpleObject_self(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @ActionLayout(contributed = Contributed.AS_ASSOCIATION) public SimpleObject prop() { return simpleObject; } } {code} it's necessary to specify @ActionLayout, otherwise the behaviour is contributed as both an association and an action. The @ActionLayout should be inferred. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2235) Mixins declared using @Property and @Collection shouldn't need to indicate contribution style.
[ https://issues.apache.org/jira/browse/ISIS-2235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2235: -- Summary: Mixins declared using @Property and @Collection shouldn't need to indicate contribution style. (was: Mixins with @Property shouldn't need to indicate contribution style.) > Mixins declared using @Property and @Collection shouldn't need to indicate > contribution style. > -- > > Key: ISIS-2235 > URL: https://issues.apache.org/jira/browse/ISIS-2235 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > with this mixin: > {code:java} > @Property > public class SimpleObject_self { > private final SimpleObject simpleObject; > public SimpleObject_self(SimpleObject simpleObject) { > this.simpleObject = simpleObject; > } > @ActionLayout(contributed = Contributed.AS_ASSOCIATION) > public SimpleObject prop() { > return simpleObject; > } > } > {code} > it's necessary to specify @ActionLayout, otherwise the behaviour is > contributed as both an association and an action. > The @ActionLayout should be inferred. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2235) Mixins declared using @Property and @Collection shouldn't need to indicate contribution style.
[ https://issues.apache.org/jira/browse/ISIS-2235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2235: -- Description: for example, with this mixin: {code:java} @Property public class SimpleObject_self { private final SimpleObject simpleObject; public SimpleObject_self(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @ActionLayout(contributed = Contributed.AS_ASSOCIATION) public SimpleObject prop() { return simpleObject; } } {code} it's necessary to specify @ActionLayout, otherwise the behaviour is contributed as both an association and an action. The @ActionLayout should be inferred. ~~~ See the same for @Collection, also. was: with this mixin: {code:java} @Property public class SimpleObject_self { private final SimpleObject simpleObject; public SimpleObject_self(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @ActionLayout(contributed = Contributed.AS_ASSOCIATION) public SimpleObject prop() { return simpleObject; } } {code} it's necessary to specify @ActionLayout, otherwise the behaviour is contributed as both an association and an action. The @ActionLayout should be inferred. > Mixins declared using @Property and @Collection shouldn't need to indicate > contribution style. > -- > > Key: ISIS-2235 > URL: https://issues.apache.org/jira/browse/ISIS-2235 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > for example, with this mixin: > {code:java} > @Property > public class SimpleObject_self { > private final SimpleObject simpleObject; > public SimpleObject_self(SimpleObject simpleObject) { > this.simpleObject = simpleObject; > } > @ActionLayout(contributed = Contributed.AS_ASSOCIATION) > public SimpleObject prop() { > return simpleObject; > } > } > {code} > it's necessary to specify @ActionLayout, otherwise the behaviour is > contributed as both an association and an action. > The @ActionLayout should be inferred. > ~~~ > See the same for @Collection, also. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2234) During the render phase, don't populate the execution call graphs with results of mixins being invoked.
[ https://issues.apache.org/jira/browse/ISIS-2234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2234: -- Fix Version/s: (was: 2.0.0) 2.3.0 > During the render phase, don't populate the execution call graphs with > results of mixins being invoked. > --- > > Key: ISIS-2234 > URL: https://issues.apache.org/jira/browse/ISIS-2234 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.3.0 > > Attachments: screenshot-1.png > > > This is somewhat similar to ISIS-1656, which is to flush audit/publishing etc > at the end of the ACTION phase, rather than the RENDER phase. > More broadly stated: RENDERing shouldn't have any side-effects. > ~~~ > Looking at the code today, we can see that in OneToOneAssociationMixedIn > there's a hack: > {code:java} > @Override > public ManagedObject get( > final ManagedObject mixedInAdapter, > final InteractionInitiatedBy interactionInitiatedBy) { > val mixinAdapter = mixinAdapterFor(mixinType, mixedInAdapter); > return getPublishingServiceInternal().withPublishingSuppressed( > () -> mixinAction.executeInternal( > mixinAdapter, mixedInAdapter, Can.empty(), > interactionInitiatedBy) > ); > } > {code} > which prevents the action invocation in the render phase from publishing > anything. > However, inspection of the internal data structures does currently show that > the Interaction executionGraph (push, pop) gets populated, there is no > corresponding hack... see attached screenshot, that shows a number of > executions for all of the contributed properties of a SimpleObject. This > isn't harmful per se, but it is odd that we spend all this effort to create > the execution graph for it to be consumed by no-one at all. > The bottom line is that actions don't know which phase they are being > executed in, and so they do all this extra work. > Perhaps the solution might be to include the phase in the InteractionContext, > so we can therefore avoid this unnecessary work populating the executionGraph. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2235) Mixins declared using @Property, @Collection or @Action shouldn't need to indicate contribution style.
[ https://issues.apache.org/jira/browse/ISIS-2235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2235: -- Summary: Mixins declared using @Property, @Collection or @Action shouldn't need to indicate contribution style. (was: Mixins declared using @Property and @Collection shouldn't need to indicate contribution style.) > Mixins declared using @Property, @Collection or @Action shouldn't need to > indicate contribution style. > -- > > Key: ISIS-2235 > URL: https://issues.apache.org/jira/browse/ISIS-2235 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > for example, with this mixin: > {code:java} > @Property > public class SimpleObject_self { > private final SimpleObject simpleObject; > public SimpleObject_self(SimpleObject simpleObject) { > this.simpleObject = simpleObject; > } > @ActionLayout(contributed = Contributed.AS_ASSOCIATION) > public SimpleObject prop() { > return simpleObject; > } > } > {code} > it's necessary to specify @ActionLayout, otherwise the behaviour is > contributed as both an association and an action. > The @ActionLayout should be inferred. > ~~~ > See the same for @Collection, also. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (ISIS-2235) Mixins declared using @Property, @Collection or @Action shouldn't need to indicate contribution style.
[ https://issues.apache.org/jira/browse/ISIS-2235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood updated ISIS-2235: -- Description: for example, with this mixin: {code:java} @Property public class SimpleObject_self { private final SimpleObject simpleObject; public SimpleObject_self(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @ActionLayout(contributed = Contributed.AS_ASSOCIATION) public SimpleObject prop() { return simpleObject; } } {code} it's necessary to specify @ActionLayout, otherwise the behaviour is contributed as both an association and an action. The @ActionLayout should be inferred. ~~~ See the same for @Collection and @Action also ... should imply AS_ASSOCIATION and AS_ACTION respectively. ~~~ Also, (and this might be a slightly different issue), the facets defined by @Property(...) should be copied down correctly to the corresponding facets on the action, eg domain event (this might need specifying more precisely...) was: for example, with this mixin: {code:java} @Property public class SimpleObject_self { private final SimpleObject simpleObject; public SimpleObject_self(SimpleObject simpleObject) { this.simpleObject = simpleObject; } @ActionLayout(contributed = Contributed.AS_ASSOCIATION) public SimpleObject prop() { return simpleObject; } } {code} it's necessary to specify @ActionLayout, otherwise the behaviour is contributed as both an association and an action. The @ActionLayout should be inferred. ~~~ See the same for @Collection, also. > Mixins declared using @Property, @Collection or @Action shouldn't need to > indicate contribution style. > -- > > Key: ISIS-2235 > URL: https://issues.apache.org/jira/browse/ISIS-2235 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > for example, with this mixin: > {code:java} > @Property > public class SimpleObject_self { > private final SimpleObject simpleObject; > public SimpleObject_self(SimpleObject simpleObject) { > this.simpleObject = simpleObject; > } > @ActionLayout(contributed = Contributed.AS_ASSOCIATION) > public SimpleObject prop() { > return simpleObject; > } > } > {code} > it's necessary to specify @ActionLayout, otherwise the behaviour is > contributed as both an association and an action. > The @ActionLayout should be inferred. > ~~~ > See the same for @Collection and @Action also ... should imply AS_ASSOCIATION > and AS_ACTION respectively. > ~~~ > Also, (and this might be a slightly different issue), the facets defined by > @Property(...) should be copied down correctly to the corresponding facets on > the action, eg domain event (this might need specifying more precisely...) > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2236) Add WebModule to support CORS
Daniel Keir Haywood created ISIS-2236: - Summary: Add WebModule to support CORS Key: ISIS-2236 URL: https://issues.apache.org/jira/browse/ISIS-2236 Project: Isis Issue Type: New Feature Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2237) Sequence WebModules correctly.
Daniel Keir Haywood created ISIS-2237: - Summary: Sequence WebModules correctly. Key: ISIS-2237 URL: https://issues.apache.org/jira/browse/ISIS-2237 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2236) Add WebModule to support CORS
[ https://issues.apache.org/jira/browse/ISIS-2236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2236. --- Resolution: Fixed > Add WebModule to support CORS > - > > Key: ISIS-2236 > URL: https://issues.apache.org/jira/browse/ISIS-2236 > Project: Isis > Issue Type: New Feature >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2238) Move WebModuleRestfulObjects into the resteasy plugin module.
Daniel Keir Haywood created ISIS-2238: - Summary: Move WebModuleRestfulObjects into the resteasy plugin module. Key: ISIS-2238 URL: https://issues.apache.org/jira/browse/ISIS-2238 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 This should allow the code to be simplified, ie to remove the reflective classloading etc. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2237) Sequence WebModules correctly.
[ https://issues.apache.org/jira/browse/ISIS-2237?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2237. --- Resolution: Fixed > Sequence WebModules correctly. > -- > > Key: ISIS-2237 > URL: https://issues.apache.org/jira/browse/ISIS-2237 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2239) Use @Validated for base-path config properties
Daniel Keir Haywood created ISIS-2239: - Summary: Use @Validated for base-path config properties Key: ISIS-2239 URL: https://issues.apache.org/jira/browse/ISIS-2239 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 The WebModuleWicket and WebModuleRestfulObjects both require that their respective base-path config properties start and end with a '/'; they will coerce the supplied value if necessary. Instead, we could enforce this rule using @Validated @ConfigurationProperties. This will fail-fast and allow us to delete code. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2240) Use WebModule infra to inject into all servlets, filters etc.
Daniel Keir Haywood created ISIS-2240: - Summary: Use WebModule infra to inject into all servlets, filters etc. Key: ISIS-2240 URL: https://issues.apache.org/jira/browse/ISIS-2240 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 This should allow us to remove some static methods, hopefully. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2241) Remove _Resources_RestfulPath
Daniel Keir Haywood created ISIS-2241: - Summary: Remove _Resources_RestfulPath Key: ISIS-2241 URL: https://issues.apache.org/jira/browse/ISIS-2241 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 Can remove this static map, since can inject the IsisConfiguration everywhere its required (depends on ISIS-2240). -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2240) Use WebModule infra to inject into all servlets, filters etc.
[ https://issues.apache.org/jira/browse/ISIS-2240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2240. --- Resolution: Fixed > Use WebModule infra to inject into all servlets, filters etc. > - > > Key: ISIS-2240 > URL: https://issues.apache.org/jira/browse/ISIS-2240 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > This should allow us to remove some static methods, hopefully. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2239) Use @Validated for base-path config properties
[ https://issues.apache.org/jira/browse/ISIS-2239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2239. --- Resolution: Fixed > Use @Validated for base-path config properties > -- > > Key: ISIS-2239 > URL: https://issues.apache.org/jira/browse/ISIS-2239 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Trivial > Fix For: 2.0.0 > > > The WebModuleWicket and WebModuleRestfulObjects both require that their > respective base-path config properties start and end with a '/'; they will > coerce the supplied value if necessary. > Instead, we could enforce this rule using @Validated > @ConfigurationProperties. This will fail-fast and allow us to delete code. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2241) Remove _Resources_RestfulPath
[ https://issues.apache.org/jira/browse/ISIS-2241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2241. --- Resolution: Fixed > Remove _Resources_RestfulPath > - > > Key: ISIS-2241 > URL: https://issues.apache.org/jira/browse/ISIS-2241 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > Can remove this static map, since can inject the IsisConfiguration everywhere > its required (depends on ISIS-2240). -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2242) Use IsisSystemEnvironment to store the context path, rather than _Resources static method.
Daniel Keir Haywood created ISIS-2242: - Summary: Use IsisSystemEnvironment to store the context path, rather than _Resources static method. Key: ISIS-2242 URL: https://issues.apache.org/jira/browse/ISIS-2242 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 more in the theme of removing static methods where we can. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2242) Use IsisSystemEnvironment to store the context path, rather than _Resources static method.
[ https://issues.apache.org/jira/browse/ISIS-2242?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2242. --- Resolution: Fixed > Use IsisSystemEnvironment to store the context path, rather than _Resources > static method. > -- > > Key: ISIS-2242 > URL: https://issues.apache.org/jira/browse/ISIS-2242 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > more in the theme of removing static methods where we can. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2243) Use resteasy-spring-boot-starter to configure jaxrs-resteasy
Daniel Keir Haywood created ISIS-2243: - Summary: Use resteasy-spring-boot-starter to configure jaxrs-resteasy Key: ISIS-2243 URL: https://issues.apache.org/jira/browse/ISIS-2243 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 This will allow dependencies to be injected into RO resources etc. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2244) Remove IsisJaxrsServerPlugin
Daniel Keir Haywood created ISIS-2244: - Summary: Remove IsisJaxrsServerPlugin Key: ISIS-2244 URL: https://issues.apache.org/jira/browse/ISIS-2244 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 and use Spring instead for the wiring. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2245) convert WebModuleLogOnExceptionLogger, make into an extension.
Daniel Keir Haywood created ISIS-2245: - Summary: convert WebModuleLogOnExceptionLogger, make into an extension. Key: ISIS-2245 URL: https://issues.apache.org/jira/browse/ISIS-2245 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2246) CSS fix for drop down panel (eg vertical '...' on metadata tab)
Daniel Keir Haywood created ISIS-2246: - Summary: CSS fix for drop down panel (eg vertical '...' on metadata tab) Key: ISIS-2246 URL: https://issues.apache.org/jira/browse/ISIS-2246 Project: Isis Issue Type: Bug Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2246) CSS fix for drop down panel (eg vertical '...' on metadata tab)
[ https://issues.apache.org/jira/browse/ISIS-2246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2246. --- Resolution: Fixed > CSS fix for drop down panel (eg vertical '...' on metadata tab) > --- > > Key: ISIS-2246 > URL: https://issues.apache.org/jira/browse/ISIS-2246 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Trivial > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2243) Use resteasy-spring-boot-starter to configure jaxrs-resteasy
[ https://issues.apache.org/jira/browse/ISIS-2243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2243. --- Resolution: Fixed > Use resteasy-spring-boot-starter to configure jaxrs-resteasy > > > Key: ISIS-2243 > URL: https://issues.apache.org/jira/browse/ISIS-2243 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > This will allow dependencies to be injected into RO resources etc. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2238) Move WebModuleRestfulObjects into the resteasy plugin module.
[ https://issues.apache.org/jira/browse/ISIS-2238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2238. --- Resolution: Fixed > Move WebModuleRestfulObjects into the resteasy plugin module. > - > > Key: ISIS-2238 > URL: https://issues.apache.org/jira/browse/ISIS-2238 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > This should allow the code to be simplified, ie to remove the reflective > classloading etc. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2247) provide an IsisPreset for specifying the log4j2-test.xml file when running integ tests.
Daniel Keir Haywood created ISIS-2247: - Summary: provide an IsisPreset for specifying the log4j2-test.xml file when running integ tests. Key: ISIS-2247 URL: https://issues.apache.org/jira/browse/ISIS-2247 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2247) provide an IsisPreset for specifying the log4j2-test.xml file when running integ tests.
[ https://issues.apache.org/jira/browse/ISIS-2247?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2247. --- Resolution: Fixed > provide an IsisPreset for specifying the log4j2-test.xml file when running > integ tests. > --- > > Key: ISIS-2247 > URL: https://issues.apache.org/jira/browse/ISIS-2247 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2250) Optionally prevent new ObjectSpec's once metamodel fully created; and revalidate new ObjectSpec's otherwise.
Daniel Keir Haywood created ISIS-2250: - Summary: Optionally prevent new ObjectSpec's once metamodel fully created; and revalidate new ObjectSpec's otherwise. Key: ISIS-2250 URL: https://issues.apache.org/jira/browse/ISIS-2250 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2251) Improve the parent pom.xml, see blog
Daniel Keir Haywood created ISIS-2251: - Summary: Improve the parent pom.xml, see blog Key: ISIS-2251 URL: https://issues.apache.org/jira/browse/ISIS-2251 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Fix For: 2.2.0 [https://itnext.io/writing-a-full-featured-maven-pom-f5b874eef312] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2252) Define a new natureOfService of MODULE_API, for programmatic interactions via wrapper across module trust boundaries.
Daniel Keir Haywood created ISIS-2252: - Summary: Define a new natureOfService of MODULE_API, for programmatic interactions via wrapper across module trust boundaries. Key: ISIS-2252 URL: https://issues.apache.org/jira/browse/ISIS-2252 Project: Isis Issue Type: New Feature Reporter: Daniel Keir Haywood Fix For: 2.0.3 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2250) Optionally prevent new ObjectSpec's once metamodel fully created; and revalidate new ObjectSpec's otherwise.
[ https://issues.apache.org/jira/browse/ISIS-2250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2250. --- Resolution: Fixed > Optionally prevent new ObjectSpec's once metamodel fully created; and > revalidate new ObjectSpec's otherwise. > > > Key: ISIS-2250 > URL: https://issues.apache.org/jira/browse/ISIS-2250 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2254) Ensure Command executor is set to USER when running integ tests.
Daniel Keir Haywood created ISIS-2254: - Summary: Ensure Command executor is set to USER when running integ tests. Key: ISIS-2254 URL: https://issues.apache.org/jira/browse/ISIS-2254 Project: Isis Issue Type: Bug Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 The original behaviour was to call command.setExecutor(USER) when starting a new transaction for an integration test. This would remain until the end of the session ... a command is basically session scoped. This behaviour has been lost, and needs to be reinstated. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2255) In WrapperFactory, lookup mixin properties and collections (as well as actions).
Daniel Keir Haywood created ISIS-2255: - Summary: In WrapperFactory, lookup mixin properties and collections (as well as actions). Key: ISIS-2255 URL: https://issues.apache.org/jira/browse/ISIS-2255 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 Because we are now more strict about the bookmarks that can be created (in particular, because we do not allow bookmarks to be created on transient objects such as mixins), then the previous code was failing when attempting to create an InteractionDto with a bookmark to a mixin. Tracking this down, this was because of the invocation of a contributed collection via the WrapperFactory. The WrapperFactory (more precisely, DomainObjectInvocationHandler) attempts to do a "reverse-looking" to find the contributed mixed member from the original action on the mixin, but only searched for contributed actions, and did not consider contributed properties or collections. This change is to fix this. It should mean that the targetAdapter for InteractionDto's is always correct, and that memberIdentifier == logicalMemberIdentifier in all cases. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2255) In WrapperFactory, lookup mixin properties and collections (as well as actions).
[ https://issues.apache.org/jira/browse/ISIS-2255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2255. --- Resolution: Fixed > In WrapperFactory, lookup mixin properties and collections (as well as > actions). > > > Key: ISIS-2255 > URL: https://issues.apache.org/jira/browse/ISIS-2255 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > Because we are now more strict about the bookmarks that can be created (in > particular, because we do not allow bookmarks to be created on transient > objects such as mixins), then the previous code was failing when attempting > to create an InteractionDto with a bookmark to a mixin. > Tracking this down, this was because of the invocation of a contributed > collection via the WrapperFactory. The WrapperFactory (more precisely, > DomainObjectInvocationHandler) attempts to do a "reverse-looking" to find the > contributed mixed member from the original action on the mixin, but only > searched for contributed actions, and did not consider contributed properties > or collections. > This change is to fix this. It should mean that the targetAdapter for > InteractionDto's is always correct, and that memberIdentifier == > logicalMemberIdentifier in all cases. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2254) Ensure Command executor is set to USER when running integ tests.
[ https://issues.apache.org/jira/browse/ISIS-2254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2254. --- Resolution: Fixed > Ensure Command executor is set to USER when running integ tests. > > > Key: ISIS-2254 > URL: https://issues.apache.org/jira/browse/ISIS-2254 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > The original behaviour was to call command.setExecutor(USER) when starting a > new transaction for an integration test. This would remain until the end of > the session ... a command is basically session scoped. > This behaviour has been lost, and needs to be reinstated. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2259) Reorganize extensions into several smaller groupings.
Daniel Keir Haywood created ISIS-2259: - Summary: Reorganize extensions into several smaller groupings. Key: ISIS-2259 URL: https://issues.apache.org/jira/browse/ISIS-2259 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 what I have in mind are: * extensions : to the framework itself, to extend its capabilities * subdomains - to be called by Apache Isis domain logic ( approx = lib folder) * mappings - in other words bounded context mappings or integrations between BCs. I've avoided the word "integration" because we use that for integration tests * testing - for non-production code. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2260) Port pdfjs from incode platform as an extension
Daniel Keir Haywood created ISIS-2260: - Summary: Port pdfjs from incode platform as an extension Key: ISIS-2260 URL: https://issues.apache.org/jira/browse/ISIS-2260 Project: Isis Issue Type: New Feature Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2261) Allow the baseUri of the RO viewer to be overridden
Daniel Keir Haywood created ISIS-2261: - Summary: Allow the baseUri of the RO viewer to be overridden Key: ISIS-2261 URL: https://issues.apache.org/jira/browse/ISIS-2261 Project: Isis Issue Type: Improvement Components: Core: Viewer: RestfulObjects Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 When running a webapp with a reverse proxy, where the reverse proxy does the https:// thing but the webapp itself only runs on [http://,|http://%2C/] then the baseUri that the RO viewer infers from the injected UriInfo (in ResourceAbstract) will have the incorrect baseUri. {code:java} public class ResourceAbstract { @javax.ws.rs.core.Context UriInfo uriInfo; ... }{code} There doesn't seem to be anyway to tell JAXRS that the webapp is running behind a reverse proxy, so i think that we'll need to provide some sort of config parameter to allow the baseUri (scheme, hostname and port) to be overridden if required. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2261) Allow the baseUri of the RO viewer to be overridden
[ https://issues.apache.org/jira/browse/ISIS-2261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2261. --- Resolution: Fixed > Allow the baseUri of the RO viewer to be overridden > --- > > Key: ISIS-2261 > URL: https://issues.apache.org/jira/browse/ISIS-2261 > Project: Isis > Issue Type: Improvement > Components: Core: Viewer: RestfulObjects >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > When running a webapp with a reverse proxy, where the reverse proxy does the > https:// thing but the webapp itself only runs on [http://,|http://%2C/] then > the baseUri that the RO viewer infers from the injected UriInfo (in > ResourceAbstract) will have the incorrect baseUri. > {code:java} > public class ResourceAbstract { > @javax.ws.rs.core.Context UriInfo uriInfo; > ... > }{code} > There doesn't seem to be anyway to tell JAXRS that the webapp is running > behind a reverse proxy, so i think that we'll need to provide some sort of > config parameter to allow the baseUri (scheme, hostname and port) to be > overridden if required. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2264) Rationalize configuration properties hierarchy, in line with groupId / artifactId
Daniel Keir Haywood created ISIS-2264: - Summary: Rationalize configuration properties hierarchy, in line with groupId / artifactId Key: ISIS-2264 URL: https://issues.apache.org/jira/browse/ISIS-2264 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2264) Rationalize configuration properties hierarchy, in line with groupId / artifactId
[ https://issues.apache.org/jira/browse/ISIS-2264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2264. --- Resolution: Fixed > Rationalize configuration properties hierarchy, in line with groupId / > artifactId > - > > Key: ISIS-2264 > URL: https://issues.apache.org/jira/browse/ISIS-2264 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Reopened] (ISIS-2264) Rationalize configuration properties hierarchy, in line with groupId / artifactId
[ https://issues.apache.org/jira/browse/ISIS-2264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reopened ISIS-2264: --- still need to do isis.value-types > Rationalize configuration properties hierarchy, in line with groupId / > artifactId > - > > Key: ISIS-2264 > URL: https://issues.apache.org/jira/browse/ISIS-2264 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (ISIS-2265) on-the-fly-introspection may occur even though MM was eagerly loaded
[ https://issues.apache.org/jira/browse/ISIS-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17016961#comment-17016961 ] Daniel Keir Haywood commented on ISIS-2265: --- I'm not sure why this should have occurred, because ClassSubstitutorForCollections should prevent this from occurring - when we are asked to introspect AbstractSet, it should skip to just Set. So, the question is ... why didn't ClassSubstitutor get called? > on-the-fly-introspection may occur even though MM was eagerly loaded > > > Key: ISIS-2265 > URL: https://issues.apache.org/jira/browse/ISIS-2265 > Project: Isis > Issue Type: Bug >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Blocker > Fix For: 2.0.0 > > > +steps to reproduce:+ > e.g. DemoApp (production mode) -> access menu Trees > File System Tree > java.lang.IllegalStateException > Cannot introspect class 'java.util.AbstractSet' because the metamodel has > been fully introspected and is now locked. One reason this can happen is if > you are attempting to invoke an action through the WrapperFactory on a > service class incorrectly annotated with Spring's @Service annotation instead > of @DomainService. > +solutions+ > - either allow on-the-fly-introspection for certain types > - or find all types in the first place when eagerly loading -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2266) Revert a little bit of the joda to j8 stuff.
Daniel Keir Haywood created ISIS-2266: - Summary: Revert a little bit of the joda to j8 stuff. Key: ISIS-2266 URL: https://issues.apache.org/jira/browse/ISIS-2266 Project: Isis Issue Type: Bug Reporter: Daniel Keir Haywood Fix For: 2.0.0 # FakeDataService#jodaXxx return a J8 # ClockService#nowAsDateTime looks to have been removed? - introduce back in as nowAsJodaDateTime() # Clock # -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (ISIS-2266) Revert a little bit of the joda to j8 stuff.
[ https://issues.apache.org/jira/browse/ISIS-2266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood reassigned ISIS-2266: - Assignee: Daniel Keir Haywood > Revert a little bit of the joda to j8 stuff. > > > Key: ISIS-2266 > URL: https://issues.apache.org/jira/browse/ISIS-2266 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > # FakeDataService#jodaXxx return a J8 > # ClockService#nowAsDateTime looks to have been removed? - introduce back in > as nowAsJodaDateTime() > # Clock > # > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2267) Integrate Spring Boot flyway as an extension.
Daniel Keir Haywood created ISIS-2267: - Summary: Integrate Spring Boot flyway as an extension. Key: ISIS-2267 URL: https://issues.apache.org/jira/browse/ISIS-2267 Project: Isis Issue Type: New Feature Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2268) Rename OrderPrecedence literals
Daniel Keir Haywood created ISIS-2268: - Summary: Rename OrderPrecedence literals Key: ISIS-2268 URL: https://issues.apache.org/jira/browse/ISIS-2268 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 HIGHEST -> FIRST HIGH -> EARLY MID -> MID LOW -> LATE LOWEST -> LAST -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2268) Rename OrderPrecedence literals
[ https://issues.apache.org/jira/browse/ISIS-2268?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2268. --- Resolution: Fixed > Rename OrderPrecedence literals > --- > > Key: ISIS-2268 > URL: https://issues.apache.org/jira/browse/ISIS-2268 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > HIGHEST -> FIRST > HIGH -> EARLY > MID -> MID > LOW -> LATE > LOWEST -> LAST -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2270) Document and annotate @DomainObject, @ViewModel and @Mixin with @Scope(SCOPE_PROTOTYPE)
Daniel Keir Haywood created ISIS-2270: - Summary: Document and annotate @DomainObject, @ViewModel and @Mixin with @Scope(SCOPE_PROTOTYPE) Key: ISIS-2270 URL: https://issues.apache.org/jira/browse/ISIS-2270 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 We want Spring to discover these types from the classpath (so that we can build the metamodel eagerly), but we don't want it to manage them. Using @Scope(PROTOTYPE) is the closest we can come to expressing that without (attempting to) define a custom scope for each of these three types., analogous to factoryService#instantiate for transient objects. In practical terms, inventing a custom "entity" scope is probably impossible due to DN's design (the enhancer creates a dnNewInstance method and this is called upon as a factory). Instead, then, we "veto" any of these domain types so that Spring is NOT allowed to instantiate any of them. The docs should be updated to explain what we're doing here. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2264) Rationalize configuration properties hierarchy, in line with groupId / artifactId
[ https://issues.apache.org/jira/browse/ISIS-2264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2264. --- Resolution: Fixed > Rationalize configuration properties hierarchy, in line with groupId / > artifactId > - > > Key: ISIS-2264 > URL: https://issues.apache.org/jira/browse/ISIS-2264 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2267) Integrate Spring Boot flyway as an extension.
[ https://issues.apache.org/jira/browse/ISIS-2267?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2267. --- Resolution: Fixed > Integrate Spring Boot flyway as an extension. > - > > Key: ISIS-2267 > URL: https://issues.apache.org/jira/browse/ISIS-2267 > Project: Isis > Issue Type: New Feature >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2271) Port fullcalendar over from incode-platform as an extension.
Daniel Keir Haywood created ISIS-2271: - Summary: Port fullcalendar over from incode-platform as an extension. Key: ISIS-2271 URL: https://issues.apache.org/jira/browse/ISIS-2271 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2259) Reorganize extensions into several smaller groupings.
[ https://issues.apache.org/jira/browse/ISIS-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2259. --- Resolution: Fixed > Reorganize extensions into several smaller groupings. > - > > Key: ISIS-2259 > URL: https://issues.apache.org/jira/browse/ISIS-2259 > Project: Isis > Issue Type: Improvement >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0 > > > what I have in mind are: > * extensions : to the framework itself, to extend its capabilities > * subdomains - to be called by Apache Isis domain logic ( approx = lib > folder) > * mappings - in other words bounded context mappings or integrations between > BCs. I've avoided the word "integration" because we use that for integration > tests > * testing - for non-production code. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ISIS-2272) Simplify @HomePage support - just use as annotation on type, not for an action.
Daniel Keir Haywood created ISIS-2272: - Summary: Simplify @HomePage support - just use as annotation on type, not for an action. Key: ISIS-2272 URL: https://issues.apache.org/jira/browse/ISIS-2272 Project: Isis Issue Type: Improvement Reporter: Daniel Keir Haywood Assignee: Daniel Keir Haywood Fix For: 2.0.0 For two reasons: * first, because almost always a home page will be a view model, so the only thing that this change does not support - which is to display the results of an action being arbitrary standalone collections - can be easily simulated as the parented collection of a view model * second, because the current implementation to support @HomePage on actions requires a dummy helper class that exposes this action into the metamodel, but it is also exposed in the REST API, which is not ideal. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (ISIS-2266) Revert a little bit of the joda to j8 stuff.
[ https://issues.apache.org/jira/browse/ISIS-2266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Keir Haywood resolved ISIS-2266. --- Resolution: Fixed > Revert a little bit of the joda to j8 stuff. > > > Key: ISIS-2266 > URL: https://issues.apache.org/jira/browse/ISIS-2266 > Project: Isis > Issue Type: Bug >Reporter: Daniel Keir Haywood >Assignee: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0 > > > # FakeDataService#jodaXxx return a J8 > # ClockService#nowAsDateTime looks to have been removed? - introduce back in > as nowAsJodaDateTime() > # Clock > # > > -- This message was sent by Atlassian Jira (v8.3.4#803005)