Buggy code:
public class JerichoJspParserUtil { public static Map < String , Rule > RULES_MAP = new HashMap < String , Rule > ( ) ; public static final Logger logger = Logger . getLogger ( JerichoJspParserUtil . class ) ; public static final DbLogger dbLogger = DbLogger . getInstance ( ) ; private static StringWriter consoleWriter ; private static WriterAppender appender ; public static void clearConsoleWriter ( ) { } public static String getDebuggerOutput ( ) { } public static void initialize ( ) { } public static void convertToHTML5 ( String filePath , boolean isIncludeFile , String textfileName ) throws HTML5ParserException , FileNotFoundException , IOException { <START_BUG> JerichoJspParserUtil . dbLogger . insertPage ( filePath , isIncludeFile , textfileName ) ; <END_BUG> if ( ! isIncludeFile ) { JerichoJspParserUtil . logger . info ( ( "Input<seq2seq4repair_space>File:<seq2seq4repair_space>" + filePath ) ) ; } else { JerichoJspParserUtil . logger . info ( ( "Include<seq2seq4repair_space>File:<seq2seq4repair_space>" + filePath ) ) ; } File sourceFile = new File ( filePath ) ; Source source = new Source ( new FileInputStream ( sourceFile ) ) ; source . fullSequentialParse ( ) ; if ( ! ( HTML5Util . isHtml5Page ( source ) ) ) { int numOfConvertedIncludeFiles = 0 ; List < String > includeFilePathList = HTML5Util . getIncludeFilePaths ( filePath ) ; JerichoJspParserUtil . printIncludeFiles ( includeFilePathList ) ; JerichoJspParserUtil . logger . debug ( "Conversion<seq2seq4repair_space>started..." ) ; OutputDocument outputDocument = new OutputDocument ( source ) ; HeaderElementFacade . fixHeaderElementObsoleteFeatures ( source , outputDocument , isIncludeFile ) ; BodyElementFacade . fixAllBodyElementObsoleteFeatures ( source , outputDocument ) ; for ( String includeFilePath : includeFilePathList ) { try { JerichoJspParserUtil . convertToHTML5 ( includeFilePath , true , textfileName ) ; numOfConvertedIncludeFiles = numOfConvertedIncludeFiles + 1 ; } catch ( HTML5ParserException e ) { e . printStackTrace ( ) ; JerichoJspParserUtil . dbLogger . logError ( filePath , e . getType ( ) , e . getMessage ( ) , e . getTagInfo ( ) ) ; } } if ( ( includeFilePathList . size ( ) ) == numOfConvertedIncludeFiles ) { if ( HTML5Util . isCommonTagsCountMatch ( source , outputDocument ) ) { JerichoJspParserUtil . saveOutputDoc ( sourceFile , outputDocument ) ; JerichoJspParserUtil . logger . info ( ( filePath + "<seq2seq4repair_space>converted<seq2seq4repair_space>successfully!" ) ) ; } else { JerichoJspParserUtil . logger . error ( ( filePath + "<seq2seq4repair_space>has<seq2seq4repair_space>not<seq2seq4repair_space>been<seq2seq4repair_space>saved.<seq2seq4repair_space>Source<seq2seq4repair_space>and<seq2seq4repair_space>output<seq2seq4repair_space>elements<seq2seq4repair_space>not<seq2seq4repair_space>matched!" ) ) ; throw new HTML5ParserException ( "Content<seq2seq4repair_space>Exception" , "File<seq2seq4repair_space>Formatting<seq2seq4repair_space>Error:<seq2seq4repair_space>Tags<seq2seq4repair_space>Missing" , null ) ; } } else { JerichoJspParserUtil . logger . error ( ( filePath + "<seq2seq4repair_space>has<seq2seq4repair_space>not<seq2seq4repair_space>been<seq2seq4repair_space>saved.<seq2seq4repair_space>Errors<seq2seq4repair_space>in<seq2seq4repair_space>include<seq2seq4repair_space>file(s)." ) ) ; throw new HTML5ParserException ( "Content<seq2seq4repair_space>Exception" , "Include<seq2seq4repair_space>file<seq2seq4repair_space>conversion<seq2seq4repair_space>failed." , null ) ; } } else { JerichoJspParserUtil . logger . info ( "This<seq2seq4repair_space>page<seq2seq4repair_space>is<seq2seq4repair_space>already<seq2seq4repair_space>a<seq2seq4repair_space>HTML<seq2seq4repair_space>5<seq2seq4repair_space>page!" ) ; } } public static void saveOutputDoc ( File sourceFile , OutputDocument outputDoc ) throws IOException { } public static void printIncludeFiles ( List < String > includeFilePathList ) { } }

Fix:
JerichoJspParserUtil . dbLogger . insertPage ( filePath , isIncludeFile , textfileName , true ) ;