我有一个带有类似属性setter的bean类:
public void setDueDate(java.sql.Date dueDate)
我还有一个用XML配置的bean实例,如下所示:
<property name="dueDate">
<bean class="java.sql.Date"/>
</property>
STS标记配置错误:
No constructor with 0 arguments defined in class 'java.sql.Date'
嗯,这是真的,java.sql.Date
没有no-arg构造函数。但是这个应用程序工作得很好,所以很明显Spring非常聪明,可以创建一个没有构造函数的Date
实例。问题是,为什么STS编辑/建设者抱怨,是否有可能说服这不是错误或警告?
答案 0 :(得分:1)
目前,我只能看到代码&#34;将按照其可能发生的顺序运行的3种情况:
scope="prototype"
或lazy-init="true"
定义的,并且根本不会访问java.sql.Date
实现
否则,Spring应该发布一个很好的:
Could not instantiate bean class [java.sql.Date]: No default constructor found; nested exception is java.lang.NoSuchMethodException: java.sql.Date.<init>()
答案 1 :(得分:0)
如果代码有效,但STS报告错误,请在https://issuetracker.springsource.com/browse/STS处针对STS提交错误(如上所述)。
与此同时,您可以通过项目的Spring首选项禁用验证来解决此问题。只需转到项目的偏好 - &gt; Spring,然后是“Project Validators”选项卡,并停用负责错误报告的验证。