基础知识:07.01.01.集成篇(4gl扩展功能 集成java:Hello World)
本页目录
- 1、制作jave项目
- 2、配置tiptop
- 3、测试
制作javen的maven项目
- jdk版本:1.6.0_25
java项目目录结构
-
waichi
- src
- waichi.xiekeyun
- ApiCommonParam
- SignUtils
- XieKeYunApiHttps
- waichi.xiekeyun
- lib
- commons-logging-1.0.4.jar
- fastjson-1.2.83.jar
- httpclient-4.4.1.jar
- httpcore-4.4.16.jar
- src
配置tiptop
tiptop配置java的jar
# 开一个上传下载cmd
sftp BL066912@10.1.2.205
cd /u1/topprod/tiptop/ds4gl2/bin/javaad/jar/
put waichi.jar
cd /u1/topprod/tiptop/bin
get tiptop_env
## 修改tiptop_env的CLASSPATH
## CLASSPATH=$TOP/ds4gl2/bin/javaad/jar/ldap.jar:$TOP/ds4gl2/bin/javaad/jar/Hellopkg.jar;export CLASSPATH
## 修改后上传
put tiptop_env
# 开一个ssh 执行命令cmd
ssh BL066912@10.1.2.205 -p 22
chmod 0777 /u1/topprod/tiptop/ds4gl2/bin/javaad/jar/Hellopkg.jar /u1/topprod/tiptop/bin/tiptop_env
## 使生效
#source /u1/topprod/tiptop/bin/tiptop_env
# 上传后服务器运行测试
# 有输出成功
java -jar waichi.jar
配置tiptop的工具类
# 系统内置的util.so和com.so没有函数的,可以使用以上的替换
# 备份
cd /u1/genero/fgl/lib
mv util.so util.so20240604DKLi
cd /u1/genero/fgl.ws/lib
mv util.so util.so20240604DKLi
cd /u1/genero/fgl.dev/lib
mv util.so util.so20240604DKLi
# 授权
cd /u1/genero/fgl/lib/
chmod 0777 util.so
cd /u1/genero/fgl.ws/lib
chmod 0777 util.so
cd /u1/genero/fgl.dev/lib
chmod 0777 util.so
写tiptop的程序
IMPORT util
IMPORT JAVA waichi.xiekeyun.SignUtils
DATABASE ds
GLOBALS "../../config/top.global"
DEFINE str STRING
DEFINE objStr STRING
DEFINE aignUtils SignUtils
DEFINE requestbody RECORD
commonParam RECORD
appKey STRING,
ownerCompanyCode STRING,
operateCompanyCode STRING,
reserver STRING,
sign STRING,
timestamps INTEGER,
version STRING
END RECORD,
body RECORD
erpCode STRING,
deliveryNo STRING
END RECORD
END RECORD
DEFINE obj,xiekeyunObj util.JSONObject
DEFINE xiekeyunURL,xiekeyunJson,xiekeyunResult STRING
MAIN
# 获取携客云 签名计算SDK
LET aignUtils = SignUtils.create()
CALL aignUtils.SetCommonParam("xxxxxx","1.0","42133559","42133559","xxxxxx", " ") RETURNING str
# 将json的sting转4gl的fgl格式
LET obj=util.JSONObject.parse(str)
CALL obj.toFGL( requestbody.commonParam )
IF cl_null(requestbody.commonParam.sign) THEN
RETURN
ELSE
LET requestbody.body.erpCode="BL066912"
LET requestbody.body.deliveryNo="2224051694KC"
LET xiekeyunURL="https://openapi.xiekeyun.com/barcode/byDeliveryNo.json"
LET xiekeyunObj=util.JSONObject.fromFGL(requestbody)
CALL get_xiekeyun_api(xiekeyunURL,xiekeyunObj.toString())
END IF
END MAIN
# @mathodName: get_xiekeyun_api
# @author:李德凯 2665252078@qq.com
# @date:Created in 2024-06-05
# @description: 发送请求给携客云,获取送货通知单的信息
# @param json STRING
FUNCTION get_xiekeyun_api(l_url,l_json)
DEFINE l_url,l_json,result STRING
CALL aignUtils.XieKeYunHttpPostJson(l_url,l_json) RETURNING result
DISPLAY result
END FUNCTION
测试
- 有输出表示成功