Global Valve execution ordering in JBoss EAP 6
Issue
In EAP 5, when multiple valves are defined in $JBOSS_HOME/server/$PROFILE/deploy/jbossweb.sar/server.xml, the valves are invoked in the order that they are defined:
...(snip)...
<Valve className="org.jboss.samplevalves.testValve1" ></Valve>
<Valve className="org.jboss.samplevalves.testValve2" ></Valve>
<Valve className="org.jboss.samplevalves.testValve3" ></Valve>
</Host>
</Engine>
But, in EAP 6, when multiple valves are defined as Global Valve inside web subsystem in standalone.xml/domain.xml, the valves execution ordering varies with every start-up.
/subsystem=web/valve=testValve1:add(class-name=org.jboss.samplevalves.testValve1,module=samplevalves,enabled=true)
/subsystem=web/valve=testValve2:add(class-name=org.jboss.samplevalves.testValve2,module=samplevalves,enabled=true)
/subsystem=web/valve=testValve3:add(class-name=org.jboss.samplevalves.testValve3,module=samplevalves,enabled=true)
<subsystem xmlns="urn:jboss:domain:web:1.5" default-virtual-server="default-host" native="false">
...(snip)...
<valve name="testValve1" module="samplevalves" class-name="org.jboss.samplevalves.testValve1"></valve>
<valve name="testValve2" module="samplevalves" class-name="org.jboss.samplevalves.testValve2"></valve>
<valve name="testValve3" module="samplevalves" class-name="org.jboss.samplevalves.testValve3"></valve>
</subsystem>
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.