在一个java项目中,如果有多个WSDL应该怎么去操作。
举个例子:一个订票系统中,有A,B,C三家电影院提供的WSDL,那么在项目中可不可以同时有三个WSDL哪?
         就是说只是在一个项目中,如果可以的话应该怎么去实现.

解决方案 »

  1.   

    你的意思是有三个webservice服务要你们去调用?
    你们要写三个webservice client。
    这个可以有!实现的话,要看wsdl是如何生成的,用的是xfire还是什么。
    网上有不少这样的客户端例子。
      

  2.   


    你的意思是,有几个WSDL就要和书写几个客户端了?这样是不是很麻烦啊,如果有个七八个十多个还不坏了,意思是能不能见一个java工程,里面可以调用多个WSDl?  第一次用,有说的不妥的情见谅。
    用的Xfire,
      

  3.   

    因为不同影院提供的接口是不一样的,所以每个接口必须包装一下。建议实现如下:
    Interface Client{
      //APIs warps each client
      //eg
      int getLeftTickets();
    ........
    }ClientA implements Client{
    ....
    }..
    ClientN implements Client{
    ........
    }TicketsFacade.java,里面有:
    Map<String, Client>clients = new HashMap<String, Client>();
    for(A...N){//可以考虑将这些信息放在数据库中,这样将来有新的client了,不需要改现有的代码
       clients.put("A", new ClientA);
    }用户获取某影院的剩余票数:
     public int (name){
        return clients .get(name).getLeftTickets();
     }