The factory-method should only contain the method name, not including the class name.
If you want to use a static factory, give the class of the factory(!) to the bean declaration, if you want to use an instance factory, give the factory-bean to the bean declaration, but don’t give both: The class of the created bean is not given in the bean declaration.
So a full example should look like this, using a static factory for validatorFactory and an instance factory for validator:
<bean id="validatorFactory"
class="javax.validation.Validation"
factory-method="buildDefaultValidatorFactory" />
<bean id="validator"
factory-bean="validatorFactory"
factory-method="getValidator" />
See details on the documentation:
http://static.springsource.org/spring/docs/2.0.x/reference/beans.html#beans-factory-class-static-factory-method
To answer you question – How would you create bean in this kind of a situation in Spring? – Do it exactly as shown here, or if you can, use a utility class like the LocalValidatorFactoryBean, which simplifies the Spring configuration.