#2.16 内网iportal配置文件
历史原因:
线上online的外挂文件(cdtest)
online产品包(2021.4月不在产生)
iportal产品包
内网调试环境 iserver-debug
内网打包环境 distribution
说明:
外挂文件是k8s中volume卷宿主机目录挂载到online-portal镜像容器内目录
挂载的文件是项目启动需要的配置文件
##其他外挂文件
online:
icloud-sharedDatas.xml mysql数据库sharedata_test,自己维护
icloud-sharedDatas-sqlite.xml 上面的sqlite数据库,实际没有用
shiroCustomUrls.ini 自己维护
portal(distribution/WEB-INF_iPortal):
需要与portal的打包文件对比,也可和portal产品包对比,同时设置online需要的参数
iportal-ehcache.xml 需要内网同步或portal的产品包比较,自己维护,现有差异
iportal-monitor.xml 需要与portal比较,自己维护,数据库改为自己的
iportal-storage.xml 自己维护,存储方式:portal是File文件存储,我们是OSS存储
iportal-structureddata.xml 需要与portal比较, 自己维护,数据库改为自己的
iserver-log4j.properties 需要与portal比较
urlrewrite.xml 需要与portal一致
web.xml 需要与portal对比 ,现有差异
portal调试:
iserver-datastores.xml 与iserver-debug下对比,现略有差异
iserver-rest-appContext.xml 与iserver-debug下对比,现完全一致
iserver-rest-resources.xml 与iserver-debug下对比,现完全一致
iserver:
iserver-dataflow.xml 在iserver产品包有 ,完全不一致
##打包文件
在构建时,源码distribution下的文件同步
IPortalWebHandler.xml 需要与portal同步,以前已做过同步
extendManagerResources.xml 自己维护,与portal无关,打包时新增进iportal-all-olcustom
ManagerConfigAppContext.xml 需要与portal同步,打包时新增进iportal-all-olcustom
cdtest和以前的不同:
iportal.xml
ipotal-monitor.xnl
iportal-storage.xml
iserver-log4j.properties
iserver-system.xml
shiro.ini
##外挂文件(online管理)
需要维护,完全由online管理
###iportalWebHandler.properties
IPortalWebHandler.xml的属性配置文件
注意:在distribution/online/WEB-INF_online_iportal下iportalWebHandler.properties需要维护修改信息,用于内网调试,并同步更新在测试/生产环境的外挂文件
###shiro.ini
尽管内网调试环境iserver-debug下也存在一份shiro.ini,但是online对shiro.ini完全实现对cas登录系统的一套的配置,完全由online管理
###shiroCustomUrls.ini
配合shiro.ini一起配置
icloud-sharedDatas.xml
桌面插件
是我们online-portal项目下sites-develop模块使用,IcloudWebHandler.java使用
handlers.xml(**)
如果放在该目录下,会优先读取;没有则会读取handlers_iportal.xml
目的是新增 extendWebHandler和iCloudWebHandler ,但是iCloudWebHandler 被注释了
更新:与handlers_iportal.xml保持同步
##外挂文件(iportal配置文件)
需要维护管理,与portal保持同步(需要同步的可能极低)
iportal的在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm

###iportal-storage.xml
用户用户上传数据文件的存储配置信息,包括 FTP 服务器存储配置等
内网代码iportal模块下StorageManager.java

iportal-monitor.xml

用于监控数据库与服务器节点配置信息,包括用于监控数据存储的数据库配置、添加的 iServer 服务器节点信息、云原生 iServer 的微服务节点配置信息等
portal产品包自带,内网代码没有,初始化iportal产品包,会新增nodes节点,如果设置默认默认sqlite数据库,会在WEB-INFO/iportaldata下生成monitor.db,
注意:online没有用过监控数据库
内网代码DBStructureUpgrader.java(数据库生成器)的saveMonitorNodesConfigToBD() 方法,每次项目重启会删掉之前的数据库,重新读取nodes节点,并存入数据库iportal的minitor_node_info表
并使用Apacha common.io2.0提供了监听文件变化的功能 ,文件修改会同步到数据库
iportal-ehcache.xml
用于iPortal 代理服务访问权限信息缓存共享配置信息,默认保存在本地,无需配置,当使用 iPortal 高可用方案时,需配置
缓存方式,默认ehcache,读取iportal-ehcache.xml配置文件
内网代码iportal模块下EhcacheCacheImpl.java
iportal-structureddata.xml
在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm
用于 针对以 CSV、Excel、GeoJSON 格式存储的结构化数据,SuperMap iPortal 提供了数据上传、导入数据到 PostgreSQL 数据库、获取字段统计信息、获取数据的 mvt 瓦片的能力。当前,MapStudio WebAPP 提供了对结构化数据能力的支持,在使用之前,iPortal 管理员需配置结构化数据依赖的 PostgreSQL 数据库的连接信息。

内网代码也没有改配置文件;在portal产品包中出现。
内网代码iportal-structureddata模块在2020/9/3新增

