当前位置: 代码迷 >> Web前端 >> weblogic 整合hibernate valildation 2个有关问题的解决
  详细解决方案

weblogic 整合hibernate valildation 2个有关问题的解决

热度:598   发布时间:2013-10-25 14:36:53.0
weblogic 整合hibernate valildation 2个问题的解决
1.java.lang.AbstractMethodError:
引用

      使用hibernate validator,在tomcat下部署没有问题,发布到weblogic(10)下面就报错了。在使用验证时有以下错误:
java.lang.AbstractMethodError: getProviderUtil
at javax.persistence.Persistence$PersistenceUtilImpl.isLoaded(Unknown Source)
      出错原因是weblogic自身带有openjpa的包(hibernate、openjpa掐架?),解决方法是在spring中增加配置
dispatcher-servlet.xml
<mvc:annotation-driven validator="validator"/>

applicationContext.xml
<bean name="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<property name="traversableResolver">
<bean class="com.....ExtTraversableResolver"></bean>
</property>
</bean>

其中ExtTraversableResolver代码如下:
import java.lang.annotation.ElementType;
import javax.validation.Path;
import javax.validation.TraversableResolver;

public class ExtTraversableResolver implements TraversableResolver {

public final boolean isReachable(Object traversableObject, Path.Node traversableProperty, Class<?> rootBeanType, Path pathToTraversableObject, ElementType elementType) {
return true;
}

public final boolean isCascadable(Object traversableObject, Path.Node traversableProperty, Class<?> rootBeanType, Path pathToTraversableObject, ElementType elementType) {
return true;
}
}


2.ava.lang.NoSuchMethodError: javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil;

引用
C:\Program Files\Java\jdk1.6.0_30\jre\lib\ext\hibernate-jpa-2.0-api-1.0.0.Final.jar
  相关解决方案