Spring Core 3.2.5

Rod Widdowson rdw at steadingsoftware.com
Sun Nov 24 07:19:21 EST 2013


I updated the parent pom to this yesterday  (after unwedging a stuck Jenkins
build).

The IDP has since gone unstable (why does it never show up when I test
locally?) and I have tracked this down to a new bug in Spring-core. (I
think).

The bug manifests itself as failures in the two Data Connector Spring Native
configuration tests, but I have abstracted this down to a simple test.

Given this source xml:

        <bean id="cacheBuilder"
              class="com.google.common.cache.CacheBuilder"
              factory-method="from">
              <constructor-arg
value="expireAfterAccess=10s,maximumSize=25"/>
        </bean>

        <bean id="cache"
              class="com.google.common.cache.Cache"
              factory-bean="cacheBuilder"
              factory-method="build"/>

Then we can find by class a bean of type
"com.google.common.cache.CacheBuilder", but we *cannot* find a bean of type
"com.google.common.cache.Cache".

We can find the beans by name ('cache' and 'cacheBuilder') and once found we
can find the bean by type.  The reason this matters is that Daniel's Native
Spring parsing code relies on finding beans by type to plug in to the data
connector under construction.

I'm going to try to get this into a small program and log the bug.  But we
need to decide how to progress:

- Do we just revert to the last known good?
- Do we try to debug the problem and provide a patch (which I'd sooner not
do unless the team really want it)?
- Or do we patch it in the configuration (I imagine that we can force the
bean to load so that it can then be found)?

None of these are very appealing to me.

Thoughts?



More information about the dev mailing list