首页后端开发其他后端知识java SOAPHEADER的web service

java SOAPHEADER的web service

时间2024-02-08 01:50:03发布访客分类其他后端知识浏览822
导读:收集整理的这篇文章主要介绍了java SOAPHEADER的web service,觉得挺不错的,现在分享给大家,也给大家做个参考。 c# JSON返回格式的WEB SERVICEhtt...
收集整理的这篇文章主要介绍了java SOAPHEADER的web service,觉得挺不错的,现在分享给大家,也给大家做个参考。 c# JSON返回格式的WEB SERVICEhttps://www.js-code.com/article/16768.htm
我这里是利用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

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: java SOAPHEADER的web service
本文地址: https://pptw.com/jishu/604842.html
java big5到gb2312的编码转换 IE cache缓存 所带来的问题收藏

游客 回复需填写必要信息