当前位置: 首页 > news >正文

O2OA开发平台实施入门指南

O2OA(翱途)开发平台,是一款适用于协同办公系统开发与实施的基础平台,说到底,它也是一款快速开发平台。开发者可以基于平台提供的能力完成门户、流程、信息相关的业务功能开发。

既然定位为开发平台,那么开发小伙伴们一些基础的开发能力也是必须要掌握的,本文从平台的安装部署和开发实施两个方向为大家罗列一下需要掌握的技术以及学习的路径,希望对大家有帮助。

一、平台安装部署技术需求

平台的安装部署大多数操作与服务器命令有关,包括但不限于文件操作,进程操作,文件操作,权限操作等,以下为大家逐一说明:

1、CPU架构查询

部署O2OA需要根据服务器硬件环境下载合适的服务器安装文件。

如果是Windows操作系统,则可以直接选择选择Windows环境下的安装文件。

但如果是Linux环境,使用命令了解当前主机的硬件架构类型,可以在控制台输入命令行:

arch

O2OA支持x86、MIPS、ARM芯片架构。

2、文件操作

1)下载与解压(Linux环境)

  • wget命令的使用

wget命令是Linux系统用于从Web下载文件的命令行工具,支持 HTTP、HTTPS及FTP协议下载文件,而且wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等,使用非常方便。接下来就介绍一下wget的使用方法。

wget [options] [url]

例如,使用wget下载O2OA V8.0.4的安装文件:

wget https://download.o2oa.net/download/o2server-8.0.5-windows-x64.zip

wget命令的使用的详细介绍请参考:《wget命令详解》

  • uzip命令的使用

unzip 命令用于列出、测试和提取 ZIP 存档中的压缩文件。如果 unzip 不跟任何选项(默认行为),会将指定的 ZIP 存档文件解压到当前目录。

unzip [-Z] [OPTIONS] [ZIP_FILE...] [FILE...]  [-x FILE...] [-d EXDIR]

[ZIP_FILE…] 表示 ZIP 存档文件,

[FILE…] 表示待处理的 ZIP 存档文件中的文件列表,

[-x FILE…] 表示不处理的文件列表,

[-d EXDIR] 表示解压缩后的文件存放的目录。

文件名均可使用通配符表示。

注意,unzip 可以不跟任何选项和参数,单独执行 unzip 将打印简要帮助信息。

如,将o2server解压到当前目录中:

unzip o2server-8.0.5-windows-x64.zip

uzip命令的详细使用说明请参考:《linux unzip 命令》

2)权限与拥有者设置(Linux环境)

Linux系统有严格的文件权限控制,如果未使用root进行相关的文件操作,可能会导致系统在运行时无法创建文件,造成一系列文件权限相关的错误。在此,我们介绍一下关于文件操作相关的命令:

  • chown命令的使用

Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令,chown 需要超级用户 root 的权限才能执行此命令。chown更改每个给定文件的用户和/或组所有权。如果只提供了所有者(用户名或数字用户ID),则该用户将成为每个给定文件的所有者,并且不会更改文件组。

chown [参数] user[:group] 文件

如,将o2server目录以及所有的文件授权给oauser用户组的oauser用户:

chown -R oauser:oauser o2server

chown命令的详细使用说明请参考:《Linux命令之chown命令》

  • chmod命令的使用

Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令。

chmod [-cfvR] [–help] [–version] mode file…

如,进入o2server目录之后,将所有的文件以及下级目录文件的权限都改成777:

chmod -R 777 *

chmod命令的详细使用说明请参考:《Linux中:chmod命令详细解释》

3、端口占用查询

如果O2OA需要监听的端口被占用,在服务器启动时会提示端口被占用,无法正常启动。此时需要管理员关闭某些应用,如IIS,Apache或者调整O2OA需要的端口号。本节我们介绍如何查询服务器被占用的情况。

1)如何查询开放的端口

Windows系统:

查询端口监听程序所在的进程号(PID)

netstat -aon

  • 在Windows任务管理器里,查看该进程号所对应的应用程序名称即可。

请参考:《O2OA帮助手册服务器端口冲突和端口修改》 https://www.o2oa.net/cms/tech/436.html

Linux系统:

netstat -an|grep :::端口号

2)如何查询端口被什么进程占用

Windows系统:

  • 查询端口监听程序所在的进程号(PID)
netstat -aon|findstr "80"

  • 在Windows任务管理器里,查看该进程号所对应的应用程序名称即可。

Linux系统:

sudo lsof -i :80

