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

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

XMLWordPrintable

      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.

              mkouba@redhat.com Martin Kouba
              astefanu@redhat.com Antonin Stefanutti
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: