SSH整合完美解决$$_javassist_4 cannot be cast to javassist.util.proxy.Proxy

原因

昨天遇到了这个javassist这个错误,网上一查是struts2和hibernate的javassist.jar冲突导致的,按照网上去除还是报错。

解决办法

自己摸索了一遍原来光去除struts2-core的依赖没用,要把所有strust相关的jar包引用去除对javassist的依赖。

比如我引用了org.apache.struts:struts2-core:2.3.16.3、org.apache.struts:struts2-spring-plugin:2.3.16.3和org.apache.struts:struts2-json-plugin:2.3.24.3三个strust的jar包

在gradle依赖中就应该把三个jar包都去除对javassist的依赖!maven的请自测!(如果去除了对javassist的依赖还是报错,请看最后一点)

compile('org.apache.struts:struts2-core:2.3.16.3'){
        exclude group:'javassist',module:'javassist'
    },
    compile('org.apache.struts:struts2-spring-plugin:2.3.16.3'){
        exclude group:'javassist',module:'javassist'
    },
    compile('org.apache.struts:struts2-json-plugin:2.3.24.3'){
        exclude group:'javassist',module:'javassist'
    }

使用OpenSessionInView

如果还是报错,请在web.xml中添加下面的代码,如果还是不行,就爱莫能助了,注意我的hibernate是4.3的。

<!-- 定义Spring保持session的Filter 默认的去找bean的id为sessionfactory的bean-->   
    <filter>
        <filter-name>openSessionInView</filter-name>
        <filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
    </filter>
        <filter-mapping>
        <filter-name>openSessionInView</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值