4、停止指定的进程

1)Windows系统

  • 建议按正常关闭应用软件的方式停止进程,比如Apache服务,Nginx服务,IIS服务,Oracle数据库等,结束进程的方式可能会对正在运行的应用造成影响,导致文件损坏。
  • 查询端口监听程序所在的进程号(PID)使用命令:netstat -aon|findstr "80" ,查询占用80端口的进程号;
  • 在Windows任务栏上使用右键(或者快捷键CTRL+SHIFT+ESC)打开任务管理器,在详细栏里,根据PID将所有的应用程序排序,之后找到进程编号对应的应用程序进行关闭。

2)Linux系统

  • 建议按正常关闭应用软件的方式停止进程,比如Apache服务,Nginx服务,Oracle数据库等,结束进程的方式可能会对正在运行的应用造成影响,导致文件损坏。
kill -9 进程号

5、防火墙 Firewall操作

如果不关闭防火墙或者防火墙设置不正常,会导致服务启动正常,端口正常监听,外部计算机却无法正常访问服务器,打开O2OA登录页。

1)Windows:请参考《Windows 系统命令行打开、关闭系统防火墙》

https://forum.huawei.com/enterprise/zh/thread/580939811705995264

2)Linux:请自行百度或者参考《CentOS7关闭防火墙》

https://blog.csdn.net/a654540233/article/details/129700527

6、关闭Windows的IIS服务

请参考《关闭Windows自带的IIS服务》

关闭Windows自带的IIS服务_关闭iis服务_☜lgl☞的博客-CSDN博客

二、如何查看日志或者发现问题

1、最常用的前端调试方法F12

参考文章《前端开发之浏览器F12代码调试教程(谷歌浏览器为例)》

前端开发之浏览器F12代码调试教程(谷歌浏览器为例)_前端f12 调试_前端日记_林的博客-CSDN博客

推荐视频《【浏览器调试工具精讲】Chrome Dev Tools精讲,前端必看!》

https://www.bilibili.com/video/BV1KM4y1G7EF/

2、服务器日志查询

日志应用使用说明

平台日志文件说明

访问日志相关配置

O2OA日志输出设置log4j2.xml

审计日志相关配置

3、APP应用日志查询

移动端查看日志说明

相关文章:

O2OA开发平台实施入门指南

O2OA(翱途)开发平台,是一款适用于协同办公系统开发与实施的基础平台,说到底,它也是一款快速开发平台。开发者可以基于平台提供的能力完成门户、流程、信息相关的业务功能开发。 既然定位为开发平台,那么开…...

服装行业多模态算法个性化产品定制方案 | 京东云技术团队

一、项目背景 AI赋能服装设计师,设计好看、好穿、好卖的服装 传统服装行业痛点 • 设计师无法准确捕捉市场趋势,抓住中国潮流 • 上新周期长,高库存滞销风险大 • 基本款居多,难以满足消费者个性化需求 解决方案 • GPT数据…...

MySQL表空间结构与页、区、段的定义

文章目录 一、概念引入1、页2、区3、段 二、页的结构1、File Header2、FIle Trailer 三、区的结构1、分类2、XDES Entry3、XDES Entry链表 四、段的结构五、独立表空间1、FSP_HDR页2、XDES页3、IBUF_BITMAP页4、INODE页5、INDEX页 六、系统表空间 一、概念引入 1、页 InnoDB是…...

RaabitMQ(三) - RabbitMQ队列类型、死信消息与死信队列、懒队列、集群模式、MQ常见消息问题

RabbitMQ队列类型 Classic经典队列 这是RabbitMQ最为经典的队列类型。在单机环境中,拥有比较高的消息可靠性。 经典队列可以选择是否持久化(Durability)以及是否自动删除(Auto delete)两个属性。 Durability有两个选项,Durable和Transient。 Durable表…...

Unity3D GPU Selector/Picker

Unity3D GPU Selector/Picker 一、概述 1.动机 Unity3D中通常情况下使用物理系统进行物体点击选择的基础,对于含大量对象的场景,添加Collider组件会增加内容占用,因此使用基于GPU的点击选择方案 2.实现思路 对于场景的每个物体,…...

灰度非线性变换之c++实现(qt + 不调包)

本章介绍灰度非线性变换,具体内容包括:对数变换、幂次变换、指数变换。他们的共同特点是使用非线性变换关系式进行图像变换。 1.灰度对数变换 变换公式:y a log(1x) / b,其中,a控制曲线的垂直移量;b为正…...