urlrewrite.xml
iportal的前端是放在tomcat中需要配置,而online是独立部署,通过nginx转发,所以在k8s环境中没有,可以考虑删掉
用于配置路径导航
项目启动后,会自动更新到最新文件内容:
项目启动类AppServer.java,如果是Portal类型,会把/distribution/WEB-INF_iPortal下的urlrewrite.xml替换挂载目录下的urlrewrite.xml
###web.xml
portal添加的过滤器
项目启动类AppServer.java,如果是Portal类型,会把/distribution/WEB-INF_iPortal下的web.xml替换挂载目录下的web.xml
配置有urlrewrite.xml相关的urlrewrite过滤器
###iserver-log4j.properties
日志打印配置,尽管后面升级到log4j2,依然适配log4j配置
————————————————————————————————————————————————
###iserver-system.xml(**)
在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm
该文件会自动同步更新
与内网/distribution/WEB-INF_iPortal下的iserver-system.xml同步对比
注意:
itest环境对postpaid_storagesize.log额外新增
###iportal.xml(**)
ol定制
dataSourceConnectionPoolInfo标签:iportal数据库连接池设置改为mysql连接
uploadSetting标签:用户上传数据容量上限,单位:MB,iportal为2048,改为500
shareSetting标签: true改为fasle
mapsSetting标签: true改为fasle
serviceProxy标签:
rootUrlPostfix:<rootUrlPostfix>proxy</rootUrlPostfix> portalproxy改为proxy
port:<port>1115</port> 8195改为1115
新增: <proxyServerRootUrl>https://cdtest.supermapol.com</proxyServerRootUrl>
httpConnPoolInfo:
maxTotal:<maxTotal>20</maxTotal> 100改为20
defaultMaxPerRoute:<defaultMaxPerRoute>2</defaultMaxPerRoute> 10改为2
enableAccessStatistics:<enableAccessStatistics>false</enableAccessStatistics> true改为fasle
cacheConfig:<ehcacheConfigPath>./iportalol_config/iportal-ehcache.xml</ehcacheConfigPath>
customDirectorySetting标签:
<allowCustomDirectory>{"APP":false,"DATA":false,"SERVICE":false,"MAP":false,"SCENE":false,"INSIGHTS":false}</allowCustomDirectory>
改为:
http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm
mapViewerSetting标签:
修改:
<displayCoords>false</displayCoords>
<displayDataLayers>true</displayDataLayers>
##更新记录
外挂文件(iportal配置文件) 中自2017起没有更新,2022/2再次更新
iportal-storage.xml 新增
<cache name="iportalCache_ProxyService" maxElementsInMemory="1000000"
overflowToDisk="true" eternal="false"
timeToLiveSeconds="0" timeToIdleSeconds="1800"
maxEntriesLocalDisk="0" diskSpoolBufferSizeMB="20"
transactionalMode="off">
</cache>
iportal-monitor.xml 修改
根据提交记录,修改 标签内的内容
iserver-log4j.properties 完全替换最新版文件
web.xml
以前还是2018/11/15版,现在同步过来,
设置为Online,其他与portal一致————————————————————————————————————————
urlrewrite.xml (去掉)
online的web-ui独立部署,不需要
————————————————————————————————————
以下是iserver的配置,iportal不需要:
iserver-rest-appContext.xml(去掉)
distribution下IPSE修改配置文件说明
iportal产品包已经去掉了,distribution/WEB-INF_iPortal 在日志中 2021/8/13
iserver-rest-resources.xml(去掉)
在iserver里有, 可以删掉
iserver-datastores.xml(去掉)
在iserver产品里有都没有;2017年的,给iserver-debug调试提供测试数据的;不需要,去掉
iserver-dataflow.xml(去掉)
在iserver里有, 可以删掉
——————————————————————————————————————
iserver-security.db-journal(去掉)
莫名生成了个临时文件,删掉
icloud-sharedDatas-sqlite.xml(去掉)
默认的sqlite配置,已有mysql的配置文件;不需要这个
一些临时文件删掉
————————————————————————————————————————
iserver-security.db (去掉)
配置mysql,不需要sqllite
iserver-services.db(去掉)
portal产品没有
—————————————————————————————————————————
更新步骤:
1.删除文件
2.修改文件
主站、itest、cdtest都一样,把我改好的替换:
iportal-ehcache.xml 直接替换
iserver-log4j.properties 直接替换
web.xml
iportal-monitor.xml 不能直接替换,只替换recordDSCPInfo 标签里内容
打包流程
iportal-all-olcustom 对 iportal-all 做了修改,排除了某些类添加了某些jar包内的配置文件
online-iportal-all online的portal-extends项目下的功能都在这个jar
online产品包 2021年4月已不再生成(ftp://ftp.iserver..com下的online目录)
内网dev/distribution/online/WEB-INF_online_iportal 内会覆盖 配置目录
