/** Returns a string of the generated rules using data from the passed in object. */ protected String generateRules(Object objects) throws TaskException { // get filename if (parameters.get(PARAM_TEMPLATE_FILENAME.getName()) == null) { throw new TaskException( "No '" + PARAM_TEMPLATE_FILENAME.getName() + "' parameter specified."); } File templateFilename = new File(getAbsolutePath((String) parameters.get(PARAM_TEMPLATE_FILENAME.getName()))); // create a new engine (we need to set the file path) VelocityEngine velocityEngine = new VelocityEngine(); velocityEngine.setProperty( VelocityEngine.FILE_RESOURCE_LOADER_PATH, templateFilename.getParent()); try { velocityEngine.init(); } catch (Exception e) { LOG.error("Error initializing template engine."); throw new TaskException(e); } VelocityContext velocityContext = new VelocityContext(); // add parameters using reflection addParameters(velocityContext, objects); // generate rules and return StringWriter result = new StringWriter(); try { velocityEngine.mergeTemplate(templateFilename.getName(), velocityContext, result); } catch (Exception e) { LOG.error("Error generating rules."); throw new TaskException(e); } return result.toString(); }
@Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Map<String, Object> params = Maps.newHashMap(); params.put("stores", stores); velocityEngine.render("read-only-mgmt.vm", params, resp.getOutputStream()); }
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String storeName = request.getParameter("store"); String format = request.getParameter("format"); if ("json".equals(format)) { outputJSON(response); return; } else { response.setContentType("text/html"); long refreshTime = 600; String refresh = request.getParameter("refresh"); if (refresh != null) { try { refreshTime = Integer.parseInt(refresh); } catch (NumberFormatException e) { response.sendError(HttpServletResponse.SC_BAD_REQUEST); } } List<Store<ByteArray, byte[], byte[]>> stores = null; if (storeName == null) { stores = server.getStoreRepository().getAllLocalStores(); } else { stores = Collections.singletonList(server.getStoreRepository().getLocalStore(storeName)); } Map<String, Object> params = Maps.newHashMap(); params.put("status", abstractSocketService.getStatusManager()); params.put("counters", Tracked.values()); params.put("stores", stores); params.put("refresh", refreshTime); velocityEngine.render("status.vm", params, response.getOutputStream()); } }
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String qryDoc; String username; username = ""; PrintWriter out = response.getWriter(); request.setCharacterEncoding("GBK"); try { request.getSession().setMaxInactiveInterval(60000); username = request.getSession().getAttribute("USERNAME") != null ? request.getSession().getAttribute("USERNAME").toString() : ""; } // Misplaced declaration of an exception variable catch (Exception e) { e.printStackTrace(); } if (request.getPathInfo() == null) qryDoc = getServletConfig().getServletContext().getRealPath(request.getServletPath()); else qryDoc = request.getPathTranslated(); try { WebApp app = new WebApp(FunctionLib.openFile(qryDoc)); String path = getServletContext().getRealPath("/"); VelocityEngine ve = new VelocityEngine(); ve.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path); VelocityContext context = new VelocityContext(); BufferedOutputStream outb = null; InputStream in = null; String msg = null; ve.init(); ToNcEngine mainMod = new ToNcEngine(request, response, app, context, getServletConfig()); // 处理用户请求 Vector vsqls = app.getSqls(); if (app.getSqlType().equals("select")) { List ldata = null; for (int i = 0; i < vsqls.size(); i++) { ldata = new ArrayList(); ldata = mainMod.getData(vsqls.elementAt(i).toString(), app.getEscape()); context.put(vsqls.elementAt(i).toString(), ldata); } context.put("CGI_url", request.getRequestURL().toString()); } Template t = ve.getTemplate(app.getTemplate()); StringWriter sw = new StringWriter(); t.merge(context, sw); System.out.println("aaaaaaaa" + sw.toString()); // String url = "http://10.7.3.225:8080/service/XchangeServlet"; URL realURL = new URL(server); HttpURLConnection connection = (HttpURLConnection) realURL.openConnection(); connection.setDoOutput(true); connection.setRequestProperty("Content-type", "text/xml"); connection.setRequestMethod("POST"); outb = new BufferedOutputStream(connection.getOutputStream()); outb.write(sw.toString().getBytes()); outb.close(); in = new DataInputStream(connection.getInputStream()); byte[] b = new byte[in.available()]; in.read(b); msg = new String(b, "UTF-8"); // System.out.println("返回信息:"+msg); Document resDoc = DocumentHelper.parseText(msg); List resCode_list = resDoc.selectNodes("ufinterface/sendresult/resultcode"); List resDes_list = resDoc.selectNodes("ufinterface/sendresult/resultdescription"); // 从回执信息中获得错误信息详细描述 String invaliddoc_value = null; returnMsg.clear(); for (Object obj : resDes_list) { Element invaliddoc = (Element) obj; invaliddoc_value = invaliddoc.getText(); System.out.println("返回信息:" + invaliddoc_value); // 将回执信息赋值给静态变量returnMsg returnMsg.add(invaliddoc_value); } // 从回执信息中获取错误信息编号 List<String> resCodeList = new ArrayList<String>(); for (Object obj : resCode_list) { Element resCode = (Element) obj; String resCode_value = resCode.getText(); // System.out.println("失败信息:"+resCode_value); // 只有resCode编号为1时才是正常处理完毕,没有错误 if (!resCode_value.equals("1")) { resCodeList.add(resCode_value); } } if (resCodeList.size() == 0) { if (app.getUrl().equals("qbTonc")) { out.println("OK"); out.close(); } else { if (!app.getSuccessMsg().equals("")) invaliddoc_value = app.getSuccessMsg(); out.println("<html>\n"); out.println("<head>\n"); out.println( "<script type=\"text/javascript\" language=\"JavaScript\" src=\"../js/title.js\"></script>\n"); out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\n"); out.println("<script>"); out.println(FunctionLib.gbToIso("alert('" + invaliddoc_value + "')")); out.println("window.location='" + app.getUrl() + "'"); out.println("</script>"); out.println("</head>\n"); out.println(" </html>\n"); out.close(); } } else { if (!app.getFailMsg().equals("")) invaliddoc_value = app.getFailMsg(); out.println("<html>\n"); out.println("<head>\n"); out.println( "<script type=\"text/javascript\" language=\"JavaScript\" src=\"../js/title.js\"></script>\n"); out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\n"); out.println("<script>"); out.println(FunctionLib.gbToIso("alert('" + invaliddoc_value + "')")); out.println("window.history.go(-1);"); out.println("</script>"); out.println("</head>\n"); out.println(" </html>\n"); out.close(); } } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); out.println("<html>\n"); out.println("<head>\n"); out.println( "<script type=\"text/javascript\" language=\"JavaScript\" src=\"../js/title.js\"></script>\n"); out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\n"); out.println("<script>"); out.println(FunctionLib.gbToIso("alert('提取数据时出错!')")); out.println("</script>"); out.println("</head>\n"); out.println(" </html>\n"); out.close(); } }