我想在EJB3.0的sessionBean中调用xFire开发的WebService,请问怎么实现??我用MyEclipse自动生成WebService客户端选xFire不行,提示EJB3.0的程序不是xFire程序 应该怎么调用啊  请高人指教 万分感谢!!

解决方案 »

  1.   

    帮忙顶,我之前用了apache生成的客户端,但是由于所访问的wsdl地址是映射后的地址,而映射前和映射后的地址不在同一个网段,所以单独在浏览器里浏览是没问题的,就是无法启动weblogic中的模块,找了好多可以更改endpoint值得办法,可是还是没结果
      

  2.   

    EJB中导入对应的包就可以了
    然后使用注解声明就行了
      

  3.   

    1: Xifre过时了 学习下 Rest AXIS CXF比较好
      

  4.   

    只要添加注解 可以参考下URL wsdlURL = new URL("http://192.168.0.33:8888/acfx/services/hello_world?wsdl");
    //这个地方必须指定真实的路径不能用localhost或者127.0.0.1来代替
    QName SERVICE_NAME = new QName("http://192.168.0.33:8080/acfx/services/HelloWorld", "HelloWorld");
    //创建与wsdl的连接
    Service service = Service.create(wsdlURL, SERVICE_NAME);
    //获取通信类
    HelloWorld client = service.getPort(HelloWorld.class);
    //调用服务
    String result = client.sayHi("牛斗Ma");
    System.out.println("result:"+result);
    注意需要引用对应的jar
      

  5.   

    这个很简单,你把WebService客户端单独写到一个java工程中,再导出为jar文件,你在EJB中调用jar中的客户端方法就行了,我们以前就是这样做的,要么你把WebService生成的客户端的包拷到EJB工程中