在ArcMap中發佈FeatureLayer(要素圖層)

FeatureLayer(要素圖層)是ArcGIS Server發佈的一種很重要的地圖服務,發佈後使用提供的url地址就能夠在代碼中調用並在地圖上顯示、編輯這個FeatureLayer。在HTML頁面中,點擊FeatureLayer的要素,還能夠彈出相應的popup對話框以顯示FeatureLayer字段值的信息(在編寫代碼時須要設置)。下面講解用ArcMap發佈FeatureLayer的過程。數據庫


1、使用SQL Server建立一個數據庫併發

  FeatureLayer中要素的字段信息保存在地理數據庫中,咱們能夠使用SQL Server建立一個數據庫,在ArcCatalog中升級成地理數據庫。url

  打開SSMS,使用Windows身份驗證鏈接數據庫,也能夠使用SQL Server的身份登陸,但要記住登陸名和密碼,後面會用到。鏈接面板中的Server name的值也要記住,後面會用到。建立一個新的數據庫。spa

  打開SSMS

  建立數據庫

2、打開ArcCatalog,將數據庫升級成地理數據庫.net

  在ArcCatalog左側的Catalog Tree(目錄樹)中,打開Database Connections文件夾,雙擊Add Database Connection。在打開的對話框中,Instance是剛纔記住的Server name的名字,Authentication Type能夠是Windows身份驗證或SQL Server身份驗證,最下方的數據庫選擇剛纔新建的數據庫。3d

  增長數據庫鏈接

  數據庫鏈接成功

  右鍵剛纔添加的數據庫鏈接,選擇Enable Geodatabase,打開對話框。code

  Enable Geodatabase

  這裏要添加keycodes許可文件,它的目錄地址是C盤-Program Files-ESRI-License 10.x-sysgen-keycodes。server

  選擇keycodes文件  keycodes目錄地址

  添加keycodes文件成功

  添加keycodes文件後,點擊肯定,等待幾秒鐘後彈出數據庫成功升級成地理數據庫的提示框。blog

  數據庫升級成地理數據庫成功的提示框

  右鍵這個地理數據庫,選擇Import-FeatureClass(single)。ip

  導入要素到地理數據庫中

  Input Features是要導入到地理數據庫的數據,Output Location是這個地理數據庫的位置路徑,Output Feature Class是咱們爲導入到數據庫後的數據起的名字。在Field Map面板中列出了要素包含的字段名,要注意字段名不能包含括號(讀者能夠試一試爲字段名添加中文或英文括號,應該都是會報錯的)。輸入完成後點擊肯定,彈出導入成功的提示框。

  導入要素的對話框

  導入成功

  數據庫中的這個數據就是咱們要導入到ArcMap中,併發布成FeatureLayer的數據。這裏有兩點要注意的地方:①在ArcMap中不能使用普通的shapefile發佈FeatureLayer,應該先將shapefile導入到地理數據庫中,再將地理數據庫中的這個數據發佈成FeatureLayer ②在將普通shapefile導入到地理數據庫中時,不能直接複製-粘貼,而要經過上面Import導入的方式。

  地理數據庫中的數據

3、打開ArcMap,發佈FeatureLayer服務

  添加地理數據庫中的數據。

  在ArcMap中添加地理數據庫中的數據

  更改Table Of Contents(TOC,內容列表)中數據圖層的名字和符號。這裏根據「類別」這個字段進行了惟一值符號繪製。這裏對數據圖層的符號進行了更改,在發佈成FeatureLayer後,FeatureLayer的要素符號也會這樣顯示。但在調用ArcGIS JavaScript API時能夠編寫代碼進行符號的又一次渲染,並且渲染後的符號比在ArcMap中繪製的符號更飽滿、好看。

  更改數據圖層名字和符號

  更改數據圖層名字和顏色後

  在ArcMap中,File-Share As-Service,打開發布服務的對話框。

  發佈服務

  發佈服務對話框1

  選擇已有鏈接或者新建鏈接

  這裏能夠選擇已有鏈接或者新建一個ArcGIS Server鏈接,這裏選擇Publish和Administer均可以。

  新建ArcGIS Server鏈接 

  輸入url和帳戶密碼

  這裏有兩種方法添加ArcGIS server的鏈接:

  ①在Server URL中輸入ArcGIS Server的url。打開ArcGIS Server管理器,頁面上方地址欄上的url去掉manager就是咱們須要的url。在Authentication中輸入ArcGIS Server的帳號和密碼。

  ArcGIS Server url

   ②若是已將ArcGIS Server託管到portal中,則也能夠輸入portal的url和帳戶密碼。

  portal url

  下面輸入ArcGIS Server的url及帳戶密碼:

  輸入ArcGIS Sever的url及帳號密碼

  新建ArcGIS Server鏈接成功

  輸入portal的url及帳戶密碼:

  新建portal鏈接 

  新建portal鏈接成功

  選擇一個鏈接並更改Service name。選擇服務發佈到的文件夾,這裏選擇咱們新建的test文件夾,也能夠放在根目錄(root)裏。

  選擇一個鏈接並更改服務名字

  選擇服務發佈的文件夾

  彈出發佈服務的對話框。

  彈出發佈服務的對話框

  在左側的列表中,選擇Capabilities,在右側面板中勾選Feature Access。在Feature Access面板下,能夠查看並設置相關信息,這裏咱們不進行更改。

  勾選Feature Access 

  Featue Access的相關信息

  點擊上方"Analyze"進行分析檢查,若是報錯要改正。提示的警告能夠不更改,可是會影響服務發佈的質量。這裏不進行警告的更改。

  analyze分析服務

  點擊上方"Publish",由於剛纔的第一條警告沒有更改,因此等待一下子後會彈出"Copying Data to Server"的提示框,點擊肯定進行下一步。進行等待。這裏有個小提示,若是ArcMap很卡頓,等待的時間很長,那麼服務頗有可能發佈不成功。我在發佈服務時常常會出現服務發佈失敗的狀況,也沒有找到解決辦法,過一段時間再發布就行了(是什麼東西沒有開啓?)。

  publish 

  等待

  服務發佈成功

  服務發佈成功,打開ArcGIS Server管理器進行查看。

  在ArcGIS Server Manager中進行查看

  點擊左側「功能」,在「選擇與配置功能」面板下選中「Feature Access」,下方的REST URL就是咱們使用JS API在代碼中調用的url。

  在ArcGIS Server Manager查看FeatureAccess

 

文中使用SQL Server 201七、ArcCatalog10.六、ArcMap10.6,可能會與其餘版本發佈服務時出現不一樣。

推薦文章:https://blog.csdn.net/LoveCarpenter/article/details/52462207

相關文章
相關標籤/搜索