Uploaded image for project: '[Read Only] - Hippo Plugins'
  1. [Read Only] - Hippo Plugins
  2. HIPPLUG-973

SEO Support plugin test build using Java 8 fails on proxied private interfaces

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • None
    • None
    • plugins-seo-support

    Description

      The SEOHelperComponentTest class for the SEO Support plugin creates a proxy object using private interfaces.
      This works up to Java 8, but fails as of Java 8.

      This is a documented incompatibility between Java 7 and Java 8, Area: Core Libs / java.lang.reflect:

      The java.lang.reflect.Proxy class that implements non-public interface will be non-public, final, and not abstract. Prior to Java SE 8, the proxy class was public, final and not abstract.

      As result, method access to proxies objects based on private interfaces no longer works (without otherwise dynamically modifying the accessibilty).

      The fix is trivial: just make these interfaces public, which in the context of this testcase indeed is trivial.

      Take away: be very careful with proxying interfaces as of Java 8.

      Attachments

        Activity

          People

            Unassigned Unassigned
            adouma Ate Douma
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: