[jira] [Reopened] (ISIS-1993) [Duplicate] Allow factory actions to be associated with both properties and parameters
[ https://issues.apache.org/jira/browse/ISIS-1993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber reopened ISIS-1993: -- temp reopen so can copy desc... > [Duplicate] Allow factory actions to be associated with both properties and > parameters > -- > > Key: ISIS-1993 > URL: https://issues.apache.org/jira/browse/ISIS-1993 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Major > > See also ISIS-1509 > > {code:java} > @Property(createRepository=Supplier.Repository.class, createAction="create") > @Getter @Setter Party supplier;{code} > and > {code:java} > public IncomingInvoice edit( > @Parameter(createRepository=Supplier.Repository.class, > createAction="create") > Party supplier, > ... > ) { >... > }{code} > > to invoke a nominated action "in-situ". > This could be bound to a keystroke, eg "F3" > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-713) Handle page expiry when occurs in an ajax query.
[ https://issues.apache.org/jira/browse/ISIS-713?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-713. --- Resolution: Abandoned probably outdated; closing; can always re-iterate > Handle page expiry when occurs in an ajax query. > > > Key: ISIS-713 > URL: https://issues.apache.org/jira/browse/ISIS-713 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: viewer-wicket-1.3.1 >Reporter: Daniel Keir Haywood >Priority: Minor > > This is a theoretical issue rather than one we are encountering much, but > nevertheless... > .. issue as documented in https://issues.apache.org/jira/browse/WICKET-3081, > and perhaps the suggested solution also. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1509) Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters
[ https://issues.apache.org/jira/browse/ISIS-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1509: - Issue Type: Wish (was: New Feature) > Extending Action Dialogs: new kind of Support Action to contribute to Action > Parameters > --- > > Key: ISIS-1509 > URL: https://issues.apache.org/jira/browse/ISIS-1509 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.13.0 >Reporter: Óscar Bou >Priority: Major > Attachments: Slide1.PNG, Slide2.PNG, Slide3.PNG, factory-methods.pptx > > > See also ISIS-1993 > ~~~ > Factory Methods should be able to be identified as that. > It could be useful, for example, when executing any action. > For any param of any type, Apache Isis could offer the option to create a new > instance by executing an action that both return that type and has been > identified as a Factory Method. > An example of defining a Factory Method could be: > {code:java} > class Concert { > @Action(factoryMethod=true) > public Concert someAction() { > return new Concert(); > } > } > {code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1509) [Wish] Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters
[ https://issues.apache.org/jira/browse/ISIS-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1509: - Summary: [Wish] Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters (was: Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters) > [Wish] Extending Action Dialogs: new kind of Support Action to contribute to > Action Parameters > -- > > Key: ISIS-1509 > URL: https://issues.apache.org/jira/browse/ISIS-1509 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.13.0 >Reporter: Óscar Bou >Priority: Major > Attachments: Slide1.PNG, Slide2.PNG, Slide3.PNG, factory-methods.pptx > > > See also ISIS-1993 > ~~~ > Factory Methods should be able to be identified as that. > It could be useful, for example, when executing any action. > For any param of any type, Apache Isis could offer the option to create a new > instance by executing an action that both return that type and has been > identified as a Factory Method. > An example of defining a Factory Method could be: > {code:java} > class Concert { > @Action(factoryMethod=true) > public Concert someAction() { > return new Concert(); > } > } > {code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1993) [Duplicate] Allow factory actions to be associated with both properties and parameters
[ https://issues.apache.org/jira/browse/ISIS-1993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1993: - Summary: [Duplicate] Allow factory actions to be associated with both properties and parameters (was: allow factory actions to be associated with both properties and parameters.) > [Duplicate] Allow factory actions to be associated with both properties and > parameters > -- > > Key: ISIS-1993 > URL: https://issues.apache.org/jira/browse/ISIS-1993 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Major > > See also ISIS-1509 > > {code:java} > @Property(createRepository=Supplier.Repository.class, createAction="create") > @Getter @Setter Party supplier;{code} > and > {code:java} > public IncomingInvoice edit( > @Parameter(createRepository=Supplier.Repository.class, > createAction="create") > Party supplier, > ... > ) { >... > }{code} > > to invoke a nominated action "in-situ". > This could be bound to a keystroke, eg "F3" > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1993) [Duplicate] Allow factory actions to be associated with both properties and parameters
[ https://issues.apache.org/jira/browse/ISIS-1993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1993. Resolution: Duplicate > [Duplicate] Allow factory actions to be associated with both properties and > parameters > -- > > Key: ISIS-1993 > URL: https://issues.apache.org/jira/browse/ISIS-1993 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Major > > See also ISIS-1509 > > {code:java} > @Property(createRepository=Supplier.Repository.class, createAction="create") > @Getter @Setter Party supplier;{code} > and > {code:java} > public IncomingInvoice edit( > @Parameter(createRepository=Supplier.Repository.class, > createAction="create") > Party supplier, > ... > ) { >... > }{code} > > to invoke a nominated action "in-situ". > This could be bound to a keystroke, eg "F3" > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ISIS-1509) Extending Action Dialogs: new kind of Support Action to contribute to Action Parameters
[ https://issues.apache.org/jira/browse/ISIS-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17529829#comment-17529829 ] Andi Huber commented on ISIS-1509: -- Adding link to ISIS-1993 here, so can close it as a duplicate. > Extending Action Dialogs: new kind of Support Action to contribute to Action > Parameters > --- > > Key: ISIS-1509 > URL: https://issues.apache.org/jira/browse/ISIS-1509 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: 1.13.0 >Reporter: Óscar Bou >Priority: Major > Attachments: Slide1.PNG, Slide2.PNG, Slide3.PNG, factory-methods.pptx > > > See also ISIS-1993 > ~~~ > Factory Methods should be able to be identified as that. > It could be useful, for example, when executing any action. > For any param of any type, Apache Isis could offer the option to create a new > instance by executing an action that both return that type and has been > identified as a Factory Method. > An example of defining a Factory Method could be: > {code:java} > class Concert { > @Action(factoryMethod=true) > public Concert someAction() { > return new Concert(); > } > } > {code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-681) In Wicket viewer, provide a larger clickable target for rows, by making a hyperlink out of any scalar field, ...
[ https://issues.apache.org/jira/browse/ISIS-681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-681. --- Resolution: Abandoned probably outdated; closing; can always re-iterate > In Wicket viewer, provide a larger clickable target for rows, by making a > hyperlink out of any scalar field, ... > > > Key: ISIS-681 > URL: https://issues.apache.org/jira/browse/ISIS-681 > Project: Isis > Issue Type: Improvement > Components: Isis Viewer Wicket >Affects Versions: viewer-wicket-1.3.1 >Reporter: Daniel Keir Haywood >Priority: Minor > > ... and provide a tooltip as a hint so it's easy for the user to see what the > link is to. > For columns which have a reference to some related object, the current > behaviour should be unchanged. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2103) [Wish] Tabs with empty Content should be hidden
[ https://issues.apache.org/jira/browse/ISIS-2103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2103: - Summary: [Wish] Tabs with empty Content should be hidden (was: Empty tabs still rendered) > [Wish] Tabs with empty Content should be hidden > --- > > Key: ISIS-2103 > URL: https://issues.apache.org/jira/browse/ISIS-2103 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.17.0 >Reporter: Erik de Hair >Priority: Major > > As per the mailing list: > > Is there any way to hide empty tabs? A tab is hidden if it doesn't contain > any fields but if all fields on a tab are hidden there's still the empty tab > panel. That looks strange in most cases: > > [https://imgur.com/a/75JNQq2] > > In the example all fields are hidden on tab 2.2.1, 2.2.2 and 2.2. In that > case I don't want to see tab2.2 and below. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2103) Empty tabs still rendered
[ https://issues.apache.org/jira/browse/ISIS-2103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2103: - Issue Type: Wish (was: Bug) > Empty tabs still rendered > - > > Key: ISIS-2103 > URL: https://issues.apache.org/jira/browse/ISIS-2103 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.17.0 >Reporter: Erik de Hair >Priority: Major > > As per the mailing list: > > Is there any way to hide empty tabs? A tab is hidden if it doesn't contain > any fields but if all fields on a tab are hidden there's still the empty tab > panel. That looks strange in most cases: > > [https://imgur.com/a/75JNQq2] > > In the example all fields are hidden on tab 2.2.1, 2.2.2 and 2.2. In that > case I don't want to see tab2.2 and below. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-415) Automatic login through parameters in the url
[ https://issues.apache.org/jira/browse/ISIS-415?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-415. --- Resolution: Won't Fix I believe this is obsolete. Eg. we now have regression-tests for testing authenticated wicket pages, that don't require a browser or simulated browser. > Automatic login through parameters in the url > - > > Key: ISIS-415 > URL: https://issues.apache.org/jira/browse/ISIS-415 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: viewer-wicket-1.2.0 >Reporter: Christian Steinebach >Priority: Minor > > It would be useful to be able to login by specifying user/password in the URL > Example: > http://localhost:8080/MyIsisApplication?user=sven=pass > The application will then automatically try to login as user sven -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1473) [Wish] Inline edit for mutable collections with filtering
[ https://issues.apache.org/jira/browse/ISIS-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1473: - Summary: [Wish] Inline edit for mutable collections with filtering (was: Inline edit for mutable collections with filtering) > [Wish] Inline edit for mutable collections with filtering > - > > Key: ISIS-1473 > URL: https://issues.apache.org/jira/browse/ISIS-1473 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.13.0 >Reporter: Cesar Lugo >Priority: Major > > Ability to allow inline mutable collections allowing filters. This would > allow the users to edit collections in the same grid shown in the Viewer, and > also filter data using multiple types of filters. > Mutable collections might include: > - Row selection to identify which row to edit. > - Move around the properties within a collection either using the TAB key or > using the mouse to position in a specific property. > - Properties with multiple allowed values or with foreign lookup shown as a > drop down selection list. Ideally, if multiple values are allowed (1:N), > multi-selection might be allowed. > - Existing values in a cell should be auto selected when the user reaches the > cell, to facilitate replacing the existing value by just keying in the new > value. > - Allow creation of new elements in the collection by adding a row. Multiple > rows could be added by reaching the end of a row and keying in the TAB key, > and also by selecting a blank space by the end of the collection grid. > - Ability to define in the meta data of the collection which properties are > editable in this grid. > - Ability to define in the meta data if the user is allowed to add rows in > this collection. > Filters: > - Associate default filters to domain entities of the domain model. > - Associate default filters to collections, ideally by inheriting filters > from the domain entities they are composed of. > - Ability to define the type of filter (GUI widget), like drop down list, > type ahead lists, combo box, radio button, range slider, date pick, date > range slider. > So default filters would be shown automatically in the UI, either in a stand > alone displayed entity, or on top of the collection. > Ability to override filters for specific views. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2076) [Wish] Allow action parameter label to be used as placeholder text instead of to the TOP or LEFT. This would be a new type of "position"
[ https://issues.apache.org/jira/browse/ISIS-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2076: - Summary: [Wish] Allow action parameter label to be used as placeholder text instead of to the TOP or LEFT. This would be a new type of "position" (was: Allow action parameter label to be used as placeholder text instead of to the TOP or LEFT. This would be a new type of "position") > [Wish] Allow action parameter label to be used as placeholder text instead of > to the TOP or LEFT. This would be a new type of "position" > - > > Key: ISIS-2076 > URL: https://issues.apache.org/jira/browse/ISIS-2076 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Major > Attachments: param-label-overlapping.png > > > as per [https://getbootstrap.com/docs/4.0/components/forms/#readonly] > eg: > {code:java} > @ActionParameter(labelPosition=PLACEHOLDER) > ...{code} > > As a further improvement, maybe there could also be an AUTO (or RESPONSIVE) > option that will dynamically figure out the best place to render the label > given the space available. > eg: > {code:java} > @ActionParameter(labelPosition=AUTO) > ...{code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2076) Allow action parameter label to be used as placeholder text instead of to the TOP or LEFT. This would be a new type of "position"
[ https://issues.apache.org/jira/browse/ISIS-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2076: - Issue Type: Wish (was: New Feature) > Allow action parameter label to be used as placeholder text instead of to the > TOP or LEFT. This would be a new type of "position" > -- > > Key: ISIS-2076 > URL: https://issues.apache.org/jira/browse/ISIS-2076 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Major > Attachments: param-label-overlapping.png > > > as per [https://getbootstrap.com/docs/4.0/components/forms/#readonly] > eg: > {code:java} > @ActionParameter(labelPosition=PLACEHOLDER) > ...{code} > > As a further improvement, maybe there could also be an AUTO (or RESPONSIVE) > option that will dynamically figure out the best place to render the label > given the space available. > eg: > {code:java} > @ActionParameter(labelPosition=AUTO) > ...{code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1473) Inline edit for mutable collections with filtering
[ https://issues.apache.org/jira/browse/ISIS-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1473: - Issue Type: Wish (was: Improvement) > Inline edit for mutable collections with filtering > -- > > Key: ISIS-1473 > URL: https://issues.apache.org/jira/browse/ISIS-1473 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.13.0 >Reporter: Cesar Lugo >Priority: Major > > Ability to allow inline mutable collections allowing filters. This would > allow the users to edit collections in the same grid shown in the Viewer, and > also filter data using multiple types of filters. > Mutable collections might include: > - Row selection to identify which row to edit. > - Move around the properties within a collection either using the TAB key or > using the mouse to position in a specific property. > - Properties with multiple allowed values or with foreign lookup shown as a > drop down selection list. Ideally, if multiple values are allowed (1:N), > multi-selection might be allowed. > - Existing values in a cell should be auto selected when the user reaches the > cell, to facilitate replacing the existing value by just keying in the new > value. > - Allow creation of new elements in the collection by adding a row. Multiple > rows could be added by reaching the end of a row and keying in the TAB key, > and also by selecting a blank space by the end of the collection grid. > - Ability to define in the meta data of the collection which properties are > editable in this grid. > - Ability to define in the meta data if the user is allowed to add rows in > this collection. > Filters: > - Associate default filters to domain entities of the domain model. > - Associate default filters to collections, ideally by inheriting filters > from the domain entities they are composed of. > - Ability to define the type of filter (GUI widget), like drop down list, > type ahead lists, combo box, radio button, range slider, date pick, date > range slider. > So default filters would be shown automatically in the UI, either in a stand > alone displayed entity, or on top of the collection. > Ability to override filters for specific views. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1196) Invoke action by typing its name (ctrl-shift-A in IntelliJ)
[ https://issues.apache.org/jira/browse/ISIS-1196?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1196: - Issue Type: Wish (was: New Feature) > Invoke action by typing its name (ctrl-shift-A in IntelliJ) > --- > > Key: ISIS-1196 > URL: https://issues.apache.org/jira/browse/ISIS-1196 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.9.0 >Reporter: Daniel Keir Haywood >Priority: Major > Attachments: screenshot-1.png, screenshot-2.png, screenshot-3.png > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1031) [Wish] Make it possible to filter on tables
[ https://issues.apache.org/jira/browse/ISIS-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1031: - Issue Type: Wish (was: New Feature) > [Wish] Make it possible to filter on tables > --- > > Key: ISIS-1031 > URL: https://issues.apache.org/jira/browse/ISIS-1031 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: viewer-wicket-1.7.0, core-1.7.0 >Reporter: Joshua Kamau >Priority: Major > Labels: filter, grid, pagination > > It should be possible to show pagination in the tables possibly with > configurable page size. It should also be nice to have ability to filter > entities in a table. > The DataTable,js (https://www.datatables.net/), which looks like it has a > Wicket integration already > (https://github.com/wicketstuff/core/wiki/DataTables) could be a good way to > go (we've used it in Naked Objects.NET application). > To enable it, suggest an extension to @CollectionLayout(filterable=...) and > corresponding enhancement to layout.xml -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1196) [Wish] Invoke action by typing its name (ctrl-shift-A in IntelliJ)
[ https://issues.apache.org/jira/browse/ISIS-1196?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1196: - Summary: [Wish] Invoke action by typing its name (ctrl-shift-A in IntelliJ) (was: Invoke action by typing its name (ctrl-shift-A in IntelliJ)) > [Wish] Invoke action by typing its name (ctrl-shift-A in IntelliJ) > -- > > Key: ISIS-1196 > URL: https://issues.apache.org/jira/browse/ISIS-1196 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 1.9.0 >Reporter: Daniel Keir Haywood >Priority: Major > Attachments: screenshot-1.png, screenshot-2.png, screenshot-3.png > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1031) [Wish] Make it possible to filter on tables
[ https://issues.apache.org/jira/browse/ISIS-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1031: - Summary: [Wish] Make it possible to filter on tables (was: Make it possible to filter on tables) > [Wish] Make it possible to filter on tables > --- > > Key: ISIS-1031 > URL: https://issues.apache.org/jira/browse/ISIS-1031 > Project: Isis > Issue Type: New Feature > Components: Isis Viewer Wicket >Affects Versions: viewer-wicket-1.7.0, core-1.7.0 >Reporter: Joshua Kamau >Priority: Major > Labels: filter, grid, pagination > > It should be possible to show pagination in the tables possibly with > configurable page size. It should also be nice to have ability to filter > entities in a table. > The DataTable,js (https://www.datatables.net/), which looks like it has a > Wicket integration already > (https://github.com/wicketstuff/core/wiki/DataTables) could be a good way to > go (we've used it in Naked Objects.NET application). > To enable it, suggest an extension to @CollectionLayout(filterable=...) and > corresponding enhancement to layout.xml -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-3030) Multiple level drop down List issue
[ https://issues.apache.org/jira/browse/ISIS-3030?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-3030: - Fix Version/s: 2.0.0-RC1 > Multiple level drop down List issue > --- > > Key: ISIS-3030 > URL: https://issues.apache.org/jira/browse/ISIS-3030 > Project: Isis > Issue Type: Bug > Components: Isis Applib (programming model) >Reporter: Han Hui Wen >Priority: Major > Fix For: 2.0.0-RC1 > > > Here has a mulitiple level drop down list. > > > {code:java} > @Property(editing = Editing.ENABLED) > @Getter > @Setter > private String tc1Name; > @Property(editing = Editing.ENABLED) > @Getter > @Setter > private String tc2Name; > @Property(editing = Editing.ENABLED) > @Getter > @Setter > private String tc3Name; > @Property(editing = Editing.ENABLED) > @Getter > @Setter > private String tc4Name; > public List choices0Create() { > List list = tc1ObjectRepo.findAll(); > List nameList = list.stream().map(i -> > i.getTechCapabL1Name()). > distinct().collect(Collectors.toList()); > return nameList; > } > public String default0Create() { > return getTc1Name(); > } > public List choices1Create(String tc1Name) { > System.out.println("tc1Name: " + tc1Name); > Tc1Object tc1 = tc1ObjectRepo.findByTechCapabL1Name(tc1Name); > System.out.println("tc1: " + tc1); > List list = tc2ObjectRepo.findByTc1Object(tc1); > List nameList = list.stream().map(i -> > i.getTechCapabL2Name()). >distinct().collect(Collectors.toList()); > return nameList; > } > public String default1Create() { > return getTc2Name(); > } > public List choices2Create(String tc2Name) { > System.out.println("tc2Name: " + tc2Name); > Tc2Object tc2 = tc2ObjectRepo.findByTechCapabL2Name(tc2Name); > System.out.println("tc2: " + tc2); > List list = tc3ObjectRepo.findByTc2Object(tc2); > System.out.println("tc list :" + list); > List nameList = list.stream().map(i -> >i.getTechCapabL3Name()).distinct(). >collect(Collectors.toList()); > return nameList; > } > public String default2Create() { > return getTc3Name(); > } > public List choices3Create(String tc3Name) { > Tc3Object tc3 = tc3ObjectRepo.findByTechCapabL3Name(tc3Name); > List list = tc4ObjectRepo.findByTc3Object(tc3); > List nameList = list.stream().map(i -> > i.getTechCapabL4Name()).distinct(). > collect(Collectors.toList()); > return nameList; > } > public String default3Create() { > return getTc4Name(); > } > > @Action(semantics = SemanticsOf.NON_IDEMPOTENT) > @ActionLayout(promptStyle = PromptStyle.DIALOG_MODAL) > public CtlgObject create( > final String tc1Name, > final String tc2Name, > final String tc3Name, > final String tc4Name, > > final String baseTechName) > { > setTc1Name(tc1Name); > setTc2Name(tc2Name); > setTc3Name(tc3Name); > setTc4Name(tc4Name); > return repositoryService.persist(new CtlgObject(tc1Name, > tc2Name, tc3Name, tc4Name, baseTechName)); > } {code} > > > - > in choices2Create(String tc2Name) function , value of tc2Name is equal > tc1Name ,it's equal the first drop dwon list value ,not the second drop down > list value . -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2568) [Wish] Make sidebar resizable
[ https://issues.apache.org/jira/browse/ISIS-2568?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2568: - Summary: [Wish] Make sidebar resizable (was: Make sidebar resizable) > [Wish] Make sidebar resizable > - > > Key: ISIS-2568 > URL: https://issues.apache.org/jira/browse/ISIS-2568 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Reporter: Daniel Keir Haywood >Priority: Minor > > possible implementation: > [https://codepen.io/Zodiase/pen/qmjyKL] > HTML: > {code:java} > > > Aside > > > > > Main > > > {code} > CSS: > {code:java} > html { > height: 100%; > } > body { > box-sizing: border-box; > height: 100%; > margin: 0; > padding: 30px; > background-color: black; > }.container { > height: 100%; > overflow: hidden; > background-color: white; > }// Flexbox setup. > .container { > display: -ms-flexbox; > display: -webkit-flex; > display: flex; > -webkit-flex-direction: row; > -ms-flex-direction: row; > flex-direction: row; > -webkit-flex-wrap: nowrap; > -ms-flex-wrap: nowrap; > flex-wrap: nowrap; > -webkit-justify-content: flex-start; > -ms-flex-pack: start; > justify-content: flex-start; > -webkit-align-content: stretch; > -ms-flex-line-pack: stretch; > align-content: stretch; > -webkit-align-items: stretch; > -ms-flex-align: stretch; > align-items: stretch; > > & > aside { > -webkit-order: 0; > -ms-flex-order: 0; > order: 0; > -webkit-flex: 0 0 auto; > -ms-flex: 0 0 auto; > flex: 0 0 auto; > -webkit-align-self: auto; > -ms-flex-item-align: auto; > align-self: auto; > } > > & > main { > -webkit-order: 0; > -ms-flex-order: 0; > order: 0; > -webkit-flex: 1 1 auto; > -ms-flex: 1 1 auto; > flex: 1 1 auto; > -webkit-align-self: auto; > -ms-flex-item-align: auto; > align-self: auto; > } > }.container > aside, > .container > main { > padding: 10px; > overflow: auto; > }.resize-handle--x { > -webkit-flex: 0 0 auto; > -ms-flex: 0 0 auto; > flex: 0 0 auto; > > position: relative; > box-sizing: border-box; > width: 3px; > height: 100%; > border-left-width: 1px; > border-left-style: solid; > border-left-color: black; > border-right-width: 1px; > border-right-style: solid; > border-right-color: black; > cursor: ew-resize; > > -webkit-touch-callout: none; > -webkit-user-select: none; > -khtml-user-select: none; > -moz-user-select: none; > -ms-user-select: none; > user-select: none; > > @handleSize: 18px; > @handleThickness: 1px; > @handleDistance: 2px; > > &:before { > content: ""; > position: absolute; > z-index: 1; > top: 50%; > right: 100%; > height: @handleSize; > width: @handleDistance; > margin-top: -@handleSize/2; > border-left-color: black; > border-left-width: @handleThickness; > border-left-style: solid; > } > &:after { > content: ""; > position: absolute; > z-index: 1; > top: 50%; > left: 100%; > height: @handleSize; > width: @handleDistance; > margin-top: -@handleSize/2; > border-right-color: black; > border-right-width: @handleThickness; > border-right-style: solid; > } > } > {code} > JS: > {code:java} > const selectTarget = (fromElement, selector) => { > if (!(fromElement instanceof HTMLElement)) { > return null; > } return fromElement.querySelector(selector); > };const resizeData = { > tracking: false, > startWidth: null, > startCursorScreenX: null, > handleWidth: 10, > resizeTarget: null, > parentElement: null, > maxWidth: null, > };$(document.body).on('mousedown', '.resize-handle--x', null, (event) => { > if (event.button !== 0) { > return; > } event.preventDefault(); > event.stopPropagation(); const handleElement = event.currentTarget; > > if (!handleElement.parentElement) { > console.error(new Error("Parent element not found.")); > return; > } > > // Use the target selector on the handle to get the resize target. > const targetSelector = handleElement.getAttribute('data-target'); > const targetElement = selectTarget(handleElement.parentElement, > targetSelector); if (!targetElement) { > console.error(new Error("Resize target element not found.")); > return; > } > > resizeData.startWidth = $(targetElement).outerWidth(); > resizeData.startCursorScreenX = event.screenX; > resizeData.resizeTarget = targetElement; > resizeData.parentElement = handleElement.parentElement; > resizeData.maxWidth = $(handleElement.parentElement).innerWidth() - > resizeData.handleWidth; > resizeData.tracking = true; console.log('tracking started'); > });$(window).on('mousemove', null, null,
[jira] [Updated] (ISIS-2568) Make sidebar resizable
[ https://issues.apache.org/jira/browse/ISIS-2568?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2568: - Issue Type: Wish (was: Improvement) > Make sidebar resizable > -- > > Key: ISIS-2568 > URL: https://issues.apache.org/jira/browse/ISIS-2568 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Reporter: Daniel Keir Haywood >Priority: Minor > > possible implementation: > [https://codepen.io/Zodiase/pen/qmjyKL] > HTML: > {code:java} > > > Aside > > > > > Main > > > {code} > CSS: > {code:java} > html { > height: 100%; > } > body { > box-sizing: border-box; > height: 100%; > margin: 0; > padding: 30px; > background-color: black; > }.container { > height: 100%; > overflow: hidden; > background-color: white; > }// Flexbox setup. > .container { > display: -ms-flexbox; > display: -webkit-flex; > display: flex; > -webkit-flex-direction: row; > -ms-flex-direction: row; > flex-direction: row; > -webkit-flex-wrap: nowrap; > -ms-flex-wrap: nowrap; > flex-wrap: nowrap; > -webkit-justify-content: flex-start; > -ms-flex-pack: start; > justify-content: flex-start; > -webkit-align-content: stretch; > -ms-flex-line-pack: stretch; > align-content: stretch; > -webkit-align-items: stretch; > -ms-flex-align: stretch; > align-items: stretch; > > & > aside { > -webkit-order: 0; > -ms-flex-order: 0; > order: 0; > -webkit-flex: 0 0 auto; > -ms-flex: 0 0 auto; > flex: 0 0 auto; > -webkit-align-self: auto; > -ms-flex-item-align: auto; > align-self: auto; > } > > & > main { > -webkit-order: 0; > -ms-flex-order: 0; > order: 0; > -webkit-flex: 1 1 auto; > -ms-flex: 1 1 auto; > flex: 1 1 auto; > -webkit-align-self: auto; > -ms-flex-item-align: auto; > align-self: auto; > } > }.container > aside, > .container > main { > padding: 10px; > overflow: auto; > }.resize-handle--x { > -webkit-flex: 0 0 auto; > -ms-flex: 0 0 auto; > flex: 0 0 auto; > > position: relative; > box-sizing: border-box; > width: 3px; > height: 100%; > border-left-width: 1px; > border-left-style: solid; > border-left-color: black; > border-right-width: 1px; > border-right-style: solid; > border-right-color: black; > cursor: ew-resize; > > -webkit-touch-callout: none; > -webkit-user-select: none; > -khtml-user-select: none; > -moz-user-select: none; > -ms-user-select: none; > user-select: none; > > @handleSize: 18px; > @handleThickness: 1px; > @handleDistance: 2px; > > &:before { > content: ""; > position: absolute; > z-index: 1; > top: 50%; > right: 100%; > height: @handleSize; > width: @handleDistance; > margin-top: -@handleSize/2; > border-left-color: black; > border-left-width: @handleThickness; > border-left-style: solid; > } > &:after { > content: ""; > position: absolute; > z-index: 1; > top: 50%; > left: 100%; > height: @handleSize; > width: @handleDistance; > margin-top: -@handleSize/2; > border-right-color: black; > border-right-width: @handleThickness; > border-right-style: solid; > } > } > {code} > JS: > {code:java} > const selectTarget = (fromElement, selector) => { > if (!(fromElement instanceof HTMLElement)) { > return null; > } return fromElement.querySelector(selector); > };const resizeData = { > tracking: false, > startWidth: null, > startCursorScreenX: null, > handleWidth: 10, > resizeTarget: null, > parentElement: null, > maxWidth: null, > };$(document.body).on('mousedown', '.resize-handle--x', null, (event) => { > if (event.button !== 0) { > return; > } event.preventDefault(); > event.stopPropagation(); const handleElement = event.currentTarget; > > if (!handleElement.parentElement) { > console.error(new Error("Parent element not found.")); > return; > } > > // Use the target selector on the handle to get the resize target. > const targetSelector = handleElement.getAttribute('data-target'); > const targetElement = selectTarget(handleElement.parentElement, > targetSelector); if (!targetElement) { > console.error(new Error("Resize target element not found.")); > return; > } > > resizeData.startWidth = $(targetElement).outerWidth(); > resizeData.startCursorScreenX = event.screenX; > resizeData.resizeTarget = targetElement; > resizeData.parentElement = handleElement.parentElement; > resizeData.maxWidth = $(handleElement.parentElement).innerWidth() - > resizeData.handleWidth; > resizeData.tracking = true; console.log('tracking started'); > });$(window).on('mousemove', null, null, _.debounce((event) => { > if (resizeData.tracking)
[jira] [Updated] (ISIS-2797) Reimplement login page as a view model
[ https://issues.apache.org/jira/browse/ISIS-2797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2797: - Issue Type: Wish (was: Improvement) > Reimplement login page as a view model > -- > > Key: ISIS-2797 > URL: https://issues.apache.org/jira/browse/ISIS-2797 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 2.0.0-M5 >Reporter: Daniel Keir Haywood >Priority: Minor > > copied from a TODO that was on > org.apache.isis.core.security.authentication.logout.LogoutHandler: > * @since Apr 9, 2020 > * TODO we are at early stages of the design, a better idea occurred: > * actually model the SignIn page as a true ViewModel similar to how we > * render the home-page; this should allow for the LogoutHandler to be called > * from the framework more directly and not from within the LogoutMenu's > * logout action, which is more complicated because, this happens within > * the context of an IsisInteraction, where we cannot simply purge the > * current session, when in the middle of an interaction -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2797) [Wish] Reimplement login page as a view model
[ https://issues.apache.org/jira/browse/ISIS-2797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2797: - Summary: [Wish] Reimplement login page as a view model (was: Reimplement login page as a view model) > [Wish] Reimplement login page as a view model > - > > Key: ISIS-2797 > URL: https://issues.apache.org/jira/browse/ISIS-2797 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 2.0.0-M5 >Reporter: Daniel Keir Haywood >Priority: Minor > > copied from a TODO that was on > org.apache.isis.core.security.authentication.logout.LogoutHandler: > * @since Apr 9, 2020 > * TODO we are at early stages of the design, a better idea occurred: > * actually model the SignIn page as a true ViewModel similar to how we > * render the home-page; this should allow for the LogoutHandler to be called > * from the framework more directly and not from within the LogoutMenu's > * logout action, which is more complicated because, this happens within > * the context of an IsisInteraction, where we cannot simply purge the > * current session, when in the middle of an interaction -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2946) [Wish] Allow option to have Boolean scalar values toggle
[ https://issues.apache.org/jira/browse/ISIS-2946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2946: - Summary: [Wish] Allow option to have Boolean scalar values toggle (was: Allow option to have Boolean scalar values toggle) > [Wish] Allow option to have Boolean scalar values toggle > > > Key: ISIS-2946 > URL: https://issues.apache.org/jira/browse/ISIS-2946 > Project: Isis > Issue Type: Wish > Components: Isis Viewer Wicket >Affects Versions: 2.0.0-M6 >Reporter: Brian Kalbfus >Priority: Minor > > For a Boolean value to be toggled, it takes the following user actions: > 1. Click on the "Yes/no" text next to the checkbox > 2. Since the page just refreshed, scroll down to where the property was > 3. Click on the checkbox > 4. Click on the "OK" button > 5. Since the page just refreshed again, scroll down to see that your > change took > > It seems to me that a user usually expects to be able to update a checkbox > with a single action and the current behavior is the result of building in a > confirmation feature into the Wicket module. For those who would prefer skip > the confirmation step, we can have updates occur automatically. This would > make the checkbox intuitive and allow updates of other scalars without a > submit button. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1349) ExceptionRecognizers not supported in RO, eg if create duplicate row then get a 500
[ https://issues.apache.org/jira/browse/ISIS-1349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1349. Resolution: Abandoned closing this - probably outdated - can re-iterate if required > ExceptionRecognizers not supported in RO, eg if create duplicate row then get > a 500 > --- > > Key: ISIS-1349 > URL: https://issues.apache.org/jira/browse/ISIS-1349 > Project: Isis > Issue Type: Bug > Components: Isis Viewer RO >Affects Versions: 1.11.1 >Reporter: Daniel Keir Haywood >Priority: Minor > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-945) [DUPLICATE] Exception by restful different than shown by Wicket viewer
[ https://issues.apache.org/jira/browse/ISIS-945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-945. --- Resolution: Duplicate closing because duplicated > [DUPLICATE] Exception by restful different than shown by Wicket viewer > -- > > Key: ISIS-945 > URL: https://issues.apache.org/jira/browse/ISIS-945 > Project: Isis > Issue Type: Bug > Components: Isis Viewer RO >Affects Versions: core-1.7.0 >Reporter: Erik de Hair >Priority: Minor > > Hi, > I have a service method that I only want to expose via restful. I suppressed > the method from showing up in the Wicket viewer so I didn't try to call it > with the Wicket viewer. > Now restful throws an error (which is not very useful) when calling the > method: > org.apache.tomcat.util.http.parser.TokenMgrError: Lexical error at line 1, > column 29. Encountered: ":" (58), after : "" > > org.apache.tomcat.util.http.parser.HttpParserTokenManager.getNextToken(HttpParserTokenManager.java:434) > > org.apache.tomcat.util.http.parser.HttpParser.jj_ntk(HttpParser.java:300) > > org.apache.tomcat.util.http.parser.HttpParser.MediaType(HttpParser.java:21) > For some reason I now also exposed the action via Wicket. That way I get > another exception with more useful information about my problem: > javax.jdo.JDOUserExceptionInvalid operator "=". Did you mean to use "=="? > org.datanucleus.api.jdo.NucleusJDOHelper#getJDOExceptionForNucleusException(NucleusJDOHelper.java:549) > org.datanucleus.api.jdo.JDOQuery#execute(JDOQuery.java:299) > > nl.pocos.dom.workflow.WorkFlowStatusses#checkNumberOfPGSMLicences(WorkFlowStatusses.java:55) > > sun.reflect.NativeMethodAccessorImpl#invoke0(NativeMethodAccessorImpl.java:-2) > > sun.reflect.NativeMethodAccessorImpl#invoke(NativeMethodAccessorImpl.java:57) > > sun.reflect.DelegatingMethodAccessorImpl#invoke(DelegatingMethodAccessorImpl.java:43) > java.lang.reflect.Method#invoke(Method.java:606) > After fixing this error the restful call works fine. I had this behaviour > before but couldn't reproduce it. It looks like the TokenMgrError is thrown > when some exception occurs in an action called via restful and the real > reason/exception can't be found in the logs. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1927) Invoking an action returning a non-null Blob via RO results in exception
[ https://issues.apache.org/jira/browse/ISIS-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1927. Resolution: Abandoned closing this - probably outdated - can re-iterate if required > Invoking an action returning a non-null Blob via RO results in exception > > > Key: ISIS-1927 > URL: https://issues.apache.org/jira/browse/ISIS-1927 > Project: Isis > Issue Type: Bug > Components: Isis Viewer RO >Affects Versions: 1.16.2 >Reporter: Daniel Keir Haywood >Priority: Minor > > Also as per Erik on users ml > [https://lists.apache.org/thread.html/2055cf053e713d768c36d2cf25632c8bed74bf757a4be4d3ab540b05@%3Cusers.isis.apache.org%3E] > the second issue he reports suggests that hitting an action returning a > non-null Blob via RO results in an exception in OidUtils. > > {code:java} > public static String getOidStr(final ObjectAdapter objectAdapter) { > final Oid oid = objectAdapter.getOid(); > if (!(oid instanceof RootOid)) { > throw new IllegalArgumentException("objectAdapter must be a root > adapter"); > } > return oid.enStringNoVersion(); > }{code} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1479) DataNucleus data type mapping for streams (to support direct upload of large BLOBs)
[ https://issues.apache.org/jira/browse/ISIS-1479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1479: - Issue Type: Wish (was: New Feature) > DataNucleus data type mapping for streams (to support direct upload of large > BLOBs) > --- > > Key: ISIS-1479 > URL: https://issues.apache.org/jira/browse/ISIS-1479 > Project: Isis > Issue Type: Wish > Components: Isis Persistence JDO >Affects Versions: 1.13.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > from http://markmail.org/message/64xcc7twcxdrhfqj > > With respect to the storage of the BLOBs themselves, I don't think (at > > least I couldn't find) any datatype mapping to be able to map from a stream > > (obtained from ServletInputStream) into a JDO entity, ie to avoid the > > creation of the BLOB in-memory. If it *were* possible, then I don't think > > Isis would care; just map the property as @Programmatic and Isis would > > ignore it. Perhaps Andy might be able to chip in on this? > java.io.File is currently the only java field type with a mapping that is > streamable. See > http://www.datanucleus.org/products/accessplatform_5_0/jdo/types.html#Other_Types > Somebody could take existing code used for that type and contribute a mapping > for some other java type. > https://github.com/datanucleus/datanucleus-rdbms/blob/master/src/main/java/org/datanucleus/store/rdbms/mapping/datastore/BinaryStreamRDBMSMapping.java -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-822) [Duplicate] Integration tests should generate a transcript when executed (a la BDD tools such as Cucumber)
[ https://issues.apache.org/jira/browse/ISIS-822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-822: Summary: [Duplicate] Integration tests should generate a transcript when executed (a la BDD tools such as Cucumber) (was: Integration tests should generate a transcript when executed (a la BDD tools such as Cucumber)) > [Duplicate] Integration tests should generate a transcript when executed (a > la BDD tools such as Cucumber) > -- > > Key: ISIS-822 > URL: https://issues.apache.org/jira/browse/ISIS-822 > Project: Isis > Issue Type: New Feature > Components: Isis Testing >Affects Versions: core-1.5.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > Harking back to the early days of Naked Objects... > > perhaps also generate an Asciidoc transcript with PlantUML. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-822) [Duplicate] Integration tests should generate a transcript when executed (a la BDD tools such as Cucumber)
[ https://issues.apache.org/jira/browse/ISIS-822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-822. --- Resolution: Duplicate duplicated by ISIS-1268 > [Duplicate] Integration tests should generate a transcript when executed (a > la BDD tools such as Cucumber) > -- > > Key: ISIS-822 > URL: https://issues.apache.org/jira/browse/ISIS-822 > Project: Isis > Issue Type: New Feature > Components: Isis Testing >Affects Versions: core-1.5.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > Harking back to the early days of Naked Objects... > > perhaps also generate an Asciidoc transcript with PlantUML. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1268) Enhance integration tests (and wrapper factory etc) to generate PlantUML sequence transcripts for visualization.
[ https://issues.apache.org/jira/browse/ISIS-1268?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1268. Resolution: Won't Fix probably out of scope for the framework - closing this, can re-iterate if required > Enhance integration tests (and wrapper factory etc) to generate PlantUML > sequence transcripts for visualization. > > > Key: ISIS-1268 > URL: https://issues.apache.org/jira/browse/ISIS-1268 > Project: Isis > Issue Type: New Feature > Components: Isis Testing >Affects Versions: 1.10.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > per mailing list thread: http://markmail.org/message/ey5kgtx6xub7zyo5 > The thread originally was motivated by the use case to forward-generate Java > classes from a diagram, but also then got onto more general purpose > round-tripping tools, plus the idea of generating diagrams from code, "after > the fact" > Also mentioned in that thread is the idea of generating transcripts of tests > for sequence diagrams; these would be as a side-effect of running integration > tests. This ticket is for that idea. -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1479) DataNucleus data type mapping for streams (to support direct upload of large BLOBs)
[ https://issues.apache.org/jira/browse/ISIS-1479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1479. Resolution: Won't Fix probably out of scope for the framework; can re-iterate if required > DataNucleus data type mapping for streams (to support direct upload of large > BLOBs) > --- > > Key: ISIS-1479 > URL: https://issues.apache.org/jira/browse/ISIS-1479 > Project: Isis > Issue Type: Wish > Components: Isis Persistence JDO >Affects Versions: 1.13.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > from http://markmail.org/message/64xcc7twcxdrhfqj > > With respect to the storage of the BLOBs themselves, I don't think (at > > least I couldn't find) any datatype mapping to be able to map from a stream > > (obtained from ServletInputStream) into a JDO entity, ie to avoid the > > creation of the BLOB in-memory. If it *were* possible, then I don't think > > Isis would care; just map the property as @Programmatic and Isis would > > ignore it. Perhaps Andy might be able to chip in on this? > java.io.File is currently the only java field type with a mapping that is > streamable. See > http://www.datanucleus.org/products/accessplatform_5_0/jdo/types.html#Other_Types > Somebody could take existing code used for that type and contribute a mapping > for some other java type. > https://github.com/datanucleus/datanucleus-rdbms/blob/master/src/main/java/org/datanucleus/store/rdbms/mapping/datastore/BinaryStreamRDBMSMapping.java -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-2251) Improve the parent pom.xml, see blog
[ https://issues.apache.org/jira/browse/ISIS-2251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-2251. Resolution: Fixed Parent POM moved to /bom/pom.xml (Bill of Material); with some improvements de-duplicating declarations; good enough for now I guess > Improve the parent pom.xml, see blog > > > Key: ISIS-2251 > URL: https://issues.apache.org/jira/browse/ISIS-2251 > Project: Isis > Issue Type: Improvement > Components: Isis Starters Mavendeps >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0-RC1 > > > [https://itnext.io/writing-a-full-featured-maven-pom-f5b874eef312] -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2251) Improve the parent pom.xml, see blog
[ https://issues.apache.org/jira/browse/ISIS-2251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2251: - Fix Version/s: 2.0.0-RC1 > Improve the parent pom.xml, see blog > > > Key: ISIS-2251 > URL: https://issues.apache.org/jira/browse/ISIS-2251 > Project: Isis > Issue Type: Improvement > Components: Isis Starters Mavendeps >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: 2.0.0-RC1 > > > [https://itnext.io/writing-a-full-featured-maven-pom-f5b874eef312] -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-790) Replace DN Blob/Clob Mappings with Blob/Clob converters
[ https://issues.apache.org/jira/browse/ISIS-790?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-790. --- Fix Version/s: v1 maintenance Resolution: Won't Fix closing this (very likely outdated) - can re-iterate if required > Replace DN Blob/Clob Mappings with Blob/Clob converters > --- > > Key: ISIS-790 > URL: https://issues.apache.org/jira/browse/ISIS-790 > Project: Isis > Issue Type: Improvement > Components: Isis Persistence JDO >Affects Versions: objectstore-jdo-1.4.1 >Reporter: Daniel Keir Haywood >Priority: Minor > Fix For: v1 maintenance > > > See ISIS-788 for background on the Blob/Clob converters. > ISIS-789 (upgrade to DN 4.0) is a prereq (meaning ISIS-568 for JDK is also). -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1863) [WON'T FIX] Code generate page object classes to allow smoke tests using Selenium to be developed more easily
[ https://issues.apache.org/jira/browse/ISIS-1863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1863. Resolution: Won't Fix closing as won't fix for now - can reiterate if required > [WON'T FIX] Code generate page object classes to allow smoke tests using > Selenium to be developed more easily > - > > Key: ISIS-1863 > URL: https://issues.apache.org/jira/browse/ISIS-1863 > Project: Isis > Issue Type: Improvement > Components: Isis Testing >Affects Versions: 1.16.0 >Reporter: Daniel Keir Haywood >Priority: Minor > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1863) [WON'T FIX] Code generate page object classes to allow smoke tests using Selenium to be developed more easily
[ https://issues.apache.org/jira/browse/ISIS-1863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1863: - Summary: [WON'T FIX] Code generate page object classes to allow smoke tests using Selenium to be developed more easily (was: Code generate page object classes to allow smoke tests using Selenium to be developed more easily) > [WON'T FIX] Code generate page object classes to allow smoke tests using > Selenium to be developed more easily > - > > Key: ISIS-1863 > URL: https://issues.apache.org/jira/browse/ISIS-1863 > Project: Isis > Issue Type: Improvement > Components: Isis Testing >Affects Versions: 1.16.0 >Reporter: Daniel Keir Haywood >Priority: Minor > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Assigned] (ISIS-3029) Schema "isisextensionssecman" does not exists
[ https://issues.apache.org/jira/browse/ISIS-3029?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber reassigned ISIS-3029: Assignee: Andi Huber > Schema "isisextensionssecman" does not exists > - > > Key: ISIS-3029 > URL: https://issues.apache.org/jira/browse/ISIS-3029 > Project: Isis > Issue Type: Bug > Components: Isis Extensions SecMan >Affects Versions: 2.0.0-M7 >Reporter: Han Hui Wen >Assignee: Andi Huber >Priority: Major > > I use Postgresql .when I try ISIS secman extension ,find following issue : > > Call: CREATE TABLE isisExtensionsSecman.ApplicationUserRoles (roleId BIGINT > NOT NULL, userId BIGINT NOT NULL, PRIMARY KEY (roleId, userId)) > Query: DataModifyQuery(sql="CREATE TABLE > isisExtensionsSecman.ApplicationUserRoles (roleId BIGINT NOT NULL, userId > BIGINT NOT NULL, PRIMARY KEY (roleId, userId))") > [EL Warning]: 2022-04-27 14:08:56.375--ServerSession(1942100755)--Exception > [EclipseLink-4002] (Eclipse Persistence Services - > 2.7.10.v20211216-fe64cd39c3): > org.eclipse.persistence.exceptions.DatabaseException > Internal Exception: org.postgresql.util.PSQLException: Error > schema"isisextensionssecman" does not exits . > > Anctullay I have created isisextensionssecman in Postgresql Database . Seems > it's cause by Postgres names case sensitive issue . > > when I change the configuration as following according to the document : > [https://isis.apache.org/security/2.0.0-M7/secman/setting-up.html#examples] > > isis: > persistence: > schema: > auto-create-schemas: abdb > It's still has the issue , seems isisextensionssecman is hard coding in > program . > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-3029) Schema "isisextensionssecman" does not exists
[ https://issues.apache.org/jira/browse/ISIS-3029?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-3029: - Fix Version/s: 2.0.0-RC1 > Schema "isisextensionssecman" does not exists > - > > Key: ISIS-3029 > URL: https://issues.apache.org/jira/browse/ISIS-3029 > Project: Isis > Issue Type: Bug > Components: Isis Extensions SecMan >Affects Versions: 2.0.0-M7 >Reporter: Han Hui Wen >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0-RC1 > > > I use Postgresql .when I try ISIS secman extension ,find following issue : > > Call: CREATE TABLE isisExtensionsSecman.ApplicationUserRoles (roleId BIGINT > NOT NULL, userId BIGINT NOT NULL, PRIMARY KEY (roleId, userId)) > Query: DataModifyQuery(sql="CREATE TABLE > isisExtensionsSecman.ApplicationUserRoles (roleId BIGINT NOT NULL, userId > BIGINT NOT NULL, PRIMARY KEY (roleId, userId))") > [EL Warning]: 2022-04-27 14:08:56.375--ServerSession(1942100755)--Exception > [EclipseLink-4002] (Eclipse Persistence Services - > 2.7.10.v20211216-fe64cd39c3): > org.eclipse.persistence.exceptions.DatabaseException > Internal Exception: org.postgresql.util.PSQLException: Error > schema"isisextensionssecman" does not exits . > > Anctullay I have created isisextensionssecman in Postgresql Database . Seems > it's cause by Postgres names case sensitive issue . > > when I change the configuration as following according to the document : > [https://isis.apache.org/security/2.0.0-M7/secman/setting-up.html#examples] > > isis: > persistence: > schema: > auto-create-schemas: abdb > It's still has the issue , seems isisextensionssecman is hard coding in > program . > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-2427) Create a Docker Image showcasing the Vaadin Demo.
[ https://issues.apache.org/jira/browse/ISIS-2427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-2427. Assignee: Andi Huber Resolution: Fixed We have implemented a docker image build with CI. However, until work on Vaadin Viewer continues, the build is disabled now. > Create a Docker Image showcasing the Vaadin Demo. > - > > Key: ISIS-2427 > URL: https://issues.apache.org/jira/browse/ISIS-2427 > Project: Isis > Issue Type: Improvement > Components: Isis Examples >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0-RC1 > > > [x] rename demo-springboot -> demo-wicket > [x] create docker image via CI > [ ] switch vaadin packaging build to 'production' > [ ] is there a way for the vaadin viewer to keep npn stuff local to the > viewer's module such that consuming application modules don't require to > fetch all the npn modules again, (ideally: don't require devs to have node.js > installed locally) > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2427) Create a Docker Image showcasing the Vaadin Demo.
[ https://issues.apache.org/jira/browse/ISIS-2427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2427: - Fix Version/s: 2.0.0-RC1 > Create a Docker Image showcasing the Vaadin Demo. > - > > Key: ISIS-2427 > URL: https://issues.apache.org/jira/browse/ISIS-2427 > Project: Isis > Issue Type: Improvement > Components: Isis Examples >Reporter: Andi Huber >Priority: Major > Fix For: 2.0.0-RC1 > > > [x] rename demo-springboot -> demo-wicket > [x] create docker image via CI > [ ] switch vaadin packaging build to 'production' > [ ] is there a way for the vaadin viewer to keep npn stuff local to the > viewer's module such that consuming application modules don't require to > fetch all the npn modules again, (ideally: don't require devs to have node.js > installed locally) > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1751) Verify Isis Applib backward compatibility (was: History of API changes for Isis AppLib since 1.8.0)
[ https://issues.apache.org/jira/browse/ISIS-1751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1751: - Issue Type: Wish (was: Proposal) > Verify Isis Applib backward compatibility (was: History of API changes for > Isis AppLib since 1.8.0) > --- > > Key: ISIS-1751 > URL: https://issues.apache.org/jira/browse/ISIS-1751 > Project: Isis > Issue Type: Wish > Components: Isis CI Build Scripts >Reporter: Andrey Ponomarenko >Priority: Trivial > Attachments: isis-core-applib-1.png, isis-core-applib-2.png > > > Hi, > I'd like to share report on API changes and backward binary compatibility for > the Isis AppLib library: > https://abi-laboratory.pro/java/tracker/timeline/isis-core-applib/ > The report is generated by the https://github.com/lvc/japi-tracker tool for > jars found at > http://central.maven.org/maven2/org/apache/isis/core/isis-core-applib/ > according to the article https://wiki.eclipse.org/Evolving_Java-based_APIs_2. > The tool checks all public API methods and classes by default. Please let me > know if it should not check some parts of the API (private, undocumented, > etc.). > Thank you. > !isis-core-applib-2.png|API symbols timeline! > !isis-core-applib-1.png|API changes review! -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1751) [Wish] Verify Isis Applib backward compatibility (was: History of API changes for Isis AppLib since 1.8.0)
[ https://issues.apache.org/jira/browse/ISIS-1751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1751: - Summary: [Wish] Verify Isis Applib backward compatibility (was: History of API changes for Isis AppLib since 1.8.0) (was: Verify Isis Applib backward compatibility (was: History of API changes for Isis AppLib since 1.8.0)) > [Wish] Verify Isis Applib backward compatibility (was: History of API changes > for Isis AppLib since 1.8.0) > -- > > Key: ISIS-1751 > URL: https://issues.apache.org/jira/browse/ISIS-1751 > Project: Isis > Issue Type: Wish > Components: Isis CI Build Scripts >Reporter: Andrey Ponomarenko >Priority: Trivial > Attachments: isis-core-applib-1.png, isis-core-applib-2.png > > > Hi, > I'd like to share report on API changes and backward binary compatibility for > the Isis AppLib library: > https://abi-laboratory.pro/java/tracker/timeline/isis-core-applib/ > The report is generated by the https://github.com/lvc/japi-tracker tool for > jars found at > http://central.maven.org/maven2/org/apache/isis/core/isis-core-applib/ > according to the article https://wiki.eclipse.org/Evolving_Java-based_APIs_2. > The tool checks all public API methods and classes by default. Please let me > know if it should not check some parts of the API (private, undocumented, > etc.). > Thank you. > !isis-core-applib-2.png|API symbols timeline! > !isis-core-applib-1.png|API changes review! -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2178) [Wish] Integrate Nexus Vulnerability Scan into github CI
[ https://issues.apache.org/jira/browse/ISIS-2178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2178: - Issue Type: Wish (was: Improvement) > [Wish] Integrate Nexus Vulnerability Scan into github CI > > > Key: ISIS-2178 > URL: https://issues.apache.org/jira/browse/ISIS-2178 > Project: Isis > Issue Type: Wish > Components: Isis CI Build Scripts >Reporter: Daniel Keir Haywood >Priority: Minor > > [https://github.com/marketplace/actions/nvs-github-actions] > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2178) [Wish] Integrate Nexus Vulnerability Scan into github CI
[ https://issues.apache.org/jira/browse/ISIS-2178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2178: - Summary: [Wish] Integrate Nexus Vulnerability Scan into github CI (was: Integrate Nexus Vulnerability Scan into github CI) > [Wish] Integrate Nexus Vulnerability Scan into github CI > > > Key: ISIS-2178 > URL: https://issues.apache.org/jira/browse/ISIS-2178 > Project: Isis > Issue Type: Improvement > Components: Isis CI Build Scripts >Reporter: Daniel Keir Haywood >Priority: Minor > > [https://github.com/marketplace/actions/nvs-github-actions] > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2463) Move the nightly-built website into a different repo to isis-nightly
[ https://issues.apache.org/jira/browse/ISIS-2463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2463: - Issue Type: Wish (was: Improvement) > Move the nightly-built website into a different repo to isis-nightly > > > Key: ISIS-2463 > URL: https://issues.apache.org/jira/browse/ISIS-2463 > Project: Isis > Issue Type: Wish > Components: Isis CI Build Scripts >Reporter: Daniel Keir Haywood >Priority: Minor > > At the moment, every night the website is rebuilt by > https://github.com/apache-isis-committers/isis-nightly and pushes back to the > same repo. > This means that this repo that defines the build takes longer to clone, and > also any changes to it need to be rebased. > It would be better, I think, to split out these responsibilities - build vs > build website, -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2463) [Wish] Move the nightly-built website into a different repo to isis-nightly
[ https://issues.apache.org/jira/browse/ISIS-2463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2463: - Summary: [Wish] Move the nightly-built website into a different repo to isis-nightly (was: Move the nightly-built website into a different repo to isis-nightly) > [Wish] Move the nightly-built website into a different repo to isis-nightly > --- > > Key: ISIS-2463 > URL: https://issues.apache.org/jira/browse/ISIS-2463 > Project: Isis > Issue Type: Wish > Components: Isis CI Build Scripts >Reporter: Daniel Keir Haywood >Priority: Minor > > At the moment, every night the website is rebuilt by > https://github.com/apache-isis-committers/isis-nightly and pushes back to the > same repo. > This means that this repo that defines the build takes longer to clone, and > also any changes to it need to be rebased. > It would be better, I think, to split out these responsibilities - build vs > build website, -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2905) Provide import/export function for roles
[ https://issues.apache.org/jira/browse/ISIS-2905?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2905: - Issue Type: Wish (was: New Feature) > Provide import/export function for roles > > > Key: ISIS-2905 > URL: https://issues.apache.org/jira/browse/ISIS-2905 > Project: Isis > Issue Type: Wish > Components: Isis Extensions SecMan >Reporter: Johan Doornenbal >Priority: Minor > > It would be convenient to be able to test roles and then import them in a > prod environment. > Also copy-ing existing and slightly adapting them as a new role would be a > use case. > (The way we use the current isissecurity in Estatio, roles can consist of 45 > lines) -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2905) [Wish] Provide import/export function for roles
[ https://issues.apache.org/jira/browse/ISIS-2905?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2905: - Summary: [Wish] Provide import/export function for roles (was: Provide import/export function for roles) > [Wish] Provide import/export function for roles > --- > > Key: ISIS-2905 > URL: https://issues.apache.org/jira/browse/ISIS-2905 > Project: Isis > Issue Type: Wish > Components: Isis Extensions SecMan >Reporter: Johan Doornenbal >Priority: Minor > > It would be convenient to be able to test roles and then import them in a > prod environment. > Also copy-ing existing and slightly adapting them as a new role would be a > use case. > (The way we use the current isissecurity in Estatio, roles can consist of 45 > lines) -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2991) [Java17+] Replace Spring's Nullable with Jakarta's
[ https://issues.apache.org/jira/browse/ISIS-2991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2991: - Summary: [Java17+] Replace Spring's Nullable with Jakarta's (was: Replace Spring's Nullable with Jakarta's) > [Java17+] Replace Spring's Nullable with Jakarta's > -- > > Key: ISIS-2991 > URL: https://issues.apache.org/jira/browse/ISIS-2991 > Project: Isis > Issue Type: Improvement >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 3.0.0-M1 > > > An new Jakarta 2.x API version was released, that includes a Nullable > annotation. > As Jakarta is the industry standard, batch replace > import org.springframework.lang.Nullable; > with > import jakarta.annotation.Nullable; -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1266) [Wish] Expose an Isis metamodel to RDF, SparQL, "semantic web"
[ https://issues.apache.org/jira/browse/ISIS-1266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1266: - Summary: [Wish] Expose an Isis metamodel to RDF, SparQL, "semantic web" (was: Expose an Isis metamodel to RDF, SparQL, "semantic web") > [Wish] Expose an Isis metamodel to RDF, SparQL, "semantic web" > -- > > Key: ISIS-1266 > URL: https://issues.apache.org/jira/browse/ISIS-1266 > Project: Isis > Issue Type: Wish > Components: Isis Incubator >Affects Versions: 1.10.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > There have been various discussions about RDF and semantic web etc on the > users mailing list. This ticket is just as a placeholder to the fact that > there is obviously interest in some sort of integration here. > http://markmail.org/message/uixaxnlsb3rncquo > http://markmail.org/thread/vbuom7npt32r53gv > From Cesar (private email to Dan): > Interestingly, I found out that Apache provides a semantic approach in Java > (RDF – SPARQL) through Apache JENA. > https://jena.apache.org/ > > A couple of short introductory videos: > > RDF Ontology with Apache JENA > https://www.youtube.com/watch?v=N_GpbwMHeMQ > > SPARQL with Apache Jena > https://www.youtube.com/watch?v=nUdHneViLp4 > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1266) Expose an Isis metamodel to RDF, SparQL, "semantic web"
[ https://issues.apache.org/jira/browse/ISIS-1266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1266: - Issue Type: Wish (was: New Feature) > Expose an Isis metamodel to RDF, SparQL, "semantic web" > --- > > Key: ISIS-1266 > URL: https://issues.apache.org/jira/browse/ISIS-1266 > Project: Isis > Issue Type: Wish > Components: Isis Incubator >Affects Versions: 1.10.0 >Reporter: Daniel Keir Haywood >Priority: Minor > > There have been various discussions about RDF and semantic web etc on the > users mailing list. This ticket is just as a placeholder to the fact that > there is obviously interest in some sort of integration here. > http://markmail.org/message/uixaxnlsb3rncquo > http://markmail.org/thread/vbuom7npt32r53gv > From Cesar (private email to Dan): > Interestingly, I found out that Apache provides a semantic approach in Java > (RDF – SPARQL) through Apache JENA. > https://jena.apache.org/ > > A couple of short introductory videos: > > RDF Ontology with Apache JENA > https://www.youtube.com/watch?v=N_GpbwMHeMQ > > SPARQL with Apache Jena > https://www.youtube.com/watch?v=nUdHneViLp4 > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-2965) Release activities for 2.0.0-RC1
[ https://issues.apache.org/jira/browse/ISIS-2965?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-2965: - Fix Version/s: 2.0.0-RC1 > Release activities for 2.0.0-RC1 > > > Key: ISIS-2965 > URL: https://issues.apache.org/jira/browse/ISIS-2965 > Project: Isis > Issue Type: Task >Reporter: Daniel Keir Haywood >Priority: Major > Fix For: 2.0.0-RC1 > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-1360) Declarative Invariants
[ https://issues.apache.org/jira/browse/ISIS-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-1360. Resolution: Information Provided > Declarative Invariants > -- > > Key: ISIS-1360 > URL: https://issues.apache.org/jira/browse/ISIS-1360 > Project: Isis > Issue Type: Question > Components: Isis Incubator >Affects Versions: 1.12.0 >Reporter: Cesar Lugo >Priority: Minor > > I think that one aspect of the amplification concept Apache ISIS provides > might be to allow some degree of declarative business rules / invariants. > There is an interesting open source project (1) that allows a Java > application to define declarative business rules / invariant you might want > to fork. > > The difference between some other business rules engines (say RETE compliant) > is that most business rules engines focus on conditional business rules or > decision business rules only, and work outside the application scope, as an > external API returning results that you must incorporate into your code with > even more code. This one´s focus (ABL) is transactional business rules, which > work through the persistence manager (Hibernate´s JPA in this case), so you > don´t need to call any rules to be triggered, rules are automatically > triggered when you persist data. Thus, it lets you use the previous values > before saving and after saving to trigger rules (update inventory with new > value of received quantity - old value of received quantity + old value of > inventory). > > In summary, it provides: > •Declarative rules, like: > o InvoiceItem.amount = InvoiceItem.quantity * InvoiceItem.unitPrice * (1 + > VAT / 100) > o Invoice.amount = sum(InvoiceItem.amount) if InvoiceItem.status != > “deleted” > o account balance = sum(invoice.amount) if status = “due > •Automatic sequencing of the rules. This is really great, because > instead of sequenced lines of code, you create independent rules, which you > can maintain and change completely separate from all other rules. You can > even have a rules manager and document each rule. > •Automatic execution of the rules every time you do an insert, update > or delete to any of those entity objects. Any change executes the rules > properly. If a new rule implies altering the sequence of the execution of > rules, this happens automatically and seamlessly. > •Extensibility (create your own rules). Create a new weightedAverage > () rule. > •Documentation. You can document your rules, associate rules to topic > or groups, like use cases where they come from. > > > (1)http://www.automatedbusinesslogic.com/ -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Updated] (ISIS-1360) Declarative Invariants
[ https://issues.apache.org/jira/browse/ISIS-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-1360: - Issue Type: Question (was: Proposal) > Declarative Invariants > -- > > Key: ISIS-1360 > URL: https://issues.apache.org/jira/browse/ISIS-1360 > Project: Isis > Issue Type: Question > Components: Isis Incubator >Affects Versions: 1.12.0 >Reporter: Cesar Lugo >Priority: Minor > > I think that one aspect of the amplification concept Apache ISIS provides > might be to allow some degree of declarative business rules / invariants. > There is an interesting open source project (1) that allows a Java > application to define declarative business rules / invariant you might want > to fork. > > The difference between some other business rules engines (say RETE compliant) > is that most business rules engines focus on conditional business rules or > decision business rules only, and work outside the application scope, as an > external API returning results that you must incorporate into your code with > even more code. This one´s focus (ABL) is transactional business rules, which > work through the persistence manager (Hibernate´s JPA in this case), so you > don´t need to call any rules to be triggered, rules are automatically > triggered when you persist data. Thus, it lets you use the previous values > before saving and after saving to trigger rules (update inventory with new > value of received quantity - old value of received quantity + old value of > inventory). > > In summary, it provides: > •Declarative rules, like: > o InvoiceItem.amount = InvoiceItem.quantity * InvoiceItem.unitPrice * (1 + > VAT / 100) > o Invoice.amount = sum(InvoiceItem.amount) if InvoiceItem.status != > “deleted” > o account balance = sum(invoice.amount) if status = “due > •Automatic sequencing of the rules. This is really great, because > instead of sequenced lines of code, you create independent rules, which you > can maintain and change completely separate from all other rules. You can > even have a rules manager and document each rule. > •Automatic execution of the rules every time you do an insert, update > or delete to any of those entity objects. Any change executes the rules > properly. If a new rule implies altering the sequence of the execution of > rules, this happens automatically and seamlessly. > •Extensibility (create your own rules). Create a new weightedAverage > () rule. > •Documentation. You can document your rules, associate rules to topic > or groups, like use cases where they come from. > > > (1)http://www.automatedbusinesslogic.com/ -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (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 ] Andi Huber closed ISIS-1695. Fix Version/s: 2.0.0-RC1 Assignee: Andi Huber Resolution: Implemented We have improved value semantics support now. See eg. UUIDValueSemantics, which demonstrates the concept. > 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 > Components: Isis Incubator >Reporter: Daniel Keir Haywood >Assignee: Andi Huber >Priority: Minor > Fix For: 2.0.0-RC1 > > > 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.20.7#820007)
[jira] [Updated] (ISIS-3020) [Programming Model] Support Multivariate Parameter Supporting Methods
[ https://issues.apache.org/jira/browse/ISIS-3020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber updated ISIS-3020: - Description: Re-enable v1 backward compatibility. Remove restrictions on validateNXxxx(...). (was: Maybe introduce a marker annotation, to explicitly enable this v1 backward compatibility, on a per method basis. {code:java} @MultivariateParameterSupport public String validate0PlaceOrder(Product product, int quantity) { ... } {code} ) > [Programming Model] Support Multivariate Parameter Supporting Methods > - > > Key: ISIS-3020 > URL: https://issues.apache.org/jira/browse/ISIS-3020 > Project: Isis > Issue Type: Improvement > Components: Isis Applib (programming model) >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0-RC1 > > > Re-enable v1 backward compatibility. Remove restrictions on > validateNXxxx(...). -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Closed] (ISIS-3020) [Programming Model] Support Multivariate Parameter Supporting Methods
[ https://issues.apache.org/jira/browse/ISIS-3020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andi Huber closed ISIS-3020. also cheat sheet updated > [Programming Model] Support Multivariate Parameter Supporting Methods > - > > Key: ISIS-3020 > URL: https://issues.apache.org/jira/browse/ISIS-3020 > Project: Isis > Issue Type: Improvement > Components: Isis Applib (programming model) >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0-RC1 > > > Re-enable v1 backward compatibility. Remove restrictions on > validateNXxxx(...). -- This message was sent by Atlassian Jira (v8.20.7#820007)