2013-04-09 71 views
0

我在Webflow的水平異常處理程序不捕捉異常

<exception-handler bean="webflowExceptionHandlerBean"/> 

另外我有兩個不同的流,流A和流B.流B具有excepton處理程序是流A的子流

流甲

<flow> 
    <on-start> 
    <!-- SOME SET --> 
    </on-start> 
    <view-state id="viewStateA"> 
    <transition id="goToFlowB" to="flowB"/> 
    </view-state> 
    <subflow-state id="flowB" subflow="flowB"> 
    </subflow-state> 
</flow> 

流B

<flow> 
    <on-start> 
    <!-- SOME SET --> 
    </on-start> 
    <view-state id="flowB"> 
    <on-entry> 
    <!-- HERE THE EXCEPTION IS THROWN --> 
    </on-entry> 
    <transition id="goToT1" to="t1"/> 
    </view-state> 
</flow> 

所以,當一個異常在上進入的流量B中不被webflowExceptionHandlerBean

的配置webflowExceptionHandlerBean趕上實現FlowExecutionExceptionHandler

被拋出

我試過使用,它的工作,但我wana只使用一個全球外部在每個流程的處理程序上。

你知道發生了什麼事嗎? 我錯過了什麼嗎?

回答

0

有像下面

<flow xmlns="http://www.springframework.org/schema/webflow" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/webflow 
          http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd" abstract="true"> 
<exception-handler bean="webflowExceptionHandlerBean"/> 
</flow> 

抽象流程定義之後,繼承抽象流進你的流A和流B像下面

<flow xmlns="http://www.springframework.org/schema/webflow" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/webflow 
          http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd" parent="abstract-flow"> 

你應該能夠在全球範圍內使用處理您的例外自定義異常處理程序