throws IntrospectionException, InvocationTargetException, NoSuchMethodException, IllegalAccessException {
Element parentElement = createElement( document, step.type(), step );
if( step instanceof UrlRewriteFlowDescriptor ) {
UrlRewriteFlowDescriptor flow = (UrlRewriteFlowDescriptor)step;
for( Object child: flow.steps() ) {
UrlRewriteStepDescriptor childStep = (UrlRewriteStepDescriptor)child;
Element childElement = createStep( document, childStep );
parentElement.appendChild( childElement );
}
}