xml的配置文件

<bean id="fftController" class="com.bill99.query.controller.FftController" abstract="true">
<property name="wxOrderService" ref="wxOrderService" /> 
</bean>

<bean id="wxFFanController1" class="com.bill99.query.controller.WXFFanController1" parent="fftController">
<property name="methodNameResolver">
<ref bean="paramResolver" />
</property>
<property name="wxOrderService" 
ref="wxOrderService" >
</property> /就是他们引起了。
<property name="fileProcessManage"> 
<ref bean="fileProcessManage" />
</property>
</bean>

2,

public abstract class FftController extends BaseController {

protected WxOrderService wxOrderService;

public void save(HttpServletRequest request, HttpServletResponse response) {
logger.info("save info begin...");
Map<String, Object> result = new HashMap<String, Object>();
try {
String wxOpenId = request.getParameter("wxOpenId");
String applyId = request.getParameter("applyId");
String wxModuleType = request.getParameter("wxModuleType");
//UploadFile1(request,response,applyId);

if (StringUtil.isEmpty(wxOpenId) || StringUtil.isEmpty(applyId) 
|| StringUtil.isEmpty(wxModuleType)) {
result.put("code", "001");
result.put("desc", "必填参数为空");
super.toJson(result, response);
return;
}
// 获取request里的所有参数,作为orderParam
String paramJson = packageOrderParam(request);
// 查询对象
WxOrder wxOrder = new WxOrder();
wxOrder.setWxOpenId("666");
wxOrder.setApplyId(applyId);
wxOrder.setWxModuleType("777");
// 查询是否已经存在 wxOrderService就是在这空了的
WxOrder query = wxOrderService.findWxOrderByModel(wxOrder);
if (null != query) {
wxOrder = query;
wxOrder.setOrderParam(paramJson);
wxOrder.setLastupDate(new Date());
wxOrderService.updateWxOrder(wxOrder);
} else {
wxOrder.setOrderParam(paramJson);
wxOrder.setCreateDate(new Date());
wxOrder.setLastupDate(new Date());
wxOrderService.createWxOrder(wxOrder);
}

result.put("code", "000");
result.put("desc", "success");
super.toJson(result, response);
return;
} catch (Exception e) {
logger.error("", e);
result.put("code", "099");
result.put("desc", "系统异常");
super.toJson(result, response);
return;
}

}

3.

public class WXFFanController1 extends FftController {
protected WxOrderService wxOrderService;/就是他们引起的。

public void setWxOrderService(WxOrderService wxOrderService) {
this.wxOrderService = wxOrderService;
}

产生,为空的原因主要是因为父类中已经注入了,而在子类中又注入了一遍,产生空了。解决方案就是把子类的删除掉,子类可以直接用wxOrderService。不需要重新注入的。

<bean id="wxFFanController1" class="com.bill99.query.controller.WXFFanController1" parent="fftController">
<property name="methodNameResolver">
<ref bean="paramResolver" />
</property>
<property name="fileProcessManage">
<ref bean="fileProcessManage" />
</property>
</bean>

public class WXFFanController1 extends FftController {

}

最新文章

  1. 多光谱图像数据库, Multispectral images databses
  2. c#中文件与二进制流文件的转换
  3. LUA学习笔记三&#183;时间等操作系统库
  4. 移植ok6410
  5. jquery-弹窗:layer
  6. bzoj1978
  7. 创建Material Design风格Android应用--自定义阴影和裁剪视图
  8. LinQ—扩展方法
  9. 电商Banner设计背后的12个人性的秘密
  10. panda库2
  11. CSS中新属性calc()
  12. Msys+MinGW编译VLC
  13. 保护模式.vbs
  14. ThreadLocal的使用场景及实现原理
  15. 8 -- 深入使用Spring -- 3...2 ResouceLoader 接口和 ResourceLoaderAware 接口
  16. CentOS7 firewall防火墙配置笔记
  17. Mysql数据库一:安装与创建windows服务
  18. 【转】 Android应用内多进程分析和研究
  19. 人生的第一篇blog
  20. Struts2的默认拦截器执行顺序

热门文章

  1. JS 特殊字符的验证的问题
  2. 在ConcurrentModificationException异常上的联想
  3. 计算机基础之Windows10操作系统安装U盘制作
  4. 【JavaWeb】c3p0连接池与MySQL
  5. 像我这样优雅地进行Spring整合MongoDB
  6. eslint 入门项目搭建过程
  7. Javascript获取数组中最大和最小值
  8. 拥抱.NET Core系列:MemoryCache 缓存过期
  9. [翻译]编写高性能 .NET 代码 第二章:垃圾回收
  10. MySQL的InnoDB引擎与MyISAM引擎