常見問題

知識包服務“不生(shēng)效”

一般這種情況是快速測試,規則計(jì)算(suàn)正常,但(dàn)調用知識包服務規則計(jì)算(suàn)結果與快速測試結果不一緻。

需要檢查如下幾方面:

  • 調用的知識包服務傳參是否與快速測試一緻
  • 調用的知識包服務地址是否與快速測試一緻
  • 知識包是否未發布新版本,或者發布後未在【查看當前已發布知識包版本】中将最新發布的版本啓用

The object【xxx】does not exist or is not initialized

當調用規則計(jì)算(suàn)時(shí),遇到變量對象不存在或者未初始化異常時(shí),說明(míng)當前規則計(jì)算(suàn)內(nèi)存中找不到xxx變量對應的實例對象,此時(shí)我們可(kě)以以下幾種方法解決:

第一種:通(tōng)過觸發規則時(shí)傳入變量實例對象。

  • 快速測試時(shí),在輸入數(shù)據中添加變量對象。

    img

  • Java API調用規則時(shí),通(tōng)過 session.insert(xxx)
  • Rest 調用時(shí),在請(qǐng)求的數(shù)據中添加變量對象

    image-20220705142448090

第二種:可(kě)以在參數(shù)庫中定義一個(gè)變量類型的參數(shù)。比如:定義一個(gè)參數(shù)叫【新用戶】,類型設置為(wèi)【用戶】變量,在規則編輯時(shí),【對象實例化】方法賦值給【新用戶】這個(gè)參數(shù),後續使用參數(shù)進行(xíng)規則操作(zuò)即可(kě)。

【對象實例化】方法中的完整類路徑指的是,實例化變量的類路徑屬性填的字符串。

image-20220705142448090

Permission denied for project [601]

一般打開(kāi)頁面時(shí)報“Permission denied for project [601]”提示,說明(míng)你(nǐ)沒有(yǒu)當前頁面的權限。

還(hái)有(yǒu)一種情況是,當編輯一個(gè)文件,長時(shí)間(jiān)沒有(yǒu)保存,登錄過期也會(huì)彈出這個(gè)提示。

img

這個(gè)時(shí)候一定要注意,不要整個(gè)刷新或關閉當前頁面,因為(wèi)如果之前沒保存,重新打開(kāi)後,将丢掉未保存部分。

正确的操作(zuò)是:

  1. 在當前浏覽器(qì)打開(kāi)一個(gè)新的浏覽器(qì)标簽頁,重新登錄URule
  2. 登錄成功後,會(huì)到之前提示“Permission denied for project [601]”的頁面進行(xíng)保存即可(kě)。

規則設計(jì)界面的左側菜單樹(shù)加載比較慢

可(kě)找到URule Pro4的數(shù)據庫的URULEFILE表,分别給NAME、PROJECTID、PACKAGEID、TYPE_字段加上(shàng)索引。

業務系統調用知識包計(jì)算(suàn)結果與快速測試的結果不一緻

首先,需要清楚快速測試計(jì)算(suàn)與調用知識包計(jì)算(suàn)的區(qū)别:

  • 快速測試計(jì)算(suàn)是用當前規則文件進行(xíng)編譯計(jì)算(suàn),可(kě)以立即查看規則修改後的計(jì)算(suàn)結果。
  • Java Api或Rest Api調用知識包是拿(ná)發布知識包時(shí)的規則文件編譯好的版本進行(xíng)計(jì)算(suàn)。

所以當出現快速測試結果和(hé)Api調用知識包計(jì)算(suàn)結果不一緻時(shí),可(kě)通(tōng)過如下步驟依次排查解決:

  1. 先确認兩種方式的入參是否一緻,

    1. 這裏需要注意的是入參Rest請(qǐng)求數(shù)據格式變量結構體(tǐ)和(hé)參數(shù)結構如下:
      [{
        "name": "變量名稱",
        "fields": {
            "id": "",
            "age": 0
        },
        "class": "xxx.xxx.xxxx"
      },
      {
        "name": "參數(shù)",
        "fields": {
            "param1": ""
        },
        "class": "java.util.HashMap"
      }]
      
      可(kě)參考 Rest配置與調用.
    2. 如果是java api調用的話(huà)入參傳參 可(kě)參考 java調用知識包 和(hé) 可(kě)參考 GeneralEntity的使用. .
  2. 檢查知識包版本是否啓用最新的版本,或者重新發布知識包版本并啓用最新版本。另外,如果用的是客戶端模式,可(kě)以重啓一下客戶端,防止知識包未重新拉取。

  3. 再根據輸出的計(jì)算(suàn)執行(xíng)日志(zhì)排查,Java Api調用知識包的日志(zhì)輸出配置具體(tǐ)可(kě)以參照 調試信息輸出.

results matching ""

    No results matching ""