struts의 설정파일을 서버 운영중에 재시작없이 다시 로드 하는 소스
package com.gimslab.util.servlet; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionServlet; import org.apache.struts.config.ModuleConfig; public class ActionServletForDev extends ActionServlet { protected void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String uri = request.getRequestURI(); if((uri.indexOf("reload.do") != (-1))){ init(); System.out.println("***************************** struts config reloaded *******************************"); ModuleConfig config = getModuleConfig(request); getRequestProcessor(config).init(this, config); RequestDispatcher dispatcher = request.getRequestDispatcher("/reload.jsp"); dispatcher.forward(request, response); } else{ super.process(request, response); } } }
web.xml 고치기
<servlet> <servlet-name>action</servlet-name> <!-- <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>--> <servlet-class>com.gimslab.util.servlet.ActionServletForDev</servlet-class> <init-param> ~~~~