Uploaded image for project: 'Weld'
  1. Weld
  2. WELD-2089

Weld proxies for classes that extend unproxyable classes should be instances of the classes

    Details

      Description

      In Camel CDI, the PropertiesComponent class extends an abstract unproxyable class in the upcoming Apache Camel version 2.17.

      In that case, Weld proxies for the PropertiesComponent do not extend PropertiesComponent anymore and only implement interfaces of the type closure. That break the client applications.

      Note that it stills work with @Typed:

      @Produces
      @Typed(PropertiesComponent.class)
      @ApplicationScoped
      @Named("properties")
      private static PropertiesComponent configuration() {
          Properties properties = new Properties();
          properties.put("property", "value");
          PropertiesComponent component = new PropertiesComponent();
          component.setInitialProperties(properties);
          return component;
      }
      

      Note that it works as well with Weld 1.x.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                mkouba Martin Kouba
                Reporter:
                stefanutti Antonin Stefanutti
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: