Announcement Announcement Module
Collapse
No announcement yet.
Spring 3.1.1 compilation Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Spring 3.1.1 compilation

    Hi,

    I'm trying to compile Spring 3.1.1 to verify a patch, and am running into problems. Even without my patch, a clean checkout + 'ant -f build-spring-framework/build.xml' fails in the ORM module. The beginning of the failure log is included below.

    Does this ring any bells? I know I'm being a bit old-school here; the patch works fine against the gradle-based Spring 3.2 build. But we're using 3.1.1 currently, so I'm interested in patching for both 3.2 and the old line.

    Is there any easy "right" way to just bypass the ORM module and only compile / test what I need, or is it an all-or-nothing proposition?

    The patch impacts spring-core, spring-web, and spring-webmvc.

    Thanks,

    -Patrick

    Code:
        [junit] Testsuite: org.springframework.orm.hibernate3.HibernateJtaTransactionTests
        [junit] Tests run: 36, Failures: 0, Errors: 8, Time elapsed: 0.319 sec
        [junit] 
        [junit] ------------- Standard Error -----------------
        [junit] SLF4J: slf4j-api 1.6.x (or later) is incompatible with this binding.
        [junit] SLF4J: Your binding is version 1.5.5 or earlier.
        [junit] SLF4J: Upgrade your binding to version 1.6.x. or 2.0.x
        [junit] ------------- ---------------- ---------------
        [junit] Testcase: testJtaTransactionCommitWithPreBound(org.springframework.orm.hibernate3.HibernateJtaTransactionTests):	Caused an ERROR
        [junit] org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder;
        [junit] java.lang.NoSuchMethodError: org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder;
        [junit] 	at org.slf4j.LoggerFactory.bind(LoggerFactory.java:121)
        [junit] 	at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
        [junit] 	at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268)
        [junit] 	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241)
        [junit] 	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
        [junit] 	at org.hibernate.engine.QueryParameters.<clinit>(QueryParameters.java:53)
        [junit] 	at java.lang.Class.forName0(Native Method)
        [junit] 	at java.lang.Class.forName(Class.java:169)
        [junit] 	at $Proxy12.<clinit>(Unknown Source)
        [junit] 	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        [junit] 	at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:588)
        [junit] 	at org.easymock.internal.JavaProxyFactory.createProxy(JavaProxyFactory.java:24)
        [junit] 	at org.easymock.internal.MocksControl.createMock(MocksControl.java:51)
        [junit] 	at org.easymock.MockControl.<init>(MockControl.java:44)
        [junit] 	at org.easymock.MockControl.createControl(MockControl.java:59)
        [junit] 	at org.springframework.orm.hibernate3.HibernateJtaTransactionTests.doTestJtaTransactionCommitWithPreBound(HibernateJtaTransactionTests.java:547)
        [junit] 	at org.springframework.orm.hibernate3.HibernateJtaTransactionTests.testJtaTransactionCommitWithPreBound(HibernateJtaTransactionTests.java:484)

  • #2
    You need to update the SLF4J dependency from 1.5.3 to 1.6.1 the test and orm modules in ivy.xml:

    Change:
    <dependency org="org.slf4j" name="com.springsource.slf4j.jcl" rev="1.5.3" conf="test->runtime"/>
    to:
    <dependency org="org.slf4j" name="com.springsource.slf4j.jcl" rev="1.6.1" conf="test->runtime"/>

    Probably got missed while porting to 1.6 or some backport patch.

    Comment

    Working...
    X