我使用spring as
为org.joda.time.DateTime
注入构造函数
<bean id="myDateTime" class="org.joda.time.DateTime">
<constructor-arg type="java.lang.Long" value="${startDateTime:#{null}}" />
</bean>
startDateTime被解析为1341571102000
。但是我收到有关无法解析构造函数的错误
Cannot resolve reference to bean 'myDateTime' while setting constructor argument;
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myDateTime' defined in URL [file:/path/to/spring-configuration/application-config.xml]: Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameters to avoid type ambiguities)
答案 0 :(得分:1)
org.joda.time.DateTime
类没有接受java.lang.Long
的构造函数。您可能希望使用接受原始long
的那个。为此,请尝试为type="long"
指定constructor-arg
。
但是,如果null
未设置,startDateTime
的回退在这种情况下将无效。我不确定您对该回退的意图是什么,但如果您要使用long
构造函数,则需要以其他方式解决它。