反射类中的Spring属性注入无效,高分求大神

wanjianfei 2012-02-13 07:26:56
场景描述:

现在有A类

public class AutoDealUtil extends DaoImpl{
private IF0000Svr f0000Svr;
public void setF000Svr(IF0000Svr f0000Svr)
{
this.f0000Svr = f0000Svr;
}

private void autoMethod(String sdo)
{
f0000Svr.test(sdo);
}
}

属性f0000Svr通过spring配置文件注入,配置文件略去;

现在我的业务类通过反射方式调用AutoDealUtil 类中的autoMethod方法

Class[] ca = new Class[1];
ca[0] = sdo.getClass();
Object[] objects = new Object[1];
objects[0] = sdo;
/** 自动配置方法调用 **/
String retStr = (String) method.invoke(AutoDealUtil , objects);



此时方法调用到了,但是提示AutoDealUtil 类中的f0000Svr空指针异常,spring中的注入没有起作用,求大神帮忙,这种业务场景改如何注入?
...全文
384 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
咱家少爷 2014-08-14
  • 打赏
  • 举报
回复
嘿嘿,我也遇到这个问题了,刚开始也很郁闷呢,最好找了我们的架构师,解决了,比如method.invoke(AutoDealUtil , objects); 里面的method必须是接口的实现类的方法,不是接口的方法,而且AutoDealUtil 必须是从spring容器里面拿个,千万不能new.你new就相当于和spring没有任何关系了
路遥知码农 2021-07-17
  • 举报
回复
@咱家少爷 不行
咱家少爷 2014-08-12
  • 打赏
  • 举报
回复
我也遇到这个问题了,在反射的方法中需要其他的bean就没有注入,好像,反射方法时,就没有使用spring一样。怎么解决呢
wanjianfei 2012-02-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 healer_kx 的回复:]

,,, ,,,把XML贴出来。。。
[/Quote]
xml现在没在电脑上,这个注入应该没问题,因为通一个工程里的其他类也有调用这个都没问题,就是因为这个类的方法是通过反射执行的,我怀疑是不是反射初始化这个类使这个类的spring管控失效了
tanrenzong1986 2012-02-13
  • 打赏
  • 举报
回复
应该是配置文件中进行构造器注入的时候注入失败,建议用set注入替换构造器注入。
wanjianfei 2012-02-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 gudong2945 的回复:]

有这么问问题的吗?
你贴得代码ca数组有个毛用啊?
sdo又是吗玩意?
看懂成神了!
[/Quote]
sdo就是个参数,自定义的,现在这个反射的类已经可以访问,只是方法里面引用了一个全局变量是通过反射注入的,这个注入貌似不起作用,不知道是不是反射导致的注入失效
wanjianfei 2012-02-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zuxianghuang 的回复:]

spring注入一般不会有问题,你的spring容器启动了没
[/Quote]
启动了,因为是在web启动之后运行的程序,其他程序中的注入可用
healer_kx 2012-02-13
  • 打赏
  • 举报
回复
,,, ,,,把XML贴出来。。。
xyz0101123132 2012-02-13
  • 打赏
  • 举报
回复
有这么问问题的吗?
你贴得代码ca数组有个毛用啊?
sdo又是吗玩意?
看懂成神了!
zuxianghuang 2012-02-13
  • 打赏
  • 举报
回复
spring注入一般不会有问题,你的spring容器启动了没
wanjianfei 2012-02-13
  • 打赏
  • 举报
回复
高分求大神,棘手啊

67,515

社区成员

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

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