public Compiler createCompiler ( ) { if ( jspCompiler != null ) { return jspCompiler ; } jspCompiler = null ; if ( options . getCompilerClassName ( ) != null ) { jspCompiler = createCompiler ( options . getCompilerClassName ( ) ) ; } else { if ( options . getCompiler ( ) == null ) { jspCompiler = createCompiler ( "org.apache.jasper.compiler.JDTCompiler" ) ; if ( jspCompiler == null ) { jspCompiler = createCompiler ( "org.apache.jasper.compiler.AntCompiler" ) ; } } else { jspCompiler = createCompiler ( "org.apache.jasper.compiler.AntCompiler" ) ; if ( jspCompiler == null ) { jspCompiler = createCompiler ( "org.apache.jasper.compiler.JDTCompiler" ) ; } } } if ( jspCompiler == null ) { throw new IllegalStateException ( Localizer . getMessage ( "jsp.error.compiler.config" , options . getCompilerClassName ( ) , options . getCompiler ( ) ) ) ; } jspCompiler . init ( this , jsw ) ; return jspCompiler ; }
Create a Compiler object based on some init param data . This is not done yet . Right now we re just hardcoding the actual compilers that are created .