JDK 21 异常处理
在 JDK21 中,为了控制一组对象工厂类,针对 javax.naming 包引入 jdk.jndi.object.factoriesFilterjdk.jndi.ldap.object.factoriesFilter 特性。支持这些对象工厂类从对象引用实例化对象。完成 JDK21 更新后,在上下文查找过程中,您可能会看到如下异常:
Exception in thread "main" java.lang.ClassCastException: class javax.naming.Reference cannot be cast to class jakarta.resource.cci.ConnectionFactory (javax.naming.Reference is in module java.naming of loader 'bootstrap'; jakarta.resource.cci.ConnectionFactory is in unnamed module of loader 'app')
要处理此异常,请在 jdk.jndi.object.factoriesFilterjdk.jndi.ldap.object.factoriesFilter 特性中设置相应的工厂。例如,System.setProperty("jdk.jndi.ldap.object.factoriesFilter", "com.infoengine.connector.IeConnectionFactoryFactory")。有关引用信息,请参阅 Example Standalone Java SOAP Client
这对您有帮助吗?