Add exception translator for EclipseLink exceptions

Issue: SPR-9541
polishing

Updating pull request for SPR-9541
Merge pull request #102 from remast/master

* pull102:
  polishing
  Add exception translator for EclipseLink exceptions
Revert merge commit e246010df7ea726d
Exclude Jackson from Jasper Reports dependencies
GenericTypeResolver returns null for entirely unresolvable type arguments only

Issue: SPR-11763
IdToEntityConverter defensively handles access to getDeclaredMethods

Issue: SPR-11758
Add naming strategy for @MVC request mappings.

This change adds a strategy for assigning a default name to an
@RequestMapping controller method. The @RequestMapping annotation
itself now has a name attribute allowing the explicit assignment
of a mapping name.

This is mainly intended for use in EL expressions in views. The
RequestContext class now provides a getMvcUrl method that internally
delegates to MvcUriComponents to look up the handler method.

See the Javadoc of MvcUriComponents.fromMappingName.

Issue: SPR-5779
Support path segment URI var expansion in UrlTag

Before this change UrlTag expanded URI vars and encoded them using
UriUtils.encodePath.

This change makes it possible to expand using
UriUtils.encodePathSegment, which means a "/" is encoded as "%2F".

To expand with path segment semantics, prefix the URI var name "/":

<spring:url value="/url/path/{/var}">
    <spring:param name="var" value="my/Id" />
</spring:url>

Issue: SPR-11401
Avoid ConcurrentModificationException

Removal of cached destination is now moved outside the for loop
that removes subscriptions to avoid ConcurrentModificationException.

Also since updateCache is a LinkedHashMap with accessOrder=true,
a simple access with updateCache.get() modify the map.
By iterating over updateCache.entrySet(), we avoid this update.

Issue: SPR-11755