Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-18984

The jaxrs-server layer should not result in MicroProfile REST Client or Config provisioning

    XMLWordPrintable

Details

    Description

      For full context, please see the upstream discussion at https://wildfly.zulipchat.com/#narrow/stream/174184-wildfly-developers/topic/MP.20Config.20from.20jaxrs.20layer

      The tl;dr; of this is if you provision the jaxrs-server layers using the wildfly feature pack you get the following items, while if you use the wildfly-ee feature pack you don't:

      1) The org.jboss.resteasy.resteasy-client-microprofile module and the jars included therein.
      2) The inclusion of the MP Config extension and subsystem in your standalone.xml, plus inclusion of the modules/artifacts needed to support it.

      Neither of these fit the intended definition of those layers, which are about server-side Jakarta RESTFul Web Services support. Using MP RC as a client running inside the server is the purpose of the microprofile-rest-client layer. The fact that MP Config also gets brought in is a side effect of the dependency on microprofile-rest-client.

      The problem noted above isn't good for a few reasons:

      A) Different layer definitions between wildfly-ee and wildfly aren't great, just from a conceptual cleanness and understandability POV. They may exist in other cases (e.g. cloud-server), but when they do the difference should be clearly intentional, which was not the case here.

      B) The jaxrs-server layers is not intended to include MP Config, and having it there does not fit with their purpose.

      C) Having extraneous things in a layer makes it difficult properly use that layer to handle other use cases.

      Attachments

        Issue Links

          Activity

            People

              jperkins-rhn James Perkins
              jperkins-rhn James Perkins
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: