UDN-企业互联网技术人气社区

板块导航

浏览  : 4034
回复  : 11

[分析云] NC维护云平台--不仅限于补丁管理的平台-5x网上报销核心技术

[复制链接]
ghostf的头像 楼主
发表于 2015-9-29 21:55:15 | 显示全部楼层 |阅读模式
大家好
NC维护云平台推出已经有一段时间了,感谢大家的支持,你们的支持是我们强大的动力

与此同时也想告诉大家,NC维护云平台不仅仅是一个补丁管理的平台,随着平台的完善,必将成为整个NC运维体系中包含各个环节的强大生态系统,这里集结了众多的运维高手,有开发,测试,顾问,各行业专家,客户等。
其中很重要的一个环节,我们可以在此与众多同仁分享经验。

同时借助于UDN这个强大的开放企业互联网社交平台,NC维护云平台+UDN,整个NC运维体系已经走向了互联网时代。

目前总部维护项目中6x居多,但是我们知道,NC很大一部分客户用的还是5x,而且5x也已经恢复结算

我这里呢针对5x的轻量级平台做了一个技术总结,对框架涉及的核心功能逻辑做了流程介绍

做过5x轻量级开发的同事应该很清楚,5x的有效的资料非常少,传来传去就是几个那几个word,可以咨询的人也很少,毕竟大家现在研究的都是6,很多老研发同事都离职了,这里总结的一些资料都是经验之谈,实际运维总结,依次研究会更容易上手。平时不太喜欢写blog,比较杂乱(以网上报销为例)


调试工具:
web开发一定离不开更重调试工具,首先大家想到的一定是firedebug,可惜5x轻量级只支持IE8,所以这里推荐IE8eclipse中web编辑工具,这里推荐两款,myeclipse8.x和spket,更高版本的eclipse可能需要使用更高版本的me,
     Myeclipse8.x(eclipse3.5X)
     Spket
     IE8

框架组织结构(lfw技术红皮书5.x.doc)
     关于lfw结构介绍,大家读红皮书就好,说得比较详细,多读几遍慢慢体会各个逻辑含义,比较难懂得估计就是各类pagemeta的生成,dataset的生成,结构,这些都需自己体会,说是说不明白的。



两个缓存地址domain,work
     5x轻量级平台的工程,uapweb,yer网上报销
两个缓存地址,这个很多人都不知道,一般用开发环境调试程序缓存在nchome的work下,而直接用nchome起环境web缓存会在
nchome的domain,这个了解一下就好了


两种页面来源(pagemeta生成)
     配置型
     模板型

web产品单据的来源无非就两种,一种是配置型,一种是模板类型,配置型来源各类xml文件解析后生成页面元素及相关逻辑,模板型则是以
NC单据模板为页面来源。具体模板解析的流程及pagemeta的生成过程可见附件中的流程图,流程图中描述的核心的环节,依据此流程图再读
源码,可定事半功倍


轻量级平台中的AJAX
ajax调用的核心处理逻辑-- Ajax.js
     对form的封装
     解析xml返回结果


两类ajax请求
     非dataset操作--Command.js
     dataset操作 --  DatasetSaver.js


实例讲解:
     登陆操作对form提交的封装
     登陆界面公司参照字段ajax调用回查名称



web报销中的提交就两种,1,表单提交,2,ajax提交,表单提交没什么好讲的,主要是ajax提交

核心处理逻辑在ajax.js中,除了使用后面降到的JSON-RPC框架外,lFW也封装了自己的ajax调用框架
如果不涉及到页面数据集和dataset的操作在使用command.js中封装的普通调用逻辑
设计到dataset的操作则封装在datasetsaver中
这里列举了两个示例并提供了简单调用流程图,见附件


轻量级平台lfw  ajax框架JSON-RPC
      JSON-RPC是一个用Java来实现动态JSON-RPC的框架。利用它内置的一
个轻量级JSON-RPC JavaScript客户端,可以透明地在客户端JavaScript
中调用服务器端的Java代码。JSON-RPC可运行在Servlet容器中,如
Tomcat,也可以运行在JBoss与其他Java EE应用服务器中。因此可以在
一个基于JavaScript与DHTML的Web应用程序中利用它来直接调用普
通Java方法与EJB方法。



JSON-RPC在LFW平台中适配过程:依据如下逻辑去阅读源码,相信会更容易明白js中的getservice是什么原理


1,在jsp中导入jsonrpc.js
2,导入jsonrpc.jar包
3,配置servlet
4,在要使用JSON-RPC的JSP文件中将要是用的类注册到JSONRPCBridge对象中
5,在JavaScript脚本中创建一个JSONRpcClient对象
6,通过jsonrpc.JsonRpcTest.java方法()方式调用
7,PageModeTag.java
   addJsonSupport()注册类
   addJsonHead()创建js对象JSONRpcClient
8,LfwCoreController.java拦截请求
9,JsonHelper帮助类
   提供json响应(JSONRPCServlet)
   注册服务(JSONRPCBridge)
10 使用通过getService(“注册的服务名”).java方法
        方法在PageUtil.js中定义。常用的服务名有两个



附件说明
   1,菜单命令xml文件解析过程.vsd
   2,参照输入code后ajax查询的流程.vsd
   3,成功登陆的ajax请求流程.vsd
   4,模板型单据pagemeta菜单绑定具体js脚本流程.vsd
   5,模板型单据生成pagemeta流程.vsd
   6,配置型单据生成pagemeta流程.vsd
   7,json-rpc.zip(写的一个简单json-rpc程序
   8,js压缩解压工具




5x轻量级网上报销.zip

1.01 MB, 下载次数: 20

相关帖子

发表于 2015-9-30 08:08:26 | 显示全部楼层
使用道具 举报

回复

发表于 2015-10-9 15:02:56 | 显示全部楼层
好帖
使用道具 举报

回复

发表于 2015-10-9 15:05:51 | 显示全部楼层
重新给楼主排了个版,有木有焕然一新的感脚,哈哈
使用道具 举报

回复

ghostf的头像 楼主
发表于 2015-10-9 16:00:54 | 显示全部楼层
benbenxiong 发表于 2015-10-9 15:05
重新给楼主排了个版,有木有焕然一新的感脚,哈哈

使用道具 举报

回复

发表于 2015-10-13 08:42:21 | 显示全部楼层
学习!!水下
使用道具 举报

回复

发表于 2015-10-27 14:38:56 | 显示全部楼层
这个好,怎么学习一下
使用道具 举报

回复

发表于 2015-10-28 08:43:55 | 显示全部楼层
顶贴啦,好贴
使用道具 举报

回复

发表于 2015-10-28 14:09:28 | 显示全部楼层
这个给力,来学习下
使用道具 举报

回复

发表于 2015-10-30 11:29:11 | 显示全部楼层
benbenxiong 发表于 2015-10-9 15:05
重新给楼主排了个版,有木有焕然一新的感脚,哈哈

就喜欢你的排版风格,清晰明了
点评 ( 1 ) 收起 / 展开点评

wangwj 2017年01月12日 13:23 详情 回复

lfw技术红皮书5.x.doc(NCV55-LFW开发框架红皮书),能给发一个吗?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们
联系我们
  • 电话:010-86393388
  • 邮件:udn@yonyou.com
  • 地址:北京市海淀区北清路68号
移动客户端下载
关注我们
  • 微信公众号:yonyouudn
  • 扫描右侧二维码关注我们
  • 专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041 京ICP备05007539号-11 京公网网备安1101080209224 Powered by Discuz!
快速回复 返回列表 返回顶部