iServer的java api也没有发布工作空间为各种服务的方法 那么就有俩解决办法了,
1.改iServer服务配置文件(xml,iServer应用目录下,比如webapps/iserver/WEB-INF/iserver-services.xml,中间件部署的iServer服务配置文件在相应目录,改文件后不需要重启即可完成服务发布)
2.使用iServer REST API,java发送HTTP请求,iServer REST API相关文档链接: http://support.supermap.com.cn:8090/iserver/help/html/mergedProjects/SuperMapiServerRESTAPI/manager/workspaces/workspaces.htm 注意:方式2使用iServer REST API managerRoot资源需要身份验证才能操作,可以两种方式认证,一种是token,一种是用登陆资源,登陆后获取到相关信息,之后的请求头带上它 token相关: http://support.supermap.com.cn:8090/iserver/help/html/mergedProjects/SuperMapiServerRESTAPI/Token_RESTServices.htm
推荐方式2
1.工作空间不存在独占,只有数据源才会;工作空间记录的主要内容有:
(1.数据源连接
(2.地图(xml表述,只记录样式、关联的数据集连接、地图及图层属性等)
(3.符号库 (4.其他,比如布局场景等
所以只要工作空间连接路径没变,保存了iServer发布的工作空间后,下次请求iServer读到的就是更新后的(不使用缓存的情况下)
2.上面已经说明了,只要是保存了iServer发布的工作空间就行 另,iServer有数据源检查机制,主要是判断缓存存活周期的,默认30s检查数据连接,若改变,则缓存资源失效,可以在webapps/iserver/WEB-INF/iserver-system.xml的checkDatasourceConnectionInterval节点设置,更多配置项请参考iServer帮助文档,链接:
http://support.supermap.com.cn:8090/iserver/help/html/Appendix/iServer_configInfo.htm http://support.supermap.com.cn:8090/iserver/help/html/Server_Service_Management/Server_Service_Management.htm
加上之前的内容,应该会对你有所帮助