ERROR: Bean property 'mediaTypes' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter? 这个错误一直没有解决,后续spring版本中的mediaTypes居然不支持setter方法了,需要其他方法补救。
<bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="favorParameter" value="true"/>
<property name="parameterName" value="format"/>
<property name="ignoreAcceptHeader" value="false"/>
<property name="mediaTypes">
<value>
json=application/json
xml=application/xml
html=text/html
</value>
</property>
<property name="defaultContentType" value="text/html"/>
</bean>
查到了,mediaTypes、setFavorPathExtension、setFavorParameter、setIgnoreAcceptHeader等方法都被spring的ContentNegotiatingViewResolver弃用了,这些方法都转移到ContentNegotiationManager里面了,所以需要使用ContentNegotiationManager的配置下的……go:……
<property name="mediaTypes">
<value>
json=application/json
xml=application/xml
</value>
</property>