I've not tried this yet, but is it possible that the Jersey dependency is transitively drawing in some older version of Spring, confusing the classpath with multiple versions of Spring? I've had this kind of thing happen before and it was a simple (although annoying) matter of adding in some exclusions to keep out the transitive dependencies.
Okay, I take that back...I just tried it and it looks like the Jersery dependency is pulling in Spring 2.5.6 dependencies along with the Spring 3.1 (SNAPSHOT) dependencies and thereby confusing the classpath with multiple versions of Spring. (It seems that the 2.5.6 final dependencies trump the 3.1 snapshot dependencies.)
I changed the dependency to look like the following and it built fine:
<!-- Jersey -->
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-spring</artifactId>
<version>1.5-ea09</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</exclusion>
</exclusions>
</dependency>
Craig Walls
Spring Social Project Lead