Buggy code:
public abstract class MarkupContainer extends Component implements Iterable < Component > { private static final long serialVersionUID = 1L ; private static final Logger log = LoggerFactory . getLogger ( MarkupContainer . class ) ; private Object children ; public MarkupContainer ( final String id ) { } public MarkupContainer ( final String id , IModel < ? > model ) { } public MarkupContainer add ( final Component ... childs ) { } public final MarkupContainer addOrReplace ( final Component ... childs ) { } public final boolean autoAdd ( final Component component , MarkupStream markupStream ) { } public final boolean contains ( final Component component , final boolean recurse ) { } @ Override public final Component get ( final String path ) { } public MarkupStream getAssociatedMarkupStream ( final boolean throwException ) { } public IMarkupFragment getAssociatedMarkup ( ) { } public IMarkupFragment getMarkup ( final Component child ) { } public MarkupType getMarkupType ( ) { } public void internalAdd ( final Component child ) { } public Iterator < Component > iterator ( ) { } public final Iterator < Component > iterator ( Comparator < Component > comparator ) { } public void remove ( final Component component ) { } public final void remove ( final String id ) { } public final void removeAll ( ) { } public final void renderAssociatedMarkup ( final String openTagName , final String exceptionMessage ) { } public final MarkupContainer replace ( final Component child ) { } @ Override public MarkupContainer setDefaultModel ( final IModel < ? > model ) { } public final int size ( ) { } @ Override public String toString ( ) { } @ Override public String toString ( final boolean detailed ) { } public final < S extends Component , R > R visitChildren ( final Class < ? > clazz , final IVisitor < S , R > visitor ) { } public final < R > R visitChildren ( final IVisitor < Component , R > visitor ) { } private final void addedComponent ( final Component child ) { } @ Override final void initialize ( ) { } private final void children_add ( final Component child ) { } public final Component get ( int index ) { } private final Component children_get ( int index ) { } private final Object postprocess ( Object object , boolean reconstruct , MarkupContainer parent , int index ) { } private final Object children_get ( int index , boolean reconstruct ) { } private final String getId ( Object object ) { } private final Component children_get ( final String id ) { } private final int children_indexOf ( Component child ) { } private final Component children_remove ( Component component ) { } private final Component children_remove ( int index ) { } private final Object children_set ( int index , Object child , boolean reconstruct ) { } private final Component children_set ( int index , Component child ) { } private final int children_size ( ) { } private final Component put ( final Component child ) { } private final void removedComponent ( final Component component ) { } protected final void renderNext ( final MarkupStream markupStream ) { } @ Override protected void onComponentTagBody ( final MarkupStream markupStream , final ComponentTag openTag ) { } @ Override protected void onRender ( ) { <START_BUG> renderComponent ( ) ; <END_BUG> } private final void renderComponentTagBody ( final MarkupStream markupStream , final ComponentTag openTag ) { } protected final void renderAll ( final MarkupStream markupStream , final ComponentTag openTag ) { } private static class ComponentSourceEntry extends org . apache . wicket . ComponentSourceEntry { private ComponentSourceEntry ( MarkupContainer container , Component component , IComponentSource componentSource ) { } private static final long serialVersionUID = 1L ; @ Override protected void setChild ( MarkupContainer parent , int index , Component child ) { } } @ Override void removeChildren ( ) { } @ Override void detachChildren ( ) { } @ Override void internalMarkRendering ( boolean setRenderingFlag ) { } private Component [ ] copyChildren ( ) { } @ Override void onBeforeRenderChildren ( ) { } @ Override void onEnabledStateChanged ( ) { } @ Override void onVisibleStateChanged ( ) { } @ Override void onAfterRenderChildren ( ) { } public boolean hasAssociatedMarkup ( ) { } @ Override void setRenderAllowed ( ) { } private static class ChildList extends AbstractList < Object > implements IClusterable { private static final long serialVersionUID = - 7861580911447631127L ; private int size ; private Object [ ] childs ; public ChildList ( Object children ) { } @ Override public Object get ( int index ) { } @ Override public int size ( ) { } @ Override public boolean add ( Object o ) { } @ Override public void add ( int index , Object element ) { } @ Override public Object set ( int index , Object element ) { } @ Override public Object remove ( int index ) { } public void ensureCapacity ( int minCapacity ) { } } public final void swap ( int idx1 , int idx2 ) { } @ Override protected void onMarkupAttached ( ) { } private void createAndAddComponentsForWicketTags ( ) { } }

Fix:
internalRenderComponent ( ) ;