Cleanup code using the new tool release

Also log when an unknown profile is specified.
diff --git a/java/org/apache/catalina/loader/LocalStrings.properties b/java/org/apache/catalina/loader/LocalStrings.properties
index 7c6c976..521c90f 100644
--- a/java/org/apache/catalina/loader/LocalStrings.properties
+++ b/java/org/apache/catalina/loader/LocalStrings.properties
@@ -67,3 +67,4 @@
 webappLoader.stopError=Error stopping the loader
 webappLoader.stopping=Stopping this Loader
 webappLoader.unknownClassLoader=Unknown class loader [{0}] of class [{1}]
+webappLoader.unknownProfile=Unknown Jakarta profile [{0}] specified, the default profile will be used instead
diff --git a/java/org/apache/catalina/loader/WebappLoader.java b/java/org/apache/catalina/loader/WebappLoader.java
index a9d5ccc..5015b93 100644
--- a/java/org/apache/catalina/loader/WebappLoader.java
+++ b/java/org/apache/catalina/loader/WebappLoader.java
@@ -21,9 +21,7 @@
 import java.io.File;
 import java.io.FilePermission;
 import java.io.IOException;
-import java.lang.instrument.ClassFileTransformer;
 import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.nio.charset.StandardCharsets;
@@ -367,17 +365,14 @@
 
             // Set Jakarta class converter
             if (getJakartaConverter() != null) {
-                ClassFileTransformer transformer = null;
+                EESpecProfile profile = null;
                 try {
-                    EESpecProfile profile = EESpecProfile.valueOf(getJakartaConverter());
-                    transformer = ClassConverter.class.getConstructor(EESpecProfile.class).newInstance(profile);
-                    // FIXME: after Migration 0.3
-                    //transformer = new ClassConverter(EESpecProfile.valueOf(getJakartaConverter()));
-                } catch (InvocationTargetException | NoSuchMethodException | IllegalArgumentException ignored) {
-                    // Use default value with no argument constructor
-                    transformer = new ClassConverter();
+                    profile = EESpecProfile.valueOf(getJakartaConverter());
+                } catch (IllegalArgumentException ignored) {
+                    // Use default value
+                    log.warn(sm.getString("webappLoader.unknownProfile", getJakartaConverter()));
                 }
-                classLoader.addTransformer(transformer);
+                classLoader.addTransformer((profile != null) ? new ClassConverter(profile) : new ClassConverter());
             }
 
             // Configure our repositories