Uploaded image for project: 'Solder'
  1. Solder
  2. SOLDER-49

Unsatisfied dependencies for type-safe logger

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Blocker
    • Resolution: Done
    • Affects Version/s: 3.0.0.Beta1
    • Fix Version/s: 3.0.0.Final
    • Component/s: Logging
    • Labels:
      None
    • Estimated Difficulty:
      Low

      Description

      JBoss Logging caches the value of the system property jboss.i18n.generate-proxies, which determines whether it will generate the proxies that the type-safe loggers in Solder rely on.

      Although this property is set in a static block in the LoggerExtension, it may not be soon enough depending on the order that extension are loaded. In some cases, JBoss Logging caches a value of null, then all type-safe logging injection points break (and we get major complaints in the forums).

      You can fix this temporarily by starting the application server with the following system property:

      -Djboss.i18n.generate-proxies=true

      The real issue is in JBoss Logging. It shouldn't be caching this system property so aggressively. But the use of a system property in general is way too fragile.

        Gliffy Diagrams

          Issue Links

            Activity

            Hide
            dan.j.allen Dan Allen added a comment -

            Resolve immediate issue by using jboss-logging-tools to generate the concrete class for AnnotatedMessages.

            We still have a wider issue of documenting how this requirement affects consumers of the API.

            Show
            dan.j.allen Dan Allen added a comment - Resolve immediate issue by using jboss-logging-tools to generate the concrete class for AnnotatedMessages. We still have a wider issue of documenting how this requirement affects consumers of the API.
            Hide
            dan.j.allen Dan Allen added a comment -

            Requires redesign of the annotation processor to accommodate Solder annotations.

            Show
            dan.j.allen Dan Allen added a comment - Requires redesign of the annotation processor to accommodate Solder annotations.
            Hide
            dan.j.allen Dan Allen added a comment -

            I've documented what is required to get JBoss Logging to generate the proxies dynamically in the absence of the concrete classes. We should still try to make that easier on the developer, to be tracked in a separate issue.

            Show
            dan.j.allen Dan Allen added a comment - I've documented what is required to get JBoss Logging to generate the proxies dynamically in the absence of the concrete classes. We should still try to make that easier on the developer, to be tracked in a separate issue.

              People

              • Assignee:
                dan.j.allen Dan Allen
                Reporter:
                dan.j.allen Dan Allen
              • Votes:
                2 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Development