2017-06-05 124 views
1

當我們使用WL.Client.connect API We got access denied in the followingMobileFirst 7.1服務器訪問被拒絕使用WL.Client.connect API

服務器錯誤日誌的時候得到這個錯誤信息:

[錯誤] FWLSE0020E :Ajax請求異常:無法找到應用程序環境,應用程序=測試,版本= 1.0,環境= iphone [項目WLTestConnect]

[錯誤] FWLSE0117E:錯誤代碼:1,錯誤描述:INTERNAL_ERROR,錯誤消息:FWLSE0069E:An內部錯誤發生在項目請求期間編輯[項目WLTestConnect]找不到應用程序環境,應用程序=測試, null,SubscribeServlet = null,wl_anonymousUserRealm = null,wl_deviceAutoProvisioningRealm = null}。 [項目WLTestConnect] com.worklight.common.log.filters.ErrorFilter

[錯誤] FWLSE0335E:授權失敗:客戶端Id f5ac9a8cda443cfca33d1e7f926a71f90f8c67a1沒有在服務器上找到。 [項目WLTestConnect]

這裏的情景:

  1. 創建工作區A.你好MobileFirst項目
  2. 部署項目工作區A.
  3. 部署你好MobileFirst應用本地MobileFirst服務器iphone然後使用WL.Client.connect API。我們獲得了連接成功回調。
  4. 導出名爲WLTestConnect的MobileFirst項目。
  5. iPhone設備(iOS 10.2.1)仍在運行。
  6. 切換到新的工作區B.
  7. 導入WLTestConnect項目工作區B.
  8. 部署WLTestConnect項目到本地服務器MobileFirst。
  9. 在iPhone設備中使用WL.Client.connect,我們得到了拒絕訪問錯誤。

MobileFirst版本:7.1.0.00-20151214-1857 & 7.1.0.00-20170608-1107

有沒有辦法避免訪問被拒絕?

+0

請在第二次嘗試之前刪除設備上先前安裝的應用程序副本。 – krckumar

+0

我們在生產env有同樣的問題。很難告訴我們的客戶刪除一個重複安裝的應用程序。是否有可能使用任何代碼來避免這種情況? – DannyYang

+0

問題: 1)什麼DB?在這兩個工作區中它指向相同的數據庫還是不同的? 2)在第9步中是同一個設備還是新的? –

回答

1

我們發現問題的解決方法:

設置工作燈。屬性文件

  1. mfp.session.independent =假
  2. 註釋 「#mfp.attrStore.type =數據庫」

然後連接成功!

0

這是一個非常有效的錯誤消息和預期行爲。當您從MobileFirst Studio中的一個工作區移到另一個工作區時,它會創建MobileFirst服務器的新副本以及保存此服務器數據的數據庫。

該應用程序嘗試連接到「新的」服務器和錯誤消息實際上是說,由於其DB沒有這種設備連接到它的任何歷史上的服務器無法識別該設備。

+0

是的,它不預期的行爲(我們嘗試模擬生產服務器的情況)。我們在生產環境中遇到了拒絕訪問問題:我們安裝了新的MobileFirst Server實例(使用新的數據庫)並使用IHS重定向新實例。然後我們得到了同樣的錯誤 – DannyYang

+0

因爲我們需要將當前項目遷移到具有新數據庫的新服務器。舊的是崩潰。 – DannyYang

+0

這是您說新實例使用新數據庫時的正確行爲。您應該將IHS配置爲粘滯會話,以便來自一臺設備的所有流量始終發送到服務器中的同一節點。 – Srik