qxwtt520 2014-01-09 23:07
浏览 223
已采纳

CXF webservice问题 求大牛解决

[code="java"]
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
.......
JaxWsProxyFactoryBean.create()
调用方法等。。。

下面是JaxWsProxyFactoryBean.create()类里面的方法。
/**
* Creates a JAX-WS proxy that can be used to make remote invocations.
*
* @return the proxy. You must cast the returned object to the approriate class
* before making remote calls
*/
@Override
public synchronized Object create() {
ClassLoaderHolder orig = null;
try {
if (getBus() != null) {
ClassLoader loader = getBus().getExtension(ClassLoader.class);
if (loader != null) {
orig = ClassLoaderUtils.setThreadContextClassloader(loader);
}
}

        Object obj = super.create();
        Service service = getServiceFactory().getService();
        if (needWrapperClassInterceptor(service.getServiceInfos().get(0))) {
            List<Interceptor<? extends Message>> in = super.getInInterceptors();
            List<Interceptor<? extends Message>> out = super.getOutInterceptors();
            in.add(new WrapperClassInInterceptor());
            in.add(new HolderInInterceptor());
            out.add(new WrapperClassOutInterceptor());
            out.add(new HolderOutInterceptor());
        }
        return obj;
    } finally {
        if (orig != null) {
            orig.reset();
        }
    }
}

[/code]

Object obj = super.create(); 这句话 用main方法测试可以获取到obj 程序流程正常走完,方法也调用正常 为啥部署到tomcat或者weblogic就获取不到obj 进入java.util.concurrent.FutureTask类 直接卡死了 这个啥情况呢 有人知道吗 麻烦帮助解决下 谢谢。

  • 写回答

1条回答 默认 最新

  • liyebing 2014-01-10 07:33
    关注

    容器的classloader未加载到那个类吧。。从这个思路再去想想?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