Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-6918

joiner attribute of concatenating-principal-decoder (Elytron subsystem) is marked as nillable but can not be

    XMLWordPrintable

Details

    • User Experience
    • Hide
      1. $JBOSS_HOME/bin/standalone.sh -c standalone-elytron.xml
      2. $JBOSS_HOME/bin/jboss-cli.sh -c
      3. /subsystem=elytron/constant-principal-decoder=constPrincDecoder:add(constant=roleX)
      4. /subsystem=elytron/concatenating-principal-decoder=concatPrincDecoder:add(principal-decoders=[constPrincDecoder,constPrincDecoder])
      5. /subsystem=elytron/concatenating-principal-decoder=concatPrincDecoder:undefine-attribute(name=joiner)
      6. reload
      Show
      $JBOSS_HOME/bin/standalone.sh -c standalone-elytron.xml $JBOSS_HOME/bin/jboss-cli.sh -c /subsystem=elytron/constant-principal-decoder=constPrincDecoder:add(constant=roleX) /subsystem=elytron/concatenating-principal-decoder=concatPrincDecoder:add(principal-decoders= [constPrincDecoder,constPrincDecoder] ) /subsystem=elytron/concatenating-principal-decoder=concatPrincDecoder:undefine-attribute(name=joiner) reload

    Description

      Issue description:
      After having undefined the joiner attribute of concatenating-principal-decoder in Elytron subsystem, the server does not start. The joiner attribute is declared as "nillable" => true in CLI, but can not be – see Steps to Reproce that results in

      14:50:29,357 ERROR [org.jboss.as.controller] (Controller Boot Thread) 
      
      OPVDX001: Validation error in standalone-elytron.xml ===========================
      
        346:     <permission class-name="org.wildfly.security.auth.permission.LoginPermission"/>
        347: </constant-permission-mapper>
        348: <concatenating-principal-decoder name="concatPrincDecoder">
             ^^^^ 'concatenating-principal-decoder' is missing one or more required attributes
                  All of the following are required: joiner
      
        349:     <principal-decoder name="constPrincDecoder"/>
        350:     <principal-decoder name="constPrincDecoder"/>
        351: </concatenating-principal-decoder>
      
       The underlying error message was:
       > ParseError at [row,col]:[348,17]
       > Message: WFLYCTL0133: Missing required attribute(s): joiner
      
      ================================================================================
      
      
      14:50:29,357 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0085: Failed to parse configuration
      	at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:143)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:355)
      	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:302)
      	at java.lang.Thread.run(Thread.java:745)
      
      14:50:29,358 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.
      

      The joiner attribute has use="required" in wildfly-elytron_1_0.xsd.

      Suggestions for improvement:
      In case it makes sense to have no joiner, the joiner should not be required. (There could be reasonable cases.) Otherwise, the CLI joiner attribute should be declared as "nillable" => false.

      The XSD joiner attribute should have defined default=".".

      Attachments

        Issue Links

          Activity

            People

              jkalina@redhat.com Jan Kalina (Inactive)
              okotek@redhat.com Ondrej Kotek
              Ondrej Kotek Ondrej Kotek
              Ondrej Kotek Ondrej Kotek
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: