源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java SOAPHEADER的web service

  • 时间:2021-07-08 09:33 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java SOAPHEADER的web service
c# JSON返回格式的WEB SERVICE[url=http://www.1sucai.cn/article/16768.htm]http://www.1sucai.cn/article/16768.htm[/url] 我这里是利用axis创建类包的,首先下载axis的压缩包,然后解压,把axis放到webapp下面。如果可以运行,就OK了。   c#创建的webservice自带的wsdl的,直接可以加上?wsdl访问,然后利用axis生成类:
java -classpath ".;commons-logging.jar;axis.jar;commons-discovery.jar;jaxrpc.jar;wsdl4j.jar;saaj.jar;jaxrpc.jar;mail.jar" org.apache.axis.wsdl.WSDL2Java -o "E:\cjjer" http://s:9999/IUsers.asmx?wsdl
在目录E:\cjjer下面有产生了一系列的java文件。   然后编译这些java文件,注意,由于这样产生的并没有soapheader的请求,需要自己修改java文件:   打开*SoapStub.java这个文件,定位到
    protected org.apache.axis.client.Call createCall() throws java.rmi.RemoteException 
这个方法,然后再return之前写上
              SOAPHeaderElement   head   =   new   SOAPHeaderElement(new   PrefixedQName(new   javax.xml.namespace.QName("http://www.cjjer.com/webs/",   "ReqHeader")));                  head.setActor(null);                  try{                  head.addChildElement("userName").addTextNode("cjjer");                  head.addChildElement("password").addTextNode("000000");                  head.setMustUnderstand(true);               }catch(Exception   e){                  System.out.println("   soapheader   Exception   ==   ");                  e.printStackTrace();                  }                  _call.addHeader(head);                return _call;
这样,就会加上SoapHeader了。提示类找不到的话请import org.apache.axis.message.*; 最后是编写请求代码了:
import java.io.*;  import java.sql.*;  import java.awt.*;  import javax.xml.namespace.*;  import java.awt.event.*;  import java.net.URL; import org.apache.axis.client.*; import com.cjjer.www.webs.*; public class TestNet {  // main method  public static void main(String args[]) {      System.out.println("我要进来了,嘎嘎");      try{         String endpoint= "http://s:9999/IUsers.asmx";         cjjerLocator locator = new  cjjerLocator();//         locator.setMaintainSession(true);         cjjerSoap service = locator.getcjjerSoap();//获得服务对象         Member objM= service.getUser(1);         System.out.println(objM.getName());         }         catch (Exception e) {             e.printStackTrace();         } }  } 
如果不发生异常,就OK了,发生异常的话自行处理。 编译:
javac -cp "E:\tomcat6\webapps\axis\WEB-INF\lib\commons-logging.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\axis.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\commons-discovery.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\jaxrpc.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\wsdl4j.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\saaj.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\jaxrpc.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\mail.jar;"     com/cjjer/www/webs/*.java -Xlint:unchecked
运行测试:
java -cp "E:\tomcat6\webapps\axis\WEB-INF\lib\commons-logging.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\axis.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\commons-discovery.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\jaxrpc.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\wsdl4j.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\saaj.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\jaxrpc.jar;E:\tomcat6\webapps\axis\WEB-INF\lib\mail.jar;" TestNet
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部