Uploaded image for project: 'WildFly Core'
  1. WildFly Core
  2. WFCORE-1783

CLI GUI throws exception when editing boolean attribute with expression

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor Minor
    • 3.0.0.Alpha8
    • None
    • CLI
    • None
    • Hide

      Replication procedures:

      1) Start WildFly server, then start the CLI in GUI mode (jboss-cli.sh --gui)
      2) Execute the following CLI command by hand (enter this in the text box at the top) to get the attribute to the value that causes the error:

      /subsystem=undertow/:write-attribute(name=statistics-enabled,value=${myprop:false})

      3) In the "Command Builder" tab's tree, traverse to that /subsystem=undertow tree item and expand it to see the "statistics-enabled" value - it should now be that "${myprop:false}" expression you just submitted.

      4) Now try to edit that attribute (select the attribute, right-mouse, select "write-attribute")

      Notice the tiny dialog box (barely visible). Resize it and notice it is completely empty but for the title bar.

      Show
      Replication procedures: 1) Start WildFly server, then start the CLI in GUI mode (jboss-cli.sh --gui) 2) Execute the following CLI command by hand (enter this in the text box at the top) to get the attribute to the value that causes the error: /subsystem=undertow/:write-attribute(name=statistics-enabled,value=${myprop:false}) 3) In the "Command Builder" tab's tree, traverse to that /subsystem=undertow tree item and expand it to see the "statistics-enabled" value - it should now be that "${myprop:false}" expression you just submitted. 4) Now try to edit that attribute (select the attribute, right-mouse, select "write-attribute") Notice the tiny dialog box (barely visible). Resize it and notice it is completely empty but for the title bar.

      When in the CLI GUI, if you try to edit a boolean attribute whose current value is an expression then an exception is thrown and you can't edit it - the popup dialog is really small and blank.

      See "Steps to Reproduce" for replication procedures.

      Here's the exception:

      java.lang.IllegalArgumentException
      at org.jboss.dmr.ModelValue.asBoolean(ModelValue.java:66)
      at org.jboss.dmr.ModelNode.asBoolean(ModelNode.java:262)
      at org.jboss.as.cli.gui.OperationDialog$RequestProp.setInputComponentValue(OperationDialog.java:428)
      at org.jboss.as.cli.gui.OperationDialog$RequestProp.<init>(OperationDialog.java:336)
      at org.jboss.as.cli.gui.OperationDialog.setProps(OperationDialog.java:157)
      at org.jboss.as.cli.gui.OperationDialog.<init>(OperationDialog.java:73)
      at org.jboss.as.cli.gui.OperationMenu$OperationAction.actionPerformed(OperationMenu.java:152)
      at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
      at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
      at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
      at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
      at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
      at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
      at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
      at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
      at java.awt.Component.processMouseEvent(Component.java:6535)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
      at java.awt.Component.processEvent(Component.java:6300)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4891)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4713)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2750)
      at java.awt.Component.dispatchEvent(Component.java:4713)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

              ihradek@redhat.com Ivo Hrádek (Inactive)
              jmazzitelli John Mazzitelli
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: