【问题标题】:how to resolve org.springframework.beans.NotWritablePropertyException如何解决 org.springframework.beans.NotWritablePropertyException
【发布时间】:2011-07-02 12:20:09
【问题描述】:

嗨,我正在使用 spring config.xml 来配置我的嵌入式数据库 hsqldb。我的弹簧配置如下:

<jdbc:embedded-database id="dataSource" type="HSQL">
    <jdbc:script location="classpath:schema.sql" />

</jdbc:embedded-database>
<bean id="adapterDataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">
    <property name="datasource" ref="dataSource"></property>
    <property name="driverClassName" value="org.hsqldb.jdbcDriver" />
    <property name="url" value="jdbc:hsqldb:file:data/db/lmexadapter_db" />
    <property name="username" value="sa" />
    <property name="password" value="" />
</bean>

当运行我在 spring config.xml 上面使用的应用程序时,它给了我一个异常,如下所示:

org.springframework.beans.NotWritablePropertyException:bean 类 [org.apache.commons.dbcp.BasicDataSource] 的属性“数据源”无效:Bean 属性“数据源”不可写或设置方法无效。 setter的参数类型和getter的返回类型是否匹配?

请尽快帮助解决这个问题

谢谢

【问题讨论】:

    标签: spring hsqldb


    【解决方案1】:

    问题在于 org.apache.commons.dbcp.BasicDataSource 没有“setDatasource”方法。但是,它确实有一个受保护的字段“数据源”,您可以通过子类化和提供 setter 来公开它。

    【讨论】:

    • 我已经通过使用 bean 的依赖属性解决了上述问题,现在我遇到了用户未找到“SA”的问题,我该如何解决这个问题
    猜你喜欢
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    • 2018-06-01
    • 1970-01-01
    相关资源
    最近更新 更多