1 /*** 2 * Copyright (c) 2003 held jointly by the individual authors. 3 * 4 * This library is free software; you can redistribute it and/or modify it 5 * under the terms of the GNU Lesser General Public License as published 6 * by the Free Software Foundation; either version 2.1 of the License, or 7 * (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, but 10 * WITHOUT ANY WARRANTY; with out even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public License 15 * along with this library; if not, write to the Free Software Foundation, 16 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. 17 * 18 * > http://www.gnu.org/copyleft/lesser.html 19 * > http://www.opensource.org/licenses/lgpl-license.php 20 */ 21 package net.mlw.vlh.web; 22 23 import java.io.IOException; 24 25 import javax.servlet.ServletContext; 26 import javax.servlet.ServletException; 27 import javax.servlet.http.HttpServletRequest; 28 import javax.servlet.http.HttpServletResponse; 29 30 import net.mlw.vlh.ValueList; 31 import net.mlw.vlh.ValueListHandler; 32 import net.mlw.vlh.ValueListInfo; 33 34 import org.apache.struts.tiles.ComponentContext; 35 import org.apache.struts.tiles.ControllerSupport; 36 import org.springframework.web.context.WebApplicationContext; 37 import org.springframework.web.context.support.WebApplicationContextUtils; 38 39 /*** 40 * @author Matthew L. Wilson 41 * @version $Revision: 1.4 $ $Date: 2004/12/13 20:32:35 $ 42 */ 43 public class ValueListHandlerTilesAction extends ControllerSupport 44 { 45 public static final String VALUE_LIST_NAME = "valueListName"; 46 public static final String VALUE_LIST_REQUEST_NAME = "valueListRequestName"; 47 48 /*** 49 * @see org.apache.struts.tiles.Controller#perform(org.apache.struts.tiles.ComponentContext, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.ServletContext) 50 */ 51 public void perform(ComponentContext componentContext, HttpServletRequest request, HttpServletResponse response, ServletContext servletContext) 52 throws ServletException, IOException 53 { 54 String name = (String) componentContext.getAttribute(VALUE_LIST_NAME); 55 String requestName = (String) componentContext.getAttribute(VALUE_LIST_REQUEST_NAME); 56 57 WebApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext); 58 ValueListHandler vlh = (ValueListHandler) context.getBean("valueListHandler", ValueListHandler.class); 59 60 ValueListInfo info = ValueListRequestUtil.buildValueListInfo(request); 61 ValueList valueList = vlh.getValueList(name, info); 62 63 request.setAttribute(requestName, valueList); 64 } 65 66 }