Uploaded image for project: 'Karaf'
  1. Karaf
  2. KARAF-2958

Use of type-converters in Karaf Security Documentation is incorrect

    Details

      Description

      The documentation at:
      http://karaf.apache.org/manual/latest/developers-guide/security-framework.html

      contains an example of using blueprint to configure a JAAS realm and uses the $[karaf.base] property to specify the path to the properties file defining users and roles. To ensure consistent paths across platforms a PropertiesConverter is used however the example itself is broken because it violates the XML XSD for http://www.osgi.org/xmlns/blueprint/v1.0.0.

      The example XML will not deploy complaining of an XML schema violation because of the order of elements.

      The XML contains:
      <ext:property-placeholder placeholder-prefix="$[" placeholder-suffix="]"/>
      <type-converters>
      <bean class="org.apache.karaf.jaas.modules.properties.PropertiesConverter"/>
      </type-converters>

      But the type-converters element (per the XSD) must follow the optional description element and precede any others within the root blueprint element. Re-ordering the XML like:

      <type-converters>
      <bean class="org.apache.karaf.jaas.modules.properties.PropertiesConverter"/>
      </type-converters>
      <ext:property-placeholder placeholder-prefix="$[" placeholder-suffix="]"/>

      to properly place the ext:property-placeholder element AFTER the type-converters element resolves the problem and allows it to deploy properly.

      See the nabble thread on the topic:

      http://karaf.922171.n3.nabble.com/Jaas-realm-problem-td4031391i20.html#a4033003

        Attachments

          Activity

            People

            • Assignee:
              jbonofre Jean-Baptiste Onofré
              Reporter:
              adamspe Paul Adams
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: