2014-02-17 37 views
2

我在/ WEB-INF/pageFlows下擁有所有流程文檔。Spring Webflow子流程 - 無法找到參考流程

<webflow:flow-registry id="flowRegistry" flow-builder-services="flowBuilderServices" base-path="/WEB-INF/pageFlows"> 
    <webflow:flow-location-pattern value="/**/*-flow.xml"/> 
</webflow:flow-registry> 

當使用在子流元素的子流屬性Eclipse的快速尋址功能,我可以看到,我已經包括在我的項目流的列表...但它僅加載流的一半我其實在項目中。任何不在該提前列表中的流都將在Eclipse中創建一個ERROR警告。

所以,現在我有幾個錯誤在我的項目中報告時,實際上沒有任何錯誤。我想擺脫這些錯誤信息。任何解決這些參考錯誤的建議?

讀這樣的錯誤消息: 「引用流[流量名稱]無法找到」

+0

答案並沒有解決我的問題。我發現的是在IDE驗證中存在一個錯誤。在子流狀態下使用時,Spring組件無法識別所有引用的流。您必須處理IDE中的錯誤,並知道它們可以被忽略,或者您可以通過轉到Window> Preferences> Spring來關閉這部分Spring驗證。在Spring下展開「Web Flow Validator」。向下滾動到「子流程狀態規則」並取消選中它。保存更改並清理項目。錯誤將消失。 – daddygames

回答

0

根據您的流量註冊表流程定義:

1)確保你的所有流程定義文件在WEB-INF /頁面流和

2)所有的流程文件名是-flow.xml

0

這確實是一個bug結束。你的配置很好。只要您使用基路徑和文件名之間的路徑作爲您的子流屬性的子流屬性中引用的流標識符。在webflow文檔的section 10中找到詳細的解釋。

我使用「/**/flow.xml」作爲流定位模式,而我的Eclipse的type-ahead只提供給我一個文件名(flow.xml)作爲建議。它應該實際上檢測基本路徑和文件名之間的路徑部分,並向我顯示一個列表。

我設法通過刪除子流程元素,保存文件和重新鍵入子流程元素來臨時刪除錯誤註釋的錯誤。

刪除子流程元素並保存文件後,錯誤消失。

輸入子流程元素後,錯誤不會再出現。

該錯誤在清潔&版本後重新出現。然後重複上述步驟使其消失。

我目前在使用Eclipse 4.4

1

這是Spring驗證的一個BUG。

您可以禁用「子流狀態規則」驗證程序將其刪除。

查看下面的截圖。

screenshot-1 screenshot-2