intra-mart Accel Platform 脚本开发模式编程指南 第16版2020-04-01

创建扩展

intra-mart Accel Platform ,用户可以定义API。
可以通过实现用户自己的Object 和initializer-XXX.xml的js文件注册用户定义的扩展API。
根据Object 的实现方式,您可以实现一个定义静态函数的API和一个使用new运算符创建实例的API。
本节描述了从jsAPI的注册到如何使用它。

前提条件

  • 已安装intra-mart e Builder for Accel Platform 。
  • 模块项目的创建已完成。

向intra-mart e Builder for Accel Platform注册静态函数

请按照以下步骤使用静态函数注册Object 。

步骤1:创建一个初始化器

创建src / main / conf / products / initializer / initializer- [项目名称] .xml。
initializer-sample.xml

注解

initializer- [项目名称] .xml严格根据模块 ID而不是项目名称确定。
[项目名称]是模块ID的末尾除以“。”。
例如,如果模块ID为“ org.example.foo”,则定义一个名称为“ initializer-foo.xml”的初始化程序。
使用intra-mart e Builder for Accel Platform ,将其视为项目名称是没有问题的。

注意

使用intra-mart e Builder for Accel Platform创建项目时,不能使用以“ im”开头的名称。
将内容添加到文件。描述的方法,<java的脚本API> <API-脚本> Object js文件路径#定义了Object 是</ API-脚本> </ java的脚本API>。
<初始化器-Config中 的xmlns = <XML版本= “1.0”编码= “UTF-8”?> “的Http:// intra-mart .Co.Jp /系统/安全/产品/初始化器/配置/初始化器-Config”中 xmlns:xsi = “ http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation = “ http:// // intra-mart .co.jp / system / secure / product / initializer / config / initializer- config ../../../ schema/initializer - config.xsd“ > <java-script-api> <api-script>样本/ prog_guide / common_libs / api#StaticApi </ api-script> </ java- script-api> </初始值设定项>

步骤2:在初始化程序中创建js文件集

创建上述xml中设置的js文件。
在此示例中,在项目的src / main / jssp / src / sample / prog_guide / common_libs层次结构中创建一个文件夹,在创建的文件夹下创建“ api.js”文件,并实现如下。
样本\ prog_guide \ common_libs \ api.js
/ **
*创建一个静态Object 
* / 
机能 静态Api(){}
 
/ **
*注册一个名为hoge的函数 。
* / 
静态Apige = 机能(){
    //在这里写处理
    除错控制台“此函数是静态函数 ”);
}

步骤3:部署模块

创建一个包含导出的用户模块的war文件。
部署该war文件并重新启动intra-mart Accel Platform 。

注意

初始化文件是根据war文件中包含的模块配置读取的,因此除非它是用户模块并嵌入war文件中,否则它将无法运行。

步骤4:调用已注册的API

可以从任何js文件调用已注册的API。
机能 初始化要求){
	静态Apige();
}

向intra-mart e Builder for Accel Platform注册实例Object

使用以下过程向实例函数注册Object 。

步骤1:创建一个初始化器

创建src / main / conf / products / initializer / initializer- [项目名称] .xml。
initializer-sample.xml

注解

严格来说,initializer- [项目名称] .xml是由模块 ID而不是项目名称确定的。
[项目名称]是模块ID的末尾除以“。”。
例如,如果模块ID为“ org.example.foo”,则定义一个名称为“ initializer-foo.xml”的初始化程序。
使用intra-mart e Builder for Accel Platform ,将其视为项目名称是没有问题的。

注意

使用intra-mart e Builder for Accel Platform创建项目时,不能使用以“ im”开头的名称。
将内容添加到文件。描述的方法,<java的脚本API> <API-脚本> Object js文件路径#定义了Object 是</ API-脚本> </ java的脚本API>。
<初始化器-Config中 的xmlns = <XML版本= “1.0”编码= “UTF-8”?> “的Http:// intra-mart .Co.Jp /系统/安全/产品/初始化器/配置/初始化器-Config”中 xmlns:xsi = “ http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation = “ http:// // intra-mart .co.jp / system / secure / product / initializer / config / initializer- config ../../../ schema/initializer - config.xsd“ > <java-script-api> <api-script>样本/ prog_guide / common_libs / api#InstanceApi </ api-script> </ java- script-api> </初始值设定项>

步骤2:在初始化程序中创建js文件集

创建上述xml中设置的js文件。
在此示例中,在项目的src / main / jssp / src / sample / prog_guide / common_libs层次结构中创建一个文件夹,在创建的文件夹下创建“ api.js”文件,并实现如下。
样本\ prog_guide \ common_libs \ api.js
/ **
*创建实例Object 
* / 
机能 实例Api(){}

实例Api原型ge = 机能(){
    //在这里写处理
    除错控制台“此函数是实例Object  函数 。”);
};

步骤3:部署模块

创建一个包含导出的用户模块的war文件。
部署该war文件并重新启动intra-mart Accel Platform 。

注意

初始化文件是根据war文件中包含的模块配置读取的,因此除非它是用户模块并嵌入war文件中,否则它将无法运行。

步骤4:调用已注册的API

可以从任何js文件调用已注册的API。
机能 初始化要求){
	变种 api = 新的 实例Api();
	apige();
}