2012-01-26 1 views
4

У меня есть приложение Spring 3 MVC, для которого я настраиваю некоторые действия ajax. Мои действия контроллера выглядит следующим образом:Исключение ClassNotFound с использованием Jackson ObjectMapper

@RequestMapping(value="add", method=RequestMethod.POST) 
@Secured("ROLE_USER") 
@ResponseStatus(HttpStatus.CREATED) 
public @ResponseBody Plan addPlan(@RequestBody Plan plan, Principal principal) { 
    //Save the plan 
} 

Когда я отправляю данные плана из моего браузера приложение генерирует исключение ClassNotFound:

java.lang.ClassNotFoundException: org.joda.time.ReadableInstant not found by jackson-mapper-asl [176] 
at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787) 
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71) 
at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 

Сам объект Plan не содержит каких-либо типов Joda-дата , Хотя он содержит коллекцию объектов, которые делают. Первоначально я забирал jod-date jar через мой баннер DOA, но ошибка сохраняется, даже если я добавляю прямую зависимость от pom.xml моего веб-проекта. Я использую классы joda в другом месте этого проекта без каких-либо проблем.

Дополнительная информация Вот соответствующие зависимости от моего веб-pom.xml:

<dependency> 
     <groupId>joda-time</groupId> 
     <artifactId>joda-time</artifactId> 
     <version>2.0</version> 
</dependency> 
<dependency> 
     <groupId>org.codehaus.jackson</groupId> 
     <artifactId>jackson-core-asl</artifactId> 
     <version>1.9.3</version> 
</dependency> 
<dependency> 
     <groupId>org.codehaus.jackson</groupId> 
     <artifactId>jackson-mapper-asl</artifactId> 
     <version>1.9.3</version> 
</dependency> 
+0

Вы можете разместить соответствующую часть вашего POM? Одна вещь, которую вы всегда можете проверить, - это распаковать свою WAR и убедиться, что joda jar находится в папке WEB-INF lib. – Perception

+2

Вы развертываете ваш webapp на сервере OSGi? – Luciano

+0

@Первис Я добавил кусок моего пом. Я подтвердил, что joda-time jar находится в моем военном файле. – speshak

ответ