Unfortunately this was a pain in the ass to do before 3.1. You are on the right track you need to configure the object mapper to not include nulls and then set that object mapper on the HttpMessageConverter. The unfortunate thing about how things were in Spring 3.0 is that the easiest way to do this would have been to supply your own AnnotationMethodHandlerAdapter and set the object mapper on it. However in order for that to work you can not use <mvc:annotation-driven />
or its ignored. This means you would have to manually do everything that <mvc:annotation-driven /> did for you (which is a lot)
You can see in the ticket below the workaround suggested was to right a bean post processor (yuck)
Anyways is there a reason you cannot upgrade Spring? There is a pretty well documented upgrade path, and would definitely be worth it to upgrade.