You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicemix.apache.org by "Nick Clarke (JIRA)" <ji...@apache.org> on 2016/03/17 09:38:33 UTC

[jira] [Created] (SM-2903) org.apache.servicemix.bundles.spring-webmvc does not have Import-Package for org.springframework.cglib.reflect

Nick Clarke created SM-2903:
-------------------------------

             Summary: org.apache.servicemix.bundles.spring-webmvc does not have Import-Package for org.springframework.cglib.reflect
                 Key: SM-2903
                 URL: https://issues.apache.org/jira/browse/SM-2903
             Project: ServiceMix
          Issue Type: Bug
          Components: bundles
            Reporter: Nick Clarke


org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-webmvc:4.2.4.RELEASE_1 does not have Import-Package for {org.springframework.cglib.reflect}.

This causes it to fail at runtime for some code paths using spring annotation config and MVC, because a class from that package is loaded via reflection - see below.

It does already have imports for other cglib packages because they're used directly, so the package-time bytecode scanner found them:

{code}
    org.springframework.cglib.core
        version="[4.2.4.RELEASE,4.3)"
        resolution:=optional
    org.springframework.cglib.proxy
        version="[4.2.4.RELEASE,4.3)"
        resolution:=optional
{code}

What breaks? org.springframework.cglib.core.AbstractClassGenerator.create fails when using spring-mvc with annotation config. (AbstractClassGenerator gets invoked by org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept, and tries to load org.springframework.cglib.reflect.FastClass via reflection, which fails because the package isn't imported)

Fix: add a line here: https://github.com/apache/servicemix-bundles/blob/master/spring-webmvc-4.2.4.RELEASE/pom.xml#L86

...with an explicit import for this package:

{code}
org.springframework.cglib.reflect;version="[${pkgVersion},4.3)";resolution:=optional,
{code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)