Your configuration is flawed. I suppose your controllers are annotated with the @Controller annotations; you already do a component scan to register those as Spring beans so don't also declare them in xml or you will get 2 versions of the same bean in your context and this will lead to problems like those you are experiencing.
Also, annotation-config is included in component-scan so you don't need that, nor you need to specify use-default-filters (true is the standard option - use convention over configuration when possible!) or that you want to include the @Controller annotation (this is included by default - again, coc!).
Other thing, use mvc:annotation-driven which will not just register the DefaultAnnotationHandlerMapping but also a lot of other much needed and cool stuff for Spring mvc (read the reference guide).
In short, you should reduce your config file to:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schem...-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
<context:component-scan base-package="gov.opm.epic" />
<mvc:annotation-driven />
</beans>