Buggy code:
public class NavsWidget extends ContainerWidget { private static final Logger logger = LoggerFactory . getLogger ( ButtonDropdownWidget . class ) ; private static final String NAVS_INDEX_PREFIX = "navs-" ; private static final boolean USE_PRODUCTION_HELPER = false ; private static final String TOOLBOX_ICON = "//ttsvr//tooltwist//wbd//toolbox_icons//default_icon.png" ; @ Override protected void init ( WbdWidget instance ) throws WbdException { } @ Override public void getCodeInserters ( WbdGenerator generator , WbdWidget instance , UimData ud , CodeInserterList codeInserterList ) throws WbdException { } @ Override public String getLabel ( WbdWidget instance ) throws WbdException { } @ Override public WbdSizeInfo getSizeInfo ( WbdGenerator generator , WbdWidget instance ) throws WbdException { } @ Override public void renderForPreview ( WbdGenerator generator , WbdWidget instance , UimData ud , WbdRenderHelper rh ) throws WbdException { } @ Override public void renderForDesigner ( WbdGenerator generator , WbdWidget instance , UimData ud , WbdRenderHelper rh ) throws WbdException { } @ Override public void renderForJSP ( WbdGenerator generator , WbdWidget instance , UimHelper ud , WbdRenderHelper rh ) throws Exception { try { final int FIRST_ITEM_INDEX = 0 ; String rows = instance . getProperty ( "rows" , null ) ; String elementId = instance . getFinalProperty ( generator , "elementId" ) ; String type = instance . getFinalProperty ( generator , "type" ) ; String tabDirection = instance . getFinalProperty ( generator , "tabDirection" ) ; String justified = instance . getFinalProperty ( generator , "justified" ) ; String justifiedClass = "" ; if ( justified . equals ( "true" ) ) { justifiedClass = "<seq2seq4repair_space>nav-justified" ; } if ( ! ( elementId . equals ( "" ) ) ) { elementId = ( "id='" + elementId ) + "'<seq2seq4repair_space>" ; } rh . append ( ( ( "<div<seq2seq4repair_space>class='tabbable<seq2seq4repair_space>" + tabDirection ) + "\'>\n" ) ) ; StringBuffer tabNav = new StringBuffer ( ) ; tabNav . append ( ( ( ( ( ( "<ul<seq2seq4repair_space>" + elementId ) + "class='nav<seq2seq4repair_space>" ) + type ) + justifiedClass ) + "\'<seq2seq4repair_space>id=\'genericTab\'>\n" ) ) ; for ( int row = 0 ; row < ( Integer . valueOf ( rows ) ) ; row ++ ) { WbdChildIndex wbdChildIndex = new WbdChildIndex ( ( ( NavsWidget . NAVS_INDEX_PREFIX ) + row ) ) ; String classId = instance . getProperty ( "class" , wbdChildIndex ) ; String title = instance . getProperty ( "title" , wbdChildIndex ) ; if ( row == FIRST_ITEM_INDEX ) { tabNav . append ( ( ( "<seq2seq4repair_space><li<seq2seq4repair_space>class='active<seq2seq4repair_space>" + classId ) + "\'>\n" ) ) ; } else { tabNav . append ( ( ( "<seq2seq4repair_space><li<seq2seq4repair_space>class='" + classId ) + "\'>\n" ) ) ; } String id = "#" + ( title . toLowerCase ( ) . replace ( "<seq2seq4repair_space>" , "_" ) ) ; <START_BUG> tabNav . append ( ( ( ( ( "<seq2seq4repair_space><a<seq2seq4repair_space>href='" + id ) + "'<seq2seq4repair_space>data-toggle='tab'<seq2seq4repair_space>class='tab'>" ) + title ) + "<//a>\n" ) ) ; <END_BUG> tabNav . append ( "<seq2seq4repair_space><//li>\n" ) ; } tabNav . append ( "<seq2seq4repair_space><//ul>\n" ) ; if ( ! ( tabDirection . equalsIgnoreCase ( "tabs-below" ) ) ) { rh . append ( tabNav ) ; } rh . append ( "<seq2seq4repair_space><div<seq2seq4repair_space>class=\'tab-content\'>\n" ) ; int size = Integer . valueOf ( rows ) ; for ( int row = 0 ; row < size ; row ++ ) { String indexPrefix = row + "," ; WbdChildIndex wbdChildIndex = new WbdChildIndex ( ( ( NavsWidget . NAVS_INDEX_PREFIX ) + row ) ) ; String title = instance . getProperty ( "title" , wbdChildIndex ) ; if ( row == FIRST_ITEM_INDEX ) { rh . append ( ( ( "<seq2seq4repair_space><div<seq2seq4repair_space>class='tab-pane<seq2seq4repair_space>active'<seq2seq4repair_space>id='" + ( title . toLowerCase ( ) . replace ( "<seq2seq4repair_space>" , "_" ) ) ) + "\'>\n" ) ) ; } else { rh . append ( ( ( "<seq2seq4repair_space><div<seq2seq4repair_space>class='tab-pane'<seq2seq4repair_space>id='" + ( title . toLowerCase ( ) . replace ( "<seq2seq4repair_space>" , "_" ) ) ) + "\'>\n" ) ) ; } this . flowChildren_renderForJSP ( generator , instance , ud , rh , indexPrefix ) ; rh . append ( "<seq2seq4repair_space>\t<//div>\n" ) ; } rh . append ( "\t<seq2seq4repair_space><//div>\n" ) ; if ( tabDirection . equalsIgnoreCase ( "tabs-below" ) ) { rh . append ( tabNav ) ; } rh . append ( "\t<//div>\n" ) ; } catch ( Exception e ) { e . printStackTrace ( ) ; } } private void render ( WbdGenerator generator , WbdWidget instance , UimData ud , WbdRenderHelper rh ) { } private String codeToInsert ( WbdGenerator generator , WbdWidget instance , SnippetLocation location , String templateName , SnippetParam [ ] params ) throws WbdException { } public UimResult op_insertItem ( DesignerUIM designer , UimHelper uh , DesignerHelper helper , WbdWidget instance ) throws DinaaException , IOException , ServletException { } public UimResult op_removeItem ( DesignerUIM designer , UimHelper uh , DesignerHelper helper , WbdWidget instance ) throws DinaaException , IOException , ServletException { } public UimResult op_selectItem ( DesignerUIM designer , UimHelper uh , DesignerHelper helper , WbdWidget instance ) throws DinaaException , IOException , ServletException { } @ Override protected void loadPropertiesFromXml ( WbdGenerator generator , WbdWidget widget , XNodes node ) throws WbdException { } @ Override protected void writeProperties ( WbdGenerator generator , WbdWidget instance , PrintWriter pw , int indent ) throws WbdException { } @ Override public void renderProperties ( WbdGenerator generator , UimData ud , WbdRenderHelper rh , WbdWidget instance , WidgetId id , boolean displayOnly ) throws WbdException { } No newline ; at end ; of file ; }

Fix:
tabNav . append ( ( ( ( ( "<seq2seq4repair_space><a<seq2seq4repair_space>href='" + id ) + "'<seq2seq4repair_space>data-toggle='tab'>" ) + title ) + "<//a>\n" ) ) ;