Buggy code:
private static final int FLAG_RENDER_BODY_ONLY = 32 ; private static final int FLAG_RENDERING = 33554432 ; private static final int FLAG_VERSIONED = 8 ; private static final int FLAG_VISIBLE = 16 ; private static final Logger log = LoggerFactory . getLogger ( Component . class ) ; private static final String MARKUP_ID_ATTR_NAME = "id" ; private static MetaDataKey MARKUP_ID_KEY = new MetaDataKey ( String . class ) { private static final long serialVersionUID = 1L ; } ; private static final long serialVersionUID = 1L ; protected static final int FLAG_RESERVED1 = 256 ; protected static final int FLAG_RESERVED2 = 512 ; protected static final int FLAG_RESERVED3 = 1024 ; protected static final int FLAG_RESERVED4 = 2048 ; protected static final int FLAG_RESERVED5 = 65536 ; protected static final int FLAG_RESERVED6 = 131072 ; protected static final int FLAG_RESERVED7 = 262144 ; protected static final int FLAG_RESERVED8 = 524288 ; static final MetaDataKey ADDED_AT_KEY = new MetaDataKey ( String . class ) { private static final long serialVersionUID = 1L ; } ; static final MetaDataKey CONSTRUCTED_AT_KEY = new MetaDataKey ( String . class ) { private static final long serialVersionUID = 1L ; } ; static final int FLAG_ATTACH_SUPER_CALL_VERIFIED = 268435456 ; static final int FLAG_ATTACHED = 536870912 ; static final int FLAG_ATTACHING = 1073741824 ; static final int FLAG_PREPARED_FOR_RENDER = 67108864 ; private ArrayList behaviors = null ; private int flags = ( ( ( ( Component . FLAG_VISIBLE ) | ( Component . FLAG_ESCAPE_MODEL_STRINGS ) ) | ( Component . FLAG_VERSIONED ) ) | ( Component . FLAG_ENABLED ) ) | ( Component . FLAG_IS_RENDER_ALLOWED ) ; private String id ; private MetaDataEntry [ ] metaData ; private MarkupContainer parent ; int markupIndex = - 1 ; IModel model ; public Component ( final String id ) { } public Component ( final String id , final IModel model ) { } public Component add ( final IBehavior behavior ) { } public final void afterRender ( ) { } public final void attach ( ) { } private final void internalBeforeRender ( ) { } private static final MetaDataKey FEEDBACK_LIST = new MetaDataKey ( List . class ) { private static final long serialVersionUID = 1L ; } ; public final void beforeRender ( ) { } public final boolean continueToOriginalDestination ( ) { } public final void debug ( final String message ) { } public final void detach ( ) { } public final void detachBehaviors ( ) { } public void detachModels ( ) { } public final void error ( final Serializable message ) { } public final void fatal ( final String message ) { } public final MarkupContainer findParent ( final Class c ) { } public final MarkupContainer findParentWithAssociatedMarkup ( ) { } public final Application getApplication ( ) { } public final List getBehaviors ( ) { } public final String getClassRelativePath ( ) { } public final IComponentBorder getComponentBorder ( ) { } public final IConverter getConverter ( ) { } public IConverter getConverter ( Class type ) { } public final boolean getEscapeModelStrings ( ) { } public final FeedbackMessage getFeedbackMessage ( ) { } public String getId ( ) { } public final IModel getInnermostModel ( ) { } public Locale getLocale ( ) { } public final Localizer getLocalizer ( ) { } public final ValueMap getMarkupAttributes ( ) { } public String getMarkupId ( ) { String markupId = ( ( String ) ( getMetaData ( Component . MARKUP_ID_KEY ) ) ) ; if ( markupId == null ) { Page page = findPage ( ) ; if ( page == null ) { throw new WicketRuntimeException ( ( "This<seq2seq4repair_space>component<seq2seq4repair_space>is<seq2seq4repair_space>not<seq2seq4repair_space>(yet)<seq2seq4repair_space>coupled<seq2seq4repair_space>to<seq2seq4repair_space>a<seq2seq4repair_space>page.<seq2seq4repair_space>It<seq2seq4repair_space>has<seq2seq4repair_space>to<seq2seq4repair_space>be<seq2seq4repair_space>able<seq2seq4repair_space>" + ( "to<seq2seq4repair_space>find<seq2seq4repair_space>the<seq2seq4repair_space>page<seq2seq4repair_space>it<seq2seq4repair_space>is<seq2seq4repair_space>supposed<seq2seq4repair_space>to<seq2seq4repair_space>operate<seq2seq4repair_space>in<seq2seq4repair_space>before<seq2seq4repair_space>you<seq2seq4repair_space>can<seq2seq4repair_space>call<seq2seq4repair_space>" + "this<seq2seq4repair_space>method<seq2seq4repair_space>(Component#getMarkupId)" ) ) ) ; } markupId = ( getId ( ) ) + ( page . getAutoIndex ( ) ) ; char c = markupId . charAt ( 0 ) ; if ( ! ( Character . isLetter ( c ) ) ) { markupId = "id" + markupId ; <START_BUG> markupId = markupId . replace ( "_" , "__" ) ; <END_BUG> markupId = markupId . replace ( '.' , '_' ) ; markupId = markupId . replace ( '-' , '_' ) ; } setMetaData ( Component . MARKUP_ID_KEY , markupId ) ; } return markupId ; } public final Serializable getMetaData ( final MetaDataKey key ) { } public final IModel getModel ( ) { } public final Object getModelObject ( ) { } public final String getModelObjectAsString ( ) { } public final String getModelObjectAsString ( final Object modelObject ) { } public final boolean getOutputMarkupId ( ) { } public final Page getPage ( ) { } public final IPageFactory getPageFactory ( ) { } public final String getPageRelativePath ( ) { } public final MarkupContainer getParent ( ) { } public final String getPath ( ) { } public final boolean getRenderBodyOnly ( ) { } public final Request getRequest ( ) { } public final RequestCycle getRequestCycle ( ) { } public final Response getResponse ( ) { } public Session getSession ( ) { } public long getSizeInBytes ( ) { } public final String getString ( final String key ) { } public final String getString ( final String key , final IModel model ) { } public final String getString ( final String key , final IModel model , final String defaultValue ) { } public final String getStyle ( ) { } public String getVariation ( ) { } public final boolean hasBeenRendered ( ) { } public final boolean hasErrorMessage ( ) { } public final boolean hasFeedbackMessage ( ) { } public final void info ( final String message ) { } public final void internalAttach ( ) { } public final void internalDetach ( ) { } public final boolean isActionAuthorized ( Action action ) { } public final boolean isAncestorOf ( final Component component ) { }

Fix:
markupId = org . apache . wicket . util . string . Strings . replaceAll ( markupId , "_" , "__" ) . toString ( ) ;