Protect against ArrayIndexOutOfBoundsException

Update logic in AbstractAutowireCapableBeanFactory.predictBeanType to
protect against a ArrayIndexOutOfBoundsException.

Issue: SPR-10304
Protect against 'has not been resolved to a Class'

Update AbstractAutowireCapableBeanFactory.getTypeForFactoryBean to
check AbstractBeanDefinition.hasBeanClass() before calling
getBeanClass(). The protects against a 'Bean class name [<name>] has
not been resolved into an actual Class' IllegalStateException.

Issue: SPR-10304
Fix @RequestMapping regex reference doc example

Issue: SPR-10244
Fix UriComponents.equals() method

Fix HierarchicalUriComponents and OpaqueUriComponents .equals() methods.

Issue: SPR-10313
Minor changes to fix typos
Merge pull request #237 from carsonmcdonald/fix-typos-2

# By Carson McDonald
* fix-typos-2:
  Minor changes to fix typos
Add JdbcTestUtils.deleteRowsInTableWhere method

Issue: SPR-10302
Deprecate HttpStatus.MOVED_TEMPORARILY

Deprecate HttpStatus.MOVED_TEMPORARILY in favor of HttpStatus.FOUND
since HttpStatus.valueOf(302) will always return FOUND.

The name of the 302 status code was changed between HTTP 1.0 and
HTTP 1.1 but the underlying meaning remains the same.

Issue: SPR-10300
StringToEnumConverterFactory class from enum value

Update StringToEnumConverterFactory to search superclasses until
Class.isEnum() returns true. This allows conversion when the
enum class is obtained from the enum value:

    public static enum SubFoo {
        BAR { String s() { return "x"; } };
        abstract String s();
    }

    conversionService.convert("BAR", SubFoo.BAR.getClass())

This fix is particularly important when converting collections of
enums.

Issue: SPR-10329
Protect against missing SpEL selection expression

Update InternalSpelExpressionParser to ensure that SPeL selections
('$[...]', '^[...]', '?[...]') always include a nested expression.

Issue: SPR-10328
MergePlugin uses project source not jar source

Update gradle MergePlugin to use the 'project.sourceSets.main.output'
for jar content rather than 'project.jar.source'. This prevents
superfluous MANIFEST.MF files from appearing in the merged jar.

Issue: SPR-10324
Remove unnecessary null check in SysEnvPropSource

Remove unnecessary null check and dead code from
SystemEnvironmentPropertySource.

Issue: SPR-10318
Replace references to SimpleJdbcTemplate in docs

Rework JDBC section of the manual to remove references to the now
deprecated SimpleJdbcTemplate class.

Issue: SPR-10317
Clean up console output for spring-beans tests
Update Eclipse import organization rules

The following changes have been made to the JDT UI prefs to conform to
existing conventions throughout the codebase:

 - always favor .* syntax for static imports
 - always list static imports last

Re-run `gradle eclipse` and refresh projects within Eclipse to make
this change take effect.
Re-enable ignored SecurityManager-related test

Prior to this change, CallbacksSecurityTests#testContainerPrivileges was
@Ignored because it caused the build to fail under Gradle. After some
analysis, the root cause was determined to be the fact that (a) a
restrictive SecurityManager is active during the running of this test,
and (b), Gradle intercepts System.out and routes it through its internal
LogBack-based logging system. LogBack requires a call to
Class#getClassLoader when handling logging statements, and the
SecurityManager disallows this call, thus raising the error that fails
the build.

This commit solves the problem by eliminating the System.out.println
call in question and removing the @Ignore annotation from the test. The
console output was diagnostic in nature anyway, and not required for the
successful execution of the test's assertions.

Issue: SPR-10074
Re-enable JaxWsSupportTests

These tests still fail under Eclipse for unknown reasons, but do work
under Gradle, so are thus re-enabled by removing the @Ignore.

Issue: SPR-10074
Update @Ignore'd JPA+AspectJ tests

Issue: SPR-10074, SPR-10333
Merge branch 'SPR-10074' into 3.2.x
Revert "Revert "Re-enable ignored JMX tests""

This reverts commit cc814519c8c5b943a2f5bb3950b2dde97db854bf.

Issue: SPR-8089
Conflicts:
	spring-context/src/test/java/org/springframework/jmx/access/RemoteMBeanClientInterceptorTestsIgnore.java
	spring-context/src/test/java/org/springframework/jmx/support/ConnectorServerFactoryBeanTestsIgnore.java