dubbo下如何使用hibernate的级联操作
问题描述:
1、dubbo在进行hibernate级联操作时会报session已关闭的错误。这错误平时开启opensessioninviewfilter解决。
在通过dubbo调用接口时,dubbo只会走自己的一套filter,需要实现com.alibaba.dubbo.rpc.Filter。普通filter不生效。
所以我想到的办法是把spring包里的opensessioninviewfilter拿出来改一改。
但是同样遇到问题:
2、javax.servlet.Filter需要实现的是
public void doFilter ( ServletRequest request, ServletResponse response, FilterChain chain ) throws IOException, ServletException;
而com.alibaba.dubbo.rpc.Filter
public Result invoke(Invoker<?> invoker, Invocation invocation)throws RpcException
我不知道在实现dubbo的filter时再哪里能拿到 HttpServletRequest !
百度, @Context和RpcContext.getContext().getRequest() (出自《在Dubbo中开发REST风格的远程调用(RESTful Remoting)》http://dangdangdotcom.github.io/dubbox/rest.html )
感觉并不是正式版的dubbo.(是否是dubbox?),
无法实现(注解注入为null,第二个我去git上看了没有这个方法)!
上面两个问题解决哪个都可以。
甚至可以和我说一说hibernate级联操作特别坑的地方,然后说服我让我不使用级联。
如果觉得我这个思路哪里有问题欢迎指出!
麻烦各位大牛了!