【仅供内部供应商使用,不提供对外解答和培训】

Page tree

【仅供内部供应商使用,不提供对外解答和培训】

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Current »

相关功能9.0写法10.0新写法

国际化

        

Inter.getLocText(key)

设计器:com.fr.design.i18n.Toolkit.i18nText(key) 不带参数的国际化 com.fr.design.i18n.Toolkit.i18nText(String key, Object... args) 带参数的国际化国际化命名规范详见国际化规范

服务器:InterProviderFactory.getProvider().getLocText(key)

日志打印方式

FRLogger.getLogger()

FRContext.getLogger()

FRLoggerFactory.getLogger()

 FineLoggerFactory.getLogger()
日志接口

FRLoggerProvider

FineLoggerProvider

模板访问路径?reportlet=xxx.cpt?formlet=xxx.frm/view/form?viewlet=xxx.frm/view/report?viewlet=xxx.cpt
env接口Env

Workspace

env获取方式

FRContext.getCurrentEnv()

WorkContext.getCurrent()

session信息类名修改

SessionIDInfor

SessionIDInfo

session操作类9.0使用SessionDealWith

10.0使用SessionPoolManager

获取当前登录用户方式

FSAuthentication/getUserInfo()

 LoginService.getInstance().getCurrentUserNameFromRequest(req)

管理员的判断

FSAuthentication/isRoot()

需要通过获取用户id并和AuthorityStaticItemId.SUPER_USER_CUSTOM_ROLE比较
配置文件的写法修改继承XMLFileManager读取和写入xml继承Configuration写入数据库和从数据库读取,具体写法参考10.0其他开发变化
插件功能点记录

使用@FunctionRecorder(id,localKey)和@ExecuteFunctionRecord注解

需要在记录功能点的方法上添加@Focus(id = "xxx", text = "xxx", source = Original.PLUGIN)注解同时要在记录功能点的类上添加@EnableMetrics注解
sessionid的传送9.0在前台通过post方式传递sessionid10.0将sessionid添加到header中传递,也可以使用get方式传递sessionid
平台消息接口

com.fr.base.platform.msg.Message

com.fr.decision.system.bean.message.Message

系统消息发送

SystemMessageDeal.getInstance().save(message)

SystemContext.getInstance().getMessageController().saveMessage(message)

module启动方式

ModuleContext.startModule("XXModule.class")

定义activator的方式,并将声明的activator注册到xml中
参数map转字符串

FRLogger.createParamString(para)

FRLogger.createParamString(para,excludeParas)

TextUtils.createParamString(para)

TextUtils.createParamString(para,excludeParas)

后台http连接

HttpClient(String url)

HttpClient(String url,HashMap<String, String> para)

HttpClient(String url, HashMap<String, String> para, boolean encode)

HttpToolbox.get(url)

HttpToolbox.appendQuery(prefix, new String[]{xxx}, new String[]{})

平台所有配置邮箱用户获取

ConfigManager.getProviderInstance()

.getEmailManager().getAllMailUsers(true)

UserService.getInstance().getAllUsers(currentUsername, userSearchBean, true)

userSearchBean是用户搜索附加的一些属性(分页、关键字、部门职位等)
多报表访问

9.0使用这种格式({reportlet:/k1.cpt},{reportlet:/k2.cpt})

 详见http://help.finereport.com/doc-view-1092.html

10.0使用encodeURIComponent("[{reportlet:k1.cpt}, {reportlet:k2.cpt}]") 

详见http://help.finereport.com/wwwfr10/doc-view-1092.html

日志记录存储9.0日志是存储在logdb里面连接方式驱动器:com.fr.third.org.hsqldb.jdbcDriver url:emb:jdbc:hsqldb:file://${ENV_HOME}/logdb/db用户名:sa 密码为空,详见http://help.finereport.com/doc-view-891.html10.0是存储在swift中连接方式驱动器:com.fr.swift.jdbc.Driverurl:jdbc:swift:emb://DECISION_LOG用户名和密码暂时不支持
插件或功能集群的适配

对于一些开发平台的功能或者插件,需要在插件里面做下请求转发到主机处理

添加的service需要继承AbstractClusterDispatchService

内部有处理转发的逻辑

具体参考相应文档
插件访问数据库的方式9.0是自定义DAO,可参考MessageDataAccessObject10.0使用DBAccessProvider注册DAO,详见数据库读写
平台请求处理9.0是通过注册service和action实现请求的分发和处理10.0使用spring通过添加@Controller和@RequestMapping注解实现请求的映射和处理
  • No labels