Uploaded image for project: 'Isis'
  1. Isis
  2. ISIS-1319

Input dialog for action label for mandatory parameter not shown when the parameter is an view model

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.12.0
    • Component/s: Core: Viewer: Wicket
    • Labels:
      None

      Description

      We have an action method with two mandatory parameters, the first one is a viewmodel with autoCompleteXXX and second one an Enum.

      Problem: the sign for mandatory parameter on label (*-suffix) is shown only on second label - see attached screenshot

       public DslPortCompatibilityCheckResult dslPortCompatibilityCheck(
                  @Parameter(optionality = Optionality.MANDATORY) @ParameterLayout(named = "DSL Port") DslPort dslPort,
                  @Parameter(optionality = Optionality.MANDATORY) @ParameterLayout(named = "Technology") DslTechnology desiredTechnology) throws PlanningException {
      
      

      Dialog behavior is OK.

      1. screenshot-1.png
        37 kB
        Vladimir Nisevic
      2. screenshot-2.png
        31 kB
        Vladimir Nisevic

        Activity

        Hide
        jira-bot ASF subversion and git services added a comment -

        Commit 8e4468e97800848c5202690feced13716b1ec883 in isis's branch refs/heads/master from Dan Haywood
        [ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=8e4468e ]

        ISIS-1319: change where the "mandatory" class is added for reference panel so that the existing CSS picks it up to show the red asterisk marker.

        Show
        jira-bot ASF subversion and git services added a comment - Commit 8e4468e97800848c5202690feced13716b1ec883 in isis's branch refs/heads/master from Dan Haywood [ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=8e4468e ] ISIS-1319 : change where the "mandatory" class is added for reference panel so that the existing CSS picks it up to show the red asterisk marker.
        Hide
        danhaywood Dan Haywood added a comment -

        to reproduce, in simpleapp added:

        package domainapp.dom.simple;
        
        import javax.xml.bind.annotation.XmlAccessType;
        
        @javax.xml.bind.annotation.XmlRootElement(name = "thing")
        @javax.xml.bind.annotation.XmlType(
                propOrder = {
                        "foo",
                }
        )
        @javax.xml.bind.annotation.XmlAccessorType(XmlAccessType.PROPERTY)
        @org.apache.isis.applib.annotation.DomainObjectLayout(
                titleUiEvent = org.apache.isis.applib.services.eventbus.TitleUiEvent.Default.class
        )
        public class Thing implements org.apache.isis.applib.services.dto.Dto {
        
            private String foo;
        
            public String getFoo() {
                return foo;
            }
        
            public void setFoo(final String foo) {
                this.foo = foo;
            }
        
        }
        

        and also:

            public SimpleObject foo(Thing thing, String x) {
                return null;
            }
        
            public Collection<Thing> autoComplete0Foo(final String search) {
                final Thing thing = new Thing();
                thing.setFoo("X");
                return Lists.newArrayList(thing); // TODO: return list of choices for argument N
            }
        
        
        Show
        danhaywood Dan Haywood added a comment - to reproduce, in simpleapp added: package domainapp.dom.simple; import javax.xml.bind.annotation.XmlAccessType; @javax.xml.bind.annotation.XmlRootElement(name = "thing" ) @javax.xml.bind.annotation.XmlType( propOrder = { "foo" , } ) @javax.xml.bind.annotation.XmlAccessorType(XmlAccessType.PROPERTY) @org.apache.isis.applib.annotation.DomainObjectLayout( titleUiEvent = org.apache.isis.applib.services.eventbus.TitleUiEvent.Default.class ) public class Thing implements org.apache.isis.applib.services.dto.Dto { private String foo; public String getFoo() { return foo; } public void setFoo( final String foo) { this .foo = foo; } } and also: public SimpleObject foo(Thing thing, String x) { return null ; } public Collection<Thing> autoComplete0Foo( final String search) { final Thing thing = new Thing(); thing.setFoo( "X" ); return Lists.newArrayList(thing); // TODO: return list of choices for argument N }

          People

          • Assignee:
            danhaywood Dan Haywood
            Reporter:
            niv Vladimir Nisevic
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development