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

Page tree

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

Skip to end of metadata
Go to start of metadata
相关功能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写入数据库和从数据库读取,具体写法参考其他文档
插件功能点记录

使用@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

1 Comment

  1. 以前的国际化拼接参数的写法由原来的

    ***{R1}***改成了***{}***