0

I'm experiencing a strange behaviour of FlowRegistry:

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

Flows path is: src/main/resources/web/flows/[flowName]/[flowName]-flow.xml

If I deploy my war on a Tomcat 7, flow's id will be [flowName]. If I deploy the same war on Jboss EAP 6.3, flow's id will be [flowName]-flow. I checked for some spring libs deployed inside jboss, in case of different version, but I didn't find anyone.

Can somebody explain this behaviour? According to Spring Webflow - How to Get List of FLOW IDs, Tomcat behaviour is right and it's the behaviour that I'm used, on contrary Jboss is behaving like base-path is not specified.

Community
  • 1
  • 1
ElPysCampeador
  • 399
  • 1
  • 4
  • 14
  • Sounds like a bug. Is the Jboss EAP 6.3 running on your local machine? Btw the unofficial standard is to put the flows inside the WEB-INF lib directory. src\main\webapp\WEB-INF\flows (where "flows" = your base-path). – Selwyn Apr 24 '15 at 08:49
  • It's a standalone running local. I think is a problem of the classpath scan when the ear/war is not unpacked, because in some other parts i found strange types of resources. I know that usually you put it under WEB-INF but i need to scan jars to find flow config. Thats because I defined a standard where 1jar=1Function, 1Function=nFlow.xml. so i need them in src/main/resources and meta-inf is overbooked by every jar so I prefere to not scan it. – ElPysCampeador Apr 24 '15 at 09:13
  • Webflow wasn't designed to be used in such a non-standard way. I think your best bet is to fix the bug yourself. Set your log4j.xml log level to "debug" for "org.springframework.webflow" package path and try to determine where the flow scanning occurs in both cases tomcat 7 and Jboss. Try to determine why the "-flow" is being pulled in the Jboss case and see if you can maybe @ Override certain methods as a temporary workaround. It might be a simple fix. – Selwyn Apr 24 '15 at 10:48

0 Answers0