轻量级Web框架Flask

Flask-SQLAlchemy MySQL是免费开源软件,大家可以自行搜索其官网(https://www.MySQL.com/downloads/) 测试MySQL是否安装成功 在所有程序中,找到MySQL→MySQL Server 5.6下面的命令行工具,然后单击输入密码后回车&am…...

【gridsample】地平线如何支持gridsample算子

文章目录 1. grid_sample算子功能解析1.1 理论介绍1.2 代码分析1.2.1 x,y取值范围[-1,1]1.2.2 x,y取值范围超出[-1,1] 2. 使用grid_sample算子构建一个网络3. 走PTQ进行模型转换与编译 实操以J5 OE1.1.60对应的docker为例 1. grid_sample算子功能解析 该段主要参考:…...

JPA实现存储实体类型信息

本文已收录于专栏 《Java》 目录 背景介绍概念说明DiscriminatorValue 注解:DiscriminatorColumn 注解:Inheritance(strategy InheritanceType.SINGLE_TABLE) 注解: 实现方式父类子类执行效果 总结提升 背景介绍 在我们项目开发的过程中经常…...

阿里云快速部署开发环境 (Apache + Mysql8.0+Redis7.0.x)

本文章的内容截取于云服务器管理控制台提供的安装步骤,再整合前人思路而成,文章末端会提供原文连接 ApacheMysql 8.0部署MySQL数据库(Linux)步骤一:安装MySQL步骤二:配置MySQL步骤三:远程访问My…...

语音秘书:让录音转文字识别软件成为你的智能工作助手

每当在需要写文章的深夜,我的思绪经常跟不上我的笔,即便是说出来用录音机录下,再书写出来,也需要耗费大量时间。这个困扰了我很久的问题终于有了解决的办法,那就是录音转文字软件。它像个语言魔术师,将我所…...

【腾讯云 Cloud Studio 实战训练营】用于编写、运行和调试代码的云 IDE泰裤辣

文章目录 一、引言✉️二、什么是腾讯云 Cloud Studio🔍三、Cloud Studio优点和功能🌈四、Cloud Studio初体验(注册篇)🎆五、Cloud Studio实战演练(实战篇)🔬1. 初始化工作空间2. 安…...

[C#] 简单的俄罗斯方块实现

一个控制台俄罗斯方块游戏的简单实现. 已在 github.com/SlimeNull/Tetris 开源. 思路 很简单, 一个二维数组存储当前游戏的方块地图, 用 bool 即可, true 表示当前块被填充, false 表示没有. 然后, 抽一个 “形状” 类, 形状表示当前玩家正在操作的一个形状, 例如方块, 直线…...

postman官网下载安装登录详细教程

目录 一、介绍 二、官网下载 三、安装 四、注册登录postman账号(不注册也可以) postman注册登录和不注册登录的使用区别 五、关于汉化的说明 一、介绍 简单来说:是一款前后端都用来测试接口的工具。 展开来说:Postman 是一个…...

(贪心) 剑指 Offer 14- I. 剪绳子 ——【Leetcode每日一题】

❓剑指 Offer 14- I. 剪绳子 难度:中等 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n > 1 并且 m > 1),每段绳子的长度记为 k[0],k[1]...k[m-1] 。请问 k[0]*k[1]*...*k[m…...

如何将Linux上的cpolar内网穿透设置成 - > 开机自启动

如何将Linux上的cpolar内网穿透设置成 - > 开机自启动 文章目录 如何将Linux上的cpolar内网穿透设置成 - > 开机自启动前言一、进入命令行模式二、输入token码三、输入内网穿透命令 前言 我们将cpolar安装到了Ubuntu系统上,并通过web-UI界面对cpolar的功能有…...

50.两数之和(力扣)

目录 问题描述 核心代码解决 代码思想 时间复杂度和空间复杂度 问题描述 给定一个整数数组 和一个整数目标值 ,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。numstarget 你可以假设每种输入只会对应一个答案。但是&am…...

k8s基础

k8s基础 文章目录 k8s基础一、k8s组件二、k8s组件作用1.master节点2.worker node节点 三、K8S创建Pod的工作流程?四、K8S资源对象1.Pod2.Pod控制器3.service && ingress 五、K8S资源配置信息六、K8s部署1.K8S二进制部署2.K8S kubeadm搭建 七、K8s网络八、K8…...

【自然语言处理】大模型高效微调:PEFT 使用案例

文章目录 一、PEFT介绍二、PEFT 使用2.1 PeftConfig2.2 PeftModel2.3 保存和加载模型 三、PEFT支持任务3.1 Models support matrix3.1.1 Causal Language Modeling3.1.2 Conditional Generation3.1.3 Sequence Classification3.1.4 Token Classification3.1.5 Text-to-Image Ge…...

FFmpeg将编码后数据保存成mp4

以下测试代码实现的功能是:持续从内存块中获取原始数据,然后依次进行解码、编码、最后保存成mp4视频文件。 可保存成单个视频文件,也可指定每个视频文件的总帧数,保存多个视频文件。 为了便于查看和修改,这里将可独立的…...

实时行情系统设计:从协议选择到高可用架构,再到数据源选型乌

一、核心问题及解决方案(按踩坑频率排序) 问题 1:误删他人持有锁——最基础也最易犯的漏洞 成因:释放锁时未做身份校验,直接执行 DEL 命令删除键。典型场景:服务 A 持有锁后,业务逻辑耗时超过锁…...

STM32WLE5CCU6实战:从官方例程到第三方模块的PingPong通信移植详解

1. STM32WLE5CCU6硬件平台与PingPong通信基础 STM32WLE5CCU6是ST推出的Sub-1GHz无线微控制器,集成了Cortex-M4内核和LoRa射频模块。与常见的NUCLEO-WL55JC开发板不同,实际项目中我们更常遇到采用QFN48封装的独立芯片方案,比如搭配亿佰特E77这…...

MySQL优化全攻略:索引、SQL与分库分表的最佳实践鸵

一、各自优势和对比 这是检索出来的数据,据说是根据第三方评测与企业数据,三款产品在代码生成质量上各有侧重: 产品 语言优势 场景亮点 核心差异 百度 Comate C核心代码质量第一;Python首生成率达92.3% SQL生成准确率提升35%&…...

某型高速可回收模块化靶标无人机总体设计方案

1. 总体设计1.1 项目概述与设计目标本方案面向新一代防空武器系统测试、训练需求的高性能靶标无人机。其核心任务是逼真模拟典型高速突防空中威胁(如巡航导弹、战斗轰炸机等)的飞行特性、电磁特征与机动模式,为防空部队提供高价值、高强度、低…...

救命!SQL注入居然这么好懂|小白零门槛实操复盘

家人们!网安进阶必冲的“入门王者”漏洞非SQL注入莫属——全程贯穿Web渗透,红队老哥打攻击必用它,蓝队防守也得重点盯防!纯干货实操双在线,刚入坑的网安小白直接码住,照着学不踩坑~先给各位搭子…...

算法安全自评估报告怎么写?内容框架 + 难点解析 + 实战模板(直接照搬)

本文适合:算法工程师、合规专员、产品负责人、备案申报人员,全文干货无废话,可直接用于项目申报、内部评审、算法备案材料。一、前言随着《算法推荐管理规定》《生成式人工智能服务管理暂行办法》等政策落地,算法安全自评估报告已…...

【Android】一键硬核锁手机

【Android】一键硬核锁手机 链接:https://pan.xunlei.com/s/VOpvlC-ER-sVlEs5wlB8GPbEA1?pwd9xz2# 一键硬核锁机:直接屏蔽视频、游戏、网页等功能,想玩手机?没门!专治各种拖延症、手机依赖症!想戒掉手机…...

4.2《深入理解内存池(Memory Pool)与内存块(Memory Slab)设计与实现》

001、内存管理基础:从malloc/free到自定义内存管理器的必要性 一、从一次深夜调试说起 上周排查一个嵌入式设备偶发性死机问题,日志停在某行动态分配代码后消失。堆内存碎片化了——连续运行十几小时后,8MB的堆剩余总量还有3MB,但就是无法分配出一个连续的50KB缓冲区。设备…...

探秘Text2Vec:智能文本处理的新利器

探秘Text2Vec:智能文本处理的新利器 【免费下载链接】text2vec Fast vectorization, topic modeling, distances and GloVe word embeddings in R. 项目地址: https://gitcode.com/gh_mirrors/tex/text2vec Text2Vec是一款强大的R语言文本处理工具包&#xf…...

nuScenes数据集实战指南:从安装到多传感器数据可视化

1. nuScenes数据集简介与安装指南 第一次接触nuScenes数据集时,我被它丰富的传感器配置震撼到了——6个摄像头、1个激光雷达、5个毫米波雷达的同步数据,这简直就是自动驾驶研究的"黄金标准"。作为目前最权威的自动驾驶开源数据集之一&#xff…...