在ofbiz中使用自带的webservice,对外提供的接口不标准,要使用soapui测试的话还要手动改报文.
本文使用的方法为先使用axis2将方法发布为webservice接口,然后在此接口中调用ofbiz服务.
我自己使用的axis2 1.7.3.
第一步:使用axis2的方法为
http://wangronaldo.iteye.com/blog/1456441.
使用axis2发布的接口只有参数没有request和servletContext,而ofbiz中要使用servletcontext来得到dispatcher
来调用服务.
第二步:可以增加一个过滤器过滤axis2的AxisServlet,如下:
然后再webservice方法中取得:
最后调用服务:
LocalDispatcher dispatcher = getDispatcher();
returnMap = dispatcher.runSync("xxx", params)