PipelineInitialization pipelineInitialization =
volantisBean.getPipelineInitialization();
XMLPipelineFactory xmlFactory =
pipelineInitialization.getPipelineFactory();
ExpressionFactory factory =
xmlFactory.getExpressionFactory();
// obtain the default EnvironmentFactory
EnvironmentFactory environmentFactory =
EnvironmentFactory.getDefaultInstance();
// factor an EnvironmentInteractionTracker
EnvironmentInteractionTracker envTracker =
environmentFactory.createInteractionTracker();
// obtain the rootEnvironmentInteraction and push onto the tracker
EnvironmentInteraction envInteraction =
environmentContext.createRootEnvironmentInteraction();
envTracker.pushEnvironmentInteraction(envInteraction);
environmentContext.pushEnvironmentInteraction(envTracker);
// See if an expression context already exists or not; an expression
// context is shared throughout the lifetime of the request but is
// lazily instantiated
ExpressionContext expressionContext =
MCSExpressionHelper.getExpressionContext(context);
if (expressionContext == null) {
// create the expression context, register the functions that are
// needed and store this expression context away in the page
// context
expressionContext =
factory.createExpressionContext(
envTracker,
NamespaceFactory.getDefaultInstance().
createPrefixTracker());
registerFunctions(expressionContext);