请教:spring配置文件

SuperMicrosoft 2006-03-28 01:58:31
我使用的是Struts+Spring+Hibernate框架,为什么我设置完spring配置文件后,报错如下:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'KY_TORINUKE_TGTarget' defined in ServletContext resource [/WEB-INF/classes/applicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'KY_TORINUKE_TGDAO' of bean class [co.hitachi.zaim.service.impl.TORINUKEServiceImpl]: Bean property 'KY_TORINUKE_TGDAO' is not writable or has an invalid setter method: Does the parameter type of the setter match the return type of the getter?
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1032)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:824)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:345)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:275)
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:320)
org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:134)
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
org.springframework.web.context.ContextLoaderServlet.init(ContextLoaderServlet.java:83)
javax.servlet.GenericServlet.init(GenericServlet.java:211)
org.apache.catalina.startup.Catalina.start(Catalina.java:556)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:324)
org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)

...全文
200 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
abcwzl 2006-03-30
  • 打赏
  • 举报
回复
TORINUKEServiceImpl里要有..getKY_TORINUKE_TGDAO 与setKY....
什么乱乱的,,name不能大写..

TORINUKEServiceImpl">
<property name="KY_TORINUKE_TGDAO



SuperMicrosoft 2006-03-29
  • 打赏
  • 举报
回复
谢谢各位,虽然以上的问题我还没有试成功,但是我用Myeclipse重新打了一次环境,这个问题没有了,但是又出了新问题,摆脱各位在给咱看看!万分感谢
http://community.csdn.net/Expert/topic/4648/4648490.xml?temp=.1190454
echo123321 2006-03-29
  • 打赏
  • 举报
回复
set方法可能没有写或者写的部队,是在实现的地方加set方法,你可以断点跟踪一下,看看是否走过去了
Little_qd 2006-03-28
  • 打赏
  • 举报
回复
<bean id="torinukeTarget" class="co.hitachi.zaim.service.impl.TORINUKEServiceImpl">
<property name="KY_TORINUKE_TGDAO" ref="torinukeDAO"/>
</bean>
[co.hitachi.zaim.service.impl.TORINUKEServiceImpl]: Bean property 'KY_TORINUKE_TGDAO' is not writable or has an invalid setter method

配置文件中声明的property name应与类中的变量name对应,并有对应的setter方法
SuperMicrosoft 2006-03-28
  • 打赏
  • 举报
回复
初学技术,问题好多!谢谢指点,但还是不太明白,是说在Dao中也要加Set方法么?
kill8108 2006-03-28
  • 打赏
  • 举报
回复
刚接触不久,看了错误码文件,就该是你的类中get/set方法有误了,
<bean id="myDao" ....>
setMyDao()
getMyDao()
感觉是这里有问题吧||对某一些DAO中的属性问题的了!
望大家指点!
SuperMicrosoft 2006-03-28
  • 打赏
  • 举报
回复
Spring 中TORINUKEService.java
package co.hitachi.zaim.service;
public interface TORINUKEService {
public Object getTorinukes(String nendo);
}

Spring 中TORINUKEServiceImpl.java
package co.hitachi.zaim.service.impl;
public class TORINUKEServiceImpl extends BaseManager implements TORINUKEService {
private IKyTorinuke dao;

public Object getTorinukes(String nendo) {
return dao.getTorinuke(nendo);
}

public void setTorinukes(IKyTorinuke KY_TORINUKE_TGDao) {
this.dao = KY_TORINUKE_TGDao;
}
}
那里不对呀?谢谢各位帮忙了!
SuperMicrosoft 2006-03-28
  • 打赏
  • 举报
回复
Hibernate中IKyTorinuke.java
package co.hitachi.zaim.dao;
public interface IKyTorinuke extends DAO {
public Object getTorinuke(String nendo);
}


Hibernate中KyTorinukesDAO.java
package co.hitachi.zaim.dao.hibernate;
public class KyTorinukesDAO extends BaseDAOHibernate implements IKyTorinuke {
public Object getTorinuke(String nendo) {
List result = getHibernateTemplate().find("from table1 order by id");
if (result != null && result.size() > 0) {
return result.get(0);
} else {
return null;
}
}
}
SuperMicrosoft 2006-03-28
  • 打赏
  • 举报
回复
设置文件applicationContext.xml是这样的
<bean id="hibernateInterceptor" class="org.springframework.orm.hibernate3.HibernateInterceptor">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>

<bean id="myTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>

<bean id="torinukeDAOTarget" class="co.hitachi.zaim.dao.hibernate.KyTorinukesDAO">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>

<bean id="torinukeDAO" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<value>co.hitachi.zaim.dao.IKyTorinuke</value>
</property>
<property name="interceptorNames">
<list>
<value>hibernateInterceptor</value>
<value>torinukeDAOTarget</value>
</list>
</property>
</bean>

<bean id="torinukeTarget" class="co.hitachi.zaim.service.impl.TORINUKEServiceImpl">
<property name="KY_TORINUKE_TGDAO" ref="torinukeDAO"/>
</bean>

<bean id="viewManager" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="myTransactionManager"/>
</property>
<property name="target">
<ref bean="torinukeTarget"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="get*">PROPAGATION_SUPPORTS</prop>
</props>
</property>
</bean>
logo 设计不会,就这样先凑合了写道 Fuseblog预备开发带在线SHOP功能的个人博客系统.仿照Appfuse 提供一个完全自动化的ant构建脚本.在线SHOP的数据库建模图例已经 在博客中贴出.感兴趣的和我一起搭建,嘻嘻 文档博客地址: http://forum.sinomagazine.com 开发环境: Jcreator-4.5 JDK-1.5 Ant-1.6.1 MYSQL-5 Tomcat-5.5 Spring-2.5.6 Ibatis-2.3.4 问题事项: 1.在windows系统中,命令行中执行ant命令时,当指定的 构建脚本文件中包含中文字符,而构建脚本文件的编码是UTF-8时将会 Invalid byte 1 of 1-byte UTF-8 sequence. 的错误.这个问题尚未 知解决,故先采用GBK的编码. 2.在Jcreator中创建的项目,不支持UTF-8编码,缺省GBK. 以下先列出初步的的ant构建文件的代码: build.xml 配置文件实例详解 build.xml 代码 xml version="1.0" encoding="UTF-8"?> < project name= "tax-calculator" default= "package" > < property name= "src.dir" location= "src" / > ... by article2008 2008-07-30 回复 (0) 代码备份build.xml

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