webservice,wsdl生成服务端代码,eclipse使用Axis框架生成

(图一)

项目组要求使用 webservice的开发与spring相互融合在一起,

 

使用java优先的方法测试成功了,

项目地址为

C:/Documents and Settings/wangxifeng/Workspaces/MyEclipse 8.5/webservicehelloworld。

 

---------------------------------------------------------

 

但是项目组要求WSDL契约优先的方式来开发服务端代码。

 

发现Spring ws 生成特别复杂,于是转用了 在eclipse下面进行开发,eclipse下已经集成了Axis框架,使用这种框架开发测试成功了。

项目地址为:D:/wxf/WebServerTest3

 

在操作过程中需要特别注意的事项包括

 

如图一所示部分,按照默认进行一步一步的操作,不可以进行“start service”任何修改。

不要设置什么支持Maven操作,因为配置不正确造成无法实现。

 

 

生成测试客户端代码地址位于: D:/wxf/Client1

 

核心代码是

 


import java.rmi.RemoteException;
import java.util.Calendar;

import javax.xml.rpc.holders.BooleanHolder;
import javax.xml.rpc.holders.LongHolder;
import javax.xml.rpc.holders.LongWrapperHolder;
import javax.xml.rpc.holders.StringHolder;
import javax.xml.rpc.holders.IntHolder;
import jx.chinatelecom.com.VotePartnerInf.holders.ActivityInfoTypeArrayHolder;

import jx.chinatelecom.com.VotePartnerInf.VotePartnerInfProxy;
import jx.chinatelecom.com.VotePartnerInf.VotePartnerInf_Service;
import jx.chinatelecom.com.VotePartnerInf.VotePartnerInf_ServiceLocator;
import jx.chinatelecom.com.VotePartnerInf.VotePartnerInfSOAPStub;
import jx.chinatelecom.com.VotePartnerInf.VotePartnerInf_PortType;
public class RemoteTest {
 public static void main(String[] args) throws Exception
 {
  IntHolder resultCode = new IntHolder(0);
  StringHolder errorMsg = new StringHolder();
  ActivityInfoTypeArrayHolder activityInfo = new ActivityInfoTypeArrayHolder();
  VotePartnerInf_Service service = new VotePartnerInf_ServiceLocator();
  
  VotePartnerInf_PortType port =service.getVotePartnerInfSOAP();
  //port.queryActivityList("wangxifeng", "111111", "青年",resultCode, errorMsg, activityInfo);
  
   System.out.println("55555555");
        System.out.println("errorMsg=:"+errorMsg);
    //  System.out.println("activityInfo=:"+activityInfo.value[0].getActivityDesc());
  
  VotePartnerInfProxy proxy = new VotePartnerInfProxy ();
  //proxy.setEndpoint("http://localhost:8080/VotePartnerInf/services/VotePartnerInf");
  //proxy.setEndpoint("http://localhost:8080/WebServerTest1/wsdl/VotePartnerInfSOAP");
  
  proxy.setEndpoint("http://localhost:8080/WebServerTest3/services/VotePartnerInfSOAP");//successful
  
  //需要与 WSDL文档中的,  <soap:address location="http://localhost:8080/WebServerTest3/services/VotePartnerInfSOAP"/>的相一致。


  //proxy.setEndpoint("http://localhost:8080/WebServiceTest1/services/VotePartnerInfSOAP");//successful
       
      
  
       
 
        System.out.println("4444444444");
       
        try {
 
    proxy.queryActivityList("wangxifeng", "111111", "青年",resultCode, errorMsg, activityInfo);
   
   System.out.println("55555555");
        System.out.println("errorMsg=:"+errorMsg);
      System.out.println("activityInfo=:"+activityInfo.value[0].getActivityDesc());
        }
        catch (RemoteException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }

}

需要注意的是,

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值