2016-07-14 5 views
2

私のアプリケーションは約80%のSpring MVCですが、私はかなりの量のWebflowを使用しています。私は現在、Spring MVC SimpleUrlHandlerMappingを使用してWebflowにディスパッチしています。これは、私がどのように「想定している」わけではありません。Spring MVCからSpring Webflowへのディスパッチ

次のように私のフロー定義が定義されている:

  • /WEB-INF/flows/process1/reservation/reservation-flow.xml
  • /WEB-INF /フロー/プロセス1が/変更/モディファイflow.xml
  • /WEB-INF/flows/process2/reservation/reservation-flow.xml
  • /WEB-INF/flows/process2/modify/modify-flow.xml

私がしたいです〜する次のURLを経由してアクセスすることができ:

マイフローレジストリBeanは次のようになります。

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

のWebflowに派遣する私のjavascriptのはこのようになります(ジャバスクリプトスニペットは、それは非常に複雑なページです):

var form = $('<form action="${pageContext.request.contextPath}/process1/reservation/reservation.html" method="POST">'); 

    form.append('<input name="param1" value="' + record.param1 + '" />'); 
    form.append('<input name="param2" value="' + record.param2 + '" />'); 
    form.append('</form>'); 
    submitForm(form); 

を今本当の問題のために:私はそれのためにURLハンドラマッピングを設定するにはどうすればよい、それがあるかどうかSimpleUrlHandlerMappingなど

ありがとうございます!

+0

「FlowHandlerMapping」の代わりに「SimpleUrlHandlerMapping」を使用した理由があります。あなたが「想定している」方法でしょうか?あなたが求めていることを正しく理解すれば、 'FlowHandlerMapping'はあなたが望むものを与えるべきではありませんか? – dbreaux

+0

@dbreauxに言及しているように、FlowHandlerMappingを使用していないという理由がありますか。フローフローの設定ファイルでサブフローを使用してさらに遷移を追加してみましたか? –

+0

私がFlowHandlerMappingを使用しなかった理由は、それが私のために働いたことがないということです。私のベースパスの下 、私はこれを持っているでしょう: http://example.com/context/process1/reservation/reservation:私はそれがにマップするために期待される /process1/reservation/reservation.xml。 html 運がありません。 – Jason

答えて

0

あなたは春MVCを通じて、ウェブの流れにリクエストをディスパッチする場合通常、我々は たいFlowHandlerAdapterを設定している:

<!-- Enables FlowHandler URL mapping --> 
<bean class="org.springframework.webflow.mvc.servlet.FlowHandlerAdapter"> 
    <property name="flowExecutor" ref="flowExecutor" /> 
</bean> 

そしてflowMapping定義:詳細について

<!-- Maps request paths to flows in the flowRegistry; 
    e.g. a path of /movie/showtime looks for a flow with id "movie/showtime" --> 
<bean class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping"> 
    <property name="flowRegistry" ref="flowRegistry"/> 
    <property name="order" value="0"/> 
</bean> 

をSpringドキュメントを参照することもできます。

関連する問題