1 /***
2 * @(#)ServiceLoaderServlet.java
3 *
4 * JFoxSOAF, Service-Oriented Application Framework
5 *
6 * Copyright(c) JFoxSOAF Team
7 *
8 * Licensed under the GNU LGPL, Version 2.1 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
11 *
12 * http://www.gnu.org/copyleft/lesser.html
13 *
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 *
20 * For more information, please visit:
21 * http://www.jfox.cn/confluence/display/JFoxSOAF/Home
22 * http://www.huihoo.org/jfox/jfoxsoaf
23 */
24
25 package org.huihoo.jfox.soaf.util.web;
26
27 import java.io.IOException;
28
29 import javax.servlet.ServletContext;
30 import javax.servlet.ServletException;
31 import javax.servlet.http.HttpServlet;
32 import javax.servlet.http.HttpServletRequest;
33 import javax.servlet.http.HttpServletResponse;
34 import org.apache.commons.logging.Log;
35 import org.apache.commons.logging.LogFactory;
36 import java.io.InputStream;
37
38 import org.huihoo.jfox.soaf.container.ServiceLoader;
39
40 /***
41 * <p>
42 * Service loader initialization servlet.
43 * </p>
44 *
45 * @author <a href="mailto:founder_chen@yahoo.com.cn">Peter Cheng </a>
46 * @version $Revision: 1.3 $ $Date: 2006/02/15 08:45:46 $
47 * @version Revision: 1.0
48 */
49
50 public class ServiceLoaderServlet extends HttpServlet {
51
52 public static final String WEB_CONFIG = "config";
53
54 private ServletContext servletContext;
55
56 private ServiceLoader serviceLoader = ServiceLoader.getInstance();
57
58 private final Log logger = LogFactory.getLog(getClass());
59
60 /***
61 * Initialize the service context.
62 */
63 public void init() throws ServletException {
64 servletContext = getServletContext();
65 String webConfig = this.getInitParameter(WEB_CONFIG);
66 logger.info("Load service config " + webConfig);
67 InputStream is = servletContext.getResourceAsStream(webConfig);
68 serviceLoader.initService(is);
69 }
70
71 /***
72 * Http request should never be send to this servlet.
73 */
74 public void service(HttpServletRequest request, HttpServletResponse response)
75 throws IOException {
76 }
77
78 /***
79 * Destory services.
80 */
81 public void destroy() {
82 }
83
84 }