Buggy code:
public class VWorksheet extends ViewEntity { private final Worksheet worksheet ; private boolean upToDate = true ; private boolean collapsed = false ; private ArrayList < VHNode > headerViewNodes ; private int maxRowsToShowInNestedTables ; private Map < String , TablePager > tableId2TablePager = new HashMap < String , TablePager > ( ) ; private static Logger logger = LoggerFactory . getLogger ( VWorksheet . class ) ; VWorksheet ( String id , Worksheet worksheet , List < HNodePath > columns , VWorkspace vWorkspace ) { } private ArrayList < VHNode > initHeaderViewNodes ( HTable table ) { } private TablePager getTablePager ( Table table , int size ) { } public TablePager getTopTablePager ( ) { } public TablePager getNestedTablePager ( Table table ) { } public TablePager getTablePager ( String tableId ) { } public Map < String , TablePager > getTableId2TablePager ( ) { } public void setTableId2TablePager ( Map < String , TablePager > tableId2TablePager ) { } public String getWorksheetId ( ) { } public Worksheet getWorksheet ( ) { } public boolean isUpToDate ( ) { } public void setUpToDate ( boolean upToDate ) { } public boolean isCollapsed ( ) { } public void setCollapsed ( boolean collapsed ) { } public int getMaxRowsToShowInNestedTables ( ) { } public void setMaxRowsToShowInNestedTables ( int maxRowsToShowInNestedTables ) { } public ArrayList < VHNode > getHeaderViewNodes ( ) { } public ArrayList < String > getHeaderVisibleNodes ( ) { } private ArrayList < String > getVisibleViewNodes ( ArrayList < VHNode > list ) { } public ArrayList < String > getHeaderVisibleLeafNodes ( ) { } private ArrayList < String > getHeaderVisibleLeafNodes ( ArrayList < VHNode > list ) { } public boolean isHeaderNodeVisible ( String hnodeId ) { } private ArrayList < VHNode > generateOrganizedColumns ( JSONArray columns ) { ArrayList < VHNode > vNodes = new ArrayList < > ( ) ; for ( int i = 0 ; i < ( columns . length ( ) ) ; i ++ ) { JSONObject column = columns . getJSONObject ( i ) ; if ( ( column . has ( "id" ) ) && ( ( column . get ( "id" ) ) instanceof String ) ) { try { <START_BUG> VHNode vNode = new VHNode ( column . getString ( "id" ) , column . getString ( "name" ) ) ; <END_BUG> vNode . setVisible ( column . getBoolean ( "visible" ) ) ; if ( column . has ( "children" ) ) { ArrayList < VHNode > nestedNodes = generateOrganizedColumns ( column . getJSONArray ( "children" ) ) ; for ( VHNode nestedVNode : nestedNodes ) { vNode . addNestedNode ( nestedVNode ) ; } } vNodes . add ( vNode ) ; } catch ( Exception e ) { VWorksheet . logger . error ( ( "Error<seq2seq4repair_space>organizing<seq2seq4repair_space>column:" + ( column . toString ( ) ) ) , e ) ; } } } return vNodes ; } public void organizeColumns ( JSONArray columns ) { } public void organizeColumns ( ArrayList < VHNode > columns ) { } public void updateHeaderViewNodes ( ArrayList < VHNode > oldOrderedNodes ) { } private void addHeaderViewPath ( String path ) { } private void deleteHeaderViewPath ( ArrayList < VHNode > nodes , String path ) { } public void generateWorksheetListJson ( String prefix , PrintWriter pw ) { } }

Fix:
VHNode vNode = new VHNode ( column . getString ( "id" ) , column . get ( "name" ) . toString ( ) ) ;