1、 網上現有的成功例子,都是10.1版本以前的直接通過mxd文檔在ae端創建服務的。
參考“http://blog.csdn.net/wufeishimeng/article/details/5111085”
2、 對於10.1版本,ArcGISEngine的代碼不能直接將MXD地圖文檔作爲數據源進行發佈,如果要發佈的話,需要用ArcMap將MXD轉成MSD(使用ConvertToMSD函數),然後使用轉換成功的MSD文檔進行發佈。
參考http://blog.csdn.net/arcgis_all/article/details/17376397
3、 但是msd屬於10.1以前版本的文件,從arcgis10.1 for Server開始,地圖服務器定義文件(.msd)文件已經被替換爲服務定義草稿(.sddraft)文件和服務定義(.sd)文件,請改用 CreateMapSDDraft 函數。
參考:“https://desktop.arcgis.com/zh-cn/arcmap/10.3/analyze/arcpy-mapping/converttomsd.htm”
4、 可以直接通過python自動發佈服務,然後在AE中調用該功能的gp過程。
ArcGIS10.1 在發佈服務的時候其實是按照下面的步驟來的,如果認真觀察過也不難得出:
1) 將MXD文檔轉成sddraft文件;
2) 將sddraft文件轉成sd文件;
3) 將sd文件上傳到ArcGIS for Server中;
既然這個過程已經知道了,那麼就可以通過Python按照這個流程來自動化的完成服務的發佈。
步驟如下:
1) 在arccatalog下,工具箱—我的工具箱中創建自定義工具箱
2) 在創建的工具中添加腳本
3) 執行腳本,在結果窗口將其共享
4) 發佈服務
以上過程的具體執行請參考:
“http://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/00150000002q000000/”
5、 上述python創建服務已經測試通過,目前需要在toolbox中手動創建這個tbx,然後在 GP中使用,再在AE中調用GP過程,AE調用自定義GP服務請參考:
“http://blog.csdn.net/u011009362/article/details/48030787”