我在我的应用程序中使用 bean 验证。当没有约束验证错误时,一切都很好。每次出现验证错误时,Glassfish 都会抛出以下异常:
Caused by: java.lang.ClassNotFoundException: javax.validation.groups.Default: java.net.MalformedURLException: Unknown protocol: osgi
at com.sun.corba.ee.impl.util.JDKBridge.loadClassM(JDKBridge.java:325)
at com.sun.corba.ee.impl.util.JDKBridge.loadClass(JDKBridge.java:228)
at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.loadClass(Util.java:640)
at com.sun.corba.ee.impl.util.RepositoryId.getClassFromType(RepositoryId.java:628)
at com.sun.corba.ee.impl.orbutil.RepIdDelegator.getClassFromType(RepIdDelegator.java:169)
at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readClass(CDRInputStream_1_0.java:1439)
bean-validation.jar 存在于 glassfish/modules 文件夹中。启动不会引发任何有关验证的异常。
PS。请注意,我们将远程 bean 与 CORBA 一起使用。
可在 GlassFish 3.1.2.2 和 3.1.1 上重现。