String fileDownloadPath =
AAAResourceReader.in.getSafeString
("ReportQueue.queue.FUND_SELECTION_REPORT.REQUEST_URL");
PrintInfo printInfo =
(PrintInfo) session.getAttribute(RRRRWebKeys.RRRR_PRINT_INFO_WRAPPER);
session.setAttribute(RRRRWebKeys.RRRR_PRINT_INFO_WRAPPER, null);
String username = printInfo.username;
String password = printInfo.password;
String token = printInfo.token;
String queueCategory = printInfo.queueCategory;
URL url = new URL(fileDownloadPath);
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
// 131018 - START
connection.setRequestProperty("accept-charset", "UTF-8");
connection.setRequestProperty("content-type", "application/x-www-form-urlencoded; charset=utf-8");
inputXmlEnRequest = FieldUtil.encodeBytesMS950(inputXmlEnRequest);
inputXmlEnRequest = URLEncoder.encode(inputXmlEnRequest,"UTF-8");
inputXmlZhRequest = FieldUtil.encodeBytesMS950(inputXmlZhRequest);
inputXmlZhRequest = URLEncoder.encode(inputXmlZhRequest,"UTF-8");
// 131018 - START
PrintWriter outStream = new PrintWriter(connection.getOutputStream());
outStream.print("username=" + username);
outStream.print("&password=" + password);
outStream.print("&xml=" + inputXmlEnRequest.replaceAll("%", "%25").replaceAll("&", "%26"));
outStream.print("&zhxml=" + inputXmlZhRequest.replaceAll("%", "%25").replaceAll("&", "%26")); // 131018
outStream.print("&source=" + PrintInfo.SOURCE_WEB);
outStream.print("&token=" + token);
outStream.print("&queue_category=" + queueCategory);
outStream.print("&agent_code=" + agentCode);
outStream.print("&report_name=" + reportName);
outStream.close();
InputStream in = connection.getInputStream();
if (!checkIsIPad(request)) {
response.setContentType("application");
response.setHeader("Content-disposition", "attachment; filename=" + reportName);
} else {
setIpadContentType(response, "application", reportName);
}
ServletOutputStream ostream = response.getOutputStream();
//response.setContentLength(in.available());
copyFile(in, ostream);
response.flushBuffer();
Logger.logStat(Logger.endAction(session.getId()) + request.getParameter("action"));
} catch (Exception e) {
// *** if the username and password is invalid or any other exception throw in file server. ***
Logger.logError("RRRR_aw223_fund_selection_report_print.jsp: " + e.getCause());
response.setContentType("text/plain");
if (!checkIsIPad(request)) {
response.setHeader("Content-disposition", "attachment; filename=Error.txt");
}
out.print("The file server is temporarily unavailable, please try again later.");
}
-------------
public static void copyFile(InputStream in, OutputStream out) throws IOException {
try {
byte[] buf = new byte[4096];
int i = 0;
while ((i = in.read(buf)) != -1) {
out.write(buf, 0, i);
}
} catch (IOException e) {
Logger.logError("RRRR_aw223_fund_selection_report_print.jsp: " + e.getCause());
throw e;
} finally {
try {
in.close();
out.flush();
out.close();
} catch (IOException e) {
Logger.logError("RRRR_aw223_fund_selection_report_print.jsp: " + e.getCause());
}
}
}
_______________________________________
public String handle(HttpServletRequest req, String actionRequest, String previousPage
, ExceptionInfoHolder holder) {
try{
StringBuffer sb = new StringBuffer();
HttpSession session = req.getSession();
ppppppppEditView ppppppppEditView = (ppppppppEditView) session.getAttribute(
ppppppppWebKeys.pppppppp_EDIT_VIEW);
AgentView agentView = (AgentView) session.getAttribute(AimWebKeys.AIM_AGENT_VIEW);
IndppppppppHK ip = ppppppppEditView.getIndppppppppHK();
if (ppppppppPrintServer.ppppppppEmailPath == null) {
ppppppppPrintServer.ppppppppEmailPath = aaaResourceReader.in.getSafeString("ppppppppEmail.path");
}
String urlString = ppppppppPrintServer.ppppppppEmailPath;
Integer queueStatus = (Integer) session.getAttribute(ppppppppWebKeys.pppppppp_PRINT_QUEUE_STATUS);
Logger.logAppDebug("queueStatus:[" + queueStatus + "]");
if (queueStatus != null && queueStatus.intValue() == PrintppppppppQueue.PRINT_NOW) {
GenericResourceReader printQueueResourceReader = new GenericResourceReader("aaappppppppPrintQueue_en_HK");
urlString = printQueueResourceReader.getSafeString("pppppppp_PRINT_QUEUE_NOW_URL");
}
URL url = new URL(urlString);
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
PrintInfoWrapper pw = (PrintInfoWrapper)session.getAttribute(ppppppppWebKeys.pppppppp_PRINT_INFO_WRAPPER);
session.setAttribute(ppppppppWebKeys.pppppppp_PRINT_INFO_WRAPPER, null);
String username = pw.username;
String password = pw.password;
String actionType = pw.actionType;
String queueCategory = pw.queueCategory;
String from = pw.from;
String to = pw.to;
String subject = pw.subject;
String message = pw.message;
//String xml = URLEncoder.encode(pw.xml);
//String propNr = pw.propNo;
String propNr = ip.getppppppppNoStr();
String agentCode = pw.agentCode;
String basicPlanCode = pw.basicPlanCode;
String pcid = pw.pcid;
String productAlias = pw.productAlias;
String printLangPeCode = pw.printLangPeCode;
String branchCode = pw.branchCode;
String location = pw.location;
String token = pw.token;
String propRefNo = pw.propRefNo;
// *** change big5 to ISO ***
//xml = (xml==null)?"":new String(xml.getBytes("BIG5"), "ISO8859_1") ;
String xml = FieldUtil.encodeBytesMS950HKCS(pw.xml); // 20111017
xml = URLEncoder.encode(xml);
PrintWriter outStream = new PrintWriter(
connection.getOutputStream());
outStream.print("username=" + username);
outStream.print("&password=" + password);
outStream.print("&source=" + PrintInfoWrapper.SOURCE_WEB);
outStream.print("&action_type=" + PrintInfoWrapper.EMAIL);
outStream.print("&token=" + token);
outStream.print("&queue_category=" + queueCategory);
outStream.print("&with_print=" + "Y");
outStream.print("&from=" + from);
outStream.print("&to=" + to);
outStream.print("&subject=" + subject);
outStream.print("&message=" + message);
outStream.print("&xml=" + xml);
outStream.print("&prop_no=" + propNr);
outStream.print("&agent_code=" + agentCode);
outStream.print("&basic_plan_code=" + basicPlanCode);
outStream.print("&pcid=" + pcid);
outStream.print("&product_alias=" + productAlias);
outStream.print("&print_lang_pe_code=" + printLangPeCode);
outStream.print("&branch_code=" + branchCode);
outStream.print("&location=" + location);
outStream.print("&prop_ref_no=" + propRefNo);
sb.append(urlString);
sb.append("username=" + username);
sb.append("&password=" + password);
sb.append("&source=" + PrintInfoWrapper.SOURCE_WEB);
sb.append("&action_type=" + PrintInfoWrapper.EMAIL);
sb.append("&token=" + token);
sb.append("&queue_category=" + queueCategory);
sb.append("&with_print=" + "Y");
sb.append("&from=" + from);
sb.append("&to=" + to);
sb.append("&subject=" + subject);
sb.append("&message=" + message);
sb.append("&xml=" + xml);
sb.append("&prop_no=" + propNr);
sb.append("&agent_code=" + agentCode);
sb.append("&basic_plan_code=" + basicPlanCode);
sb.append("&pcid=" + pcid);
sb.append("&product_alias=" + productAlias);
sb.append("&print_lang_pe_code=" + printLangPeCode);
sb.append("&branch_code=" + branchCode);
sb.append("&location=" + location);
sb.append("&prop_ref_no=" + propRefNo);
outStream.close();
Logger.logAppDebug(this, "Email URL: " + sb.toString());
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
boolean alive = false;
while((inputLine = in.readLine()) != null) {
if (inputLine.indexOf("OK") > -1) {
alive = true;
}
}
if (alive){
holder.add("E45354"); // success message
if ("Y".equalsIgnoreCase(req.getParameter(ppppppppPrintOptionPage.SENT_SMS))){
ppppppppPrintOptionPage ppppppppPrintOptionPage = (ppppppppPrintOptionPage) session.getAttribute(
ppppppppWebKeys.pppppppp_PRINT_OPTION_PAGE);
ppppppppPrintOptionPage.values.put(ppppppppPrintOptionPage.SENT_EMAIL_OK, "Y");
}
} else {
holder.add("E45353"); // Fail message
}
} catch (Exception e){
Logger.logAppDebug(this,"Exception for sending email: " + e.toString());
holder.add("E45353");
}
return previousPage;
}
相关推荐
纯前端生成二维码(并将Html转换成图片) 下载到本地,需要用到的四个JS文件 jquery.qrcode.min.js html2canvas.min.js canvas2image.js base64.js
FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序...
java 和jsp 生成的网站,纯html型的网站模板,有数据库可以用,解压后,java 的直接可以通过tomact跑,html的可以直接用,
视频格式是exe的,这个使用的是屏幕录像专家录像生成...本案例使用jsp+servlet+mysql实现图书商城,适合初学者使用,本教程一共分为六个视频完成所有的功能操作,大家需要下载六个视频,这个六个视频是完整的贯穿案例。
内容索引:JSP源码,论坛社区,JSP论坛程序 JSP简洁论坛生成HTML 是本人学习JSP的一个练习,界面简洁大方,速度极快,对百度和GOOGLE等搜索引擎友好,实现了大部分论坛功能,使用TOMCAT5.0+JDK1.4+SqlServer2000数据库...
因为JSP标签库,最终编译后还是生成了js的代码,有利于调试kendo ui的纯js页面。另外嘛,如果要求不高,可以直接使用JSP的标签tag,那样用起来更省事。 MyEclipse的工程,直接编译,配置个tomcat7,JDK7,可以运行了...
一个完整的纯JSP留言本系统Jbook源码,在tomcat6.0、7.0下均测试成功,请注意服务器的正确配置。采用纯粹的jsp页面实现,不涉及任何第三方类库、框架、组件,未使用javabean,没有引入jdk之外的其他类,界面原始、...
视频描述: (一) 用户登录系统框架改进 1.0 model1(纯jsp)开发模式的反思 1.1 model1(结合java class)开发模式 (二) 用户登录系统框架再改进 2.1 mvc开发模式 韩顺平 j2ee视频实战教程jsp第3讲(下集).wmv 视频描述: ...
3.2 生成纯文本的servlet 3.3 生成html的servlet 3.4 servlet的打包 3.5 简单的html构建工具 3.6 servlet的生命周期 3.7 singlethreadmodel接口 3.8 servlet的调试 第4章 客户请求的处理:表单数据 ...
而JSP作为页面开发技术,可以方便地生成动态的网页内容。 在项目中,Spring框架提供了依赖注入和面向切面编程的功能,可以提高代码的可维护性和可测试性。SpringMVC负责处理请求和响应,可以实现灵活的URL映射和请求...
JSPGenCMS内容管理系统是一款基于JSPGen3.0框架所开发的内容管理系统,集成了内容(审核)管理、节点管理、专题管理、推荐位管理、广告管理、调查问卷、网上留言、静态生成、内容检索等多项强大功能,采用模型-视图-...
这是一款纯js qq在线客服悬浮代码。该qq在线客服会一直悬浮在页面的右侧,跟随页面一起滚动。并且该qq在线客服带有二维码,兼容ie8浏览器,非常实用。
纯js二维码生成 需要导入3个js 文件 并修改文件路径,将txt中代码复制到jsp或html中
H5使用AppCan 生成app,调用手机摄像头识别二维码功能,纯页面js
html页面(默认 可扩展为jsp,vue组件,纯html或其他视图文件) js脚本 Controller.java后端控制层 Service.java 后端服务层 Mapper.java 后端dao层 mapper.xml 后端dao层xml model.java模型文件 使用技术如下: ...
FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序...
本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言...
本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言...
本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言...
本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言...