终于学到了Spring与Structs结合的第一种类型,即通过Action继承Spring的ActionSupport类,实现两者的融合。但是照着书上的一步步做,无法做出,输入一个提示语能够得到您输入的欢迎语是"欢迎使用HelloWorld" 的结果。
于是反复看,终于在HelloWorldAction.java发现了如下

package com.gc.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.springframework.context.ApplicationContext;
import org.springframework.web.struts.ActionSupport;

import com.gc.service.HelloWorldService;

public class HelloWorldAction extends ActionSupport {
	private Logger logger=Logger.getLogger(this.getClass().getName());
	public ActionForward execute(ActionMapping mapping,ActionForm form,
			HttpServletRequest req,HttpServletResponse res) throws Exception{
		ApplicationContext actx=getWebApplicationContext();
		HelloWorldService helloWorldService=(HelloWorldService)actx.getBean("helloWorldService");
		String msg=helloWorldService.addMsg((HelloWorld)form);
		req.setAttribute("helloWorld", msg);
		return mapping.findForward("show");
	}
}

如标识出的部分,又到HelloWorldServiceImpl.java中看
package com.gc.impl;

import com.gc.action.HelloWorld;
import com.gc.service.HelloWorldService;

public class HelloWorldServiceImpl implements HelloWorldService {

	public String addMsg(HelloWorld helloWorld) {
		// TODO Auto-generated method stub
		helloWorld.setMsg("欢迎使用SPRING"());
		return helloWorld.getMsg();
	}

}

发现从画面传来的msg被这儿给冲掉了,要想实现出前面的效果,需要如下修改
helloWorld.setMsg("欢迎使用SPRING"+helloWorld.getMsg());

又发现了这个书的一个错误。呵呵。
加油!
评论
发表评论

您还没有登录,请登录后发表评论

yunmanfan
搜索本博客
我的相册
最近加入圈子
存档
最新评论