public class WebOfficeAction extends AuthenticAction {
/**
* 附件在线编辑
*/
protected ActionForward doService(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// 获取所在区域ID
String catalogId = request.getParameter("catalogId");
// 获取文档ID
String docId = request.getParameter("docId");
// 获取附件ID
String aid = request.getParameter("aid");
// 校验是否有权限编辑 只有文控员和应用管理员有权限
if (!GenericValidator.isBlankOrNull(catalogId)) {
boolean permission = UserPermHandler.getInstance().hasPermission(
request, catalogId, UserPermHandler.INFO_BPA_CONTROLLER);
if (!permission) {
return mapping.findForward("applyperm");
}
}
if (!GenericValidator.isBlankOrNull(docId)
&& !GenericValidator.isBlankOrNull(aid)) {
try {
DocHandler docHandler = new DocHandler();
// 获取附件信息
AttachmentVO attachment = (AttachmentVO) docHandler
.getAttachment(Integer.parseInt(docId), Integer
.parseInt(aid));
// 从配置文件读取文件的存放路径
String dir = DAOService.getPatterConfigValue("file_document",
"upload_dir");
String uploadPath = dir + File.separator
+ attachment.getImageUrl() + File.separator
+ attachment.getOverview();
// 校验附件是否存在
File file = new File(uploadPath);
if (!file.exists() || !file.isFile()) {
return mapping.findForward("sourceNotFound");
}
String flag = request.getParameter("flag");
// 初始化附件编辑页面
if (!GenericValidator.isBlankOrNull(flag)
&& DocumentConstants.WEB_OFFICE_PAGE_INIT_FLAG
.equals(flag)) {
this.initOnlineEdit(request, response, attachment,
uploadPath);
return null;
}
// 编辑后上传处理
if (!GenericValidator.isBlankOrNull(flag)
&& DocumentConstants.WEB_OFFICE_FILE_SAVE_FLAG
.equals(flag)) {
int res = this.uploadAttachment(request, response,
attachment, dir);
// 返回服务端处理信息
PrintWriter writer = response.getWriter();
String msg = null;
if (res > 0) {
msg = "succeed";
// 记录日志
BPAHandler handler = new BPAHandler();
String reviewLog = "Edit Attachments:"
+ this.getLoginUser(request).getName() + "<br>";
handler.updateDocument(Integer.parseInt(docId),
reviewLog);
} else {
msg = "failed";
}
writer.write(msg);
return null;
}
// 附件名
String fileName = attachment.getOverview();
fileName = fileName.substring(0, fileName.indexOf("."));
request.setAttribute("docId", docId);
request.setAttribute("aid", aid);
request.setAttribute("attachmentName", fileName);
request.setAttribute("attachmentType", attachment.getResType());
} catch (ApplicationException e) {
return mapping.findForward("failure");
} catch (Exception e) {
return mapping.findForward("failure");
}
}
return mapping.findForward("toDealPage");
}
分享到:
相关推荐
综上所述,WebOffice 是一款基于 ASP.NET 开发的在线文档处理系统,它提供了一种在网页上处理文档的解决方案,涵盖了创建、编辑和协作等多方面的需求。通过 ASP.NET 技术,WebOffice 可以轻松地与各种服务器环境集成...
2. Web开发框架:为了快速构建用户界面和处理HTTP请求,开发者可能会选择如Spring Boot、Django或Express等Web框架。这些框架提供了丰富的功能,简化了开发过程。 3. 前端技术:系统前端通常使用HTML、CSS和...
综上所述,这份开发文档为开发者提供了全面的IE开发指南,不仅覆盖了Web标准支持的各个方面,还特别强调了一些实际操作中的注意事项,对于希望深入了解IE浏览器及其开发细节的开发者来说是一份宝贵的资源。
Office 365 Devguide是一份详尽的开发文档,主要内容集中在SharePoint Online开发上。文档为读者提供了一系列关于如何使用Office 365平台进行开发的指导和示例,特别是侧重于Microsoft Graph、Office Add-ins、...
- 使用Visual Studio、Visual Studio Code等开发工具,配合Office开发模板,可以简化开发过程。 - 部署完成后,Add-ins可以在Office Online、桌面版Office甚至移动设备上的Office应用中使用。 4. **实际应用**: ...
这个框架的主要目的是为开发者提供一系列的技术文档和示例,以帮助他们理解和应用微软的各种开发技术。原本,这个框架可能只支持在OFFICE 2007环境下打开,但为了方便更多用户,已经转换为可以在其他平台上访问的...
在这个项目中,EF CodeFirst与MySql结合,使得开发者可以方便地从MySQL数据库中获取数据,并用于生成Excel文档。 3. **NOPI**: NPOI是一个.NET平台上的开源库,用于读写Microsoft Office格式的文件,包括Excel。...
标题中的"System-source-code-.rar_BtRemoteControl.jar_股票 java_股票交易系统_自动交易"揭示了这个压缩包包含的是一系列与IT相关的源代码,特别是与股票交易系统和自动交易有关的Java应用程序。其中,...
� 暂不具备 Push Mail 和 Office(DataViz 、 QuickOffice 计划近期推出 ) 功能,目前主要面向的是普通消费 者 用户,对商业用户支持尚弱。 Android Android Android Android 带来的影响 ANDROID 的推出后可能影响的...
Visual Studio Code(简称VSCode)是由微软公司推出的一款免费、开源的跨平台代码编辑器,适用于编写现代Web和云应用的开发。VSCode以其经典的VS界面布局、强大的功能和良好的扩展性受到开发者的青睐。为了方便中文...
VSCode不仅支持主流的Web开发语言,还通过扩展支持各种其他语言。对于JavaScript和TypeScript,它提供了智能代码补全、语法高亮、错误检查等功能。对于JSON,它提供格式化和验证工具。对于HTML和CSS,它能帮助用户...
Microsoft Office 2000 Web Components(简称OWC)是一组强大的控件,允许开发者在网页上嵌入Office应用程序的功能,比如Excel图表、Word文档、PowerPoint幻灯片等。这些组件使得用户无需安装完整的Office套件,也能...
在Web OA(Office Automation)开发过程中,涉及到许多关键技术和策略,以下是一些具体的实践经验: 1. **域的权限控制**: - 对于文本域,可以通过HTML的`ReadOnly`属性来实现只读控制。例如,可以使用Lotus ...
7. **Web应用集成**:PageOffice可以方便地集成到Web应用程序中,用户可以在浏览器中直接编辑、预览和保存Office文档,无需下载和安装额外的插件。 8. **打印服务**:通过PageOffice,开发者可以实现文档的远程打印...
而PageOffice则是一款强大的Java组件,能够无缝嵌入Web应用,提供在线编辑、创建和预览Office文档的能力。 首先,我们需要在SpringBoot项目中引入PageOffice的依赖。这通常通过在`pom.xml`文件中添加对应的Maven...
- Silverlight 在 Web 开发中的应用 - 服务端与客户端通信 - AJAX 支持 - 客户端脚本与 HTML5 **章节21:使用 ASP.NET** - **知识点**: - ASP.NET 平台概览 - Web Forms 与 MVC 比较 - 页面生命周期 - ...