wsdl转java(wsdl转java对象,调用接口无返回值)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
本篇文章给大家谈谈wsdl转java,以及wsdl转java对象,调用接口无返回值对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
怎么用axis把wsdl文件生成相应的java类
安装好axis,他自带一个java2wsdl,直接用他就可以了
在命令通过java执行:
H:\axis-1_4\libjava -cp g:/611 code/pm/src/share;axis.jar;axis-ant.jar;commons-
discovery-0.2.jar;commons-logging-1.0.4.jar;jaxrpc.jar;log4j-1.2.8.jar;saaj.jar;
wsdl4j-1.5.1.jar org.apache.axis.wsdl.Java2WSDL -o p3e.wsdl -n "urn:P3EWebservi
ces" -p"p3e.webservice" "urn:P3EWebservices" p3e.webservice.P3EWebservices
-cp后边的包都要有,-o代表要转的wsdl,-p代表包
Java调用wsdl,怎么实现
java调用wsdl的步骤如下,主要是使用第三方框架:
步骤如下:
1.下载AXIS2类库,AXIS2是目前java调用webservice的一个主要方法(由于更新较频繁,请自行google该类库的网址)
2.由于是第三方webservice,直接引入AXIS2的包就可以用了,代码如下:
import java.rmi.RemoteException;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
public class webServiceTest {
public String invokeRemoteFuc() {
String endpoint = "";
String result = "no result!";
Service service = new Service();
Call call;
Object[] object = new Object[1];
object[0] = "Dear I miss you";//Object是用来存储方法的参数
try {
call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);// 远程调用路径
call.setOperationName("say");// 调用的方法名
// 设置参数名:
call.addParameter("str1", // 参数名
XMLType.XSD_STRING,// 参数类型:String
ParameterMode.IN);// 参数模式:'IN' or 'OUT'
// 设置返回值类型:
call.setReturnType(XMLType.XSD_STRING);// 返回值类型:String
result = (String) call.invoke(object);// 远程调用
} catch (ServiceException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
return result;
}
public static void main(String[] args) {
webServiceTest t = new webServiceTest();
String result = t.invokeRemoteFuc();
System.out.println(result);
}
}
该方法的原理很简单,通过AXIS2封装好的类设置URL和参数,直接调用就好了,我们要关注的就是设置URL,方法,还有方法的参数,其他的copypaste好啦,很简单吧,再看看其他的方法,我勒个去了,害我瞎搞两天。迟点上个源码共大家参考!
wsdl文件生成的java类怎么用
根据wsdl文件生成webservice代码下边我们可以根据这个Axis2Demo.wsdl文件生成java代码,这些代码用于客户端和服务器端进行连接,也有客户端的代码。生成代码的具体步骤如下:选择菜单“File-New-Other”,从对话框中选取“Axis2Wizards”下面的“Axis2CodeGenerator”点击Next下一步进入如下页面:点击Next下一步进入如下页面:在该页面选择刚才建好的Axis2Demo.wsdl文件点击Next下一步进入如下页面:在上边的图中选中custom和GenrateAll注意:上图中的Custompackagename是客户端代码的包名字这里把它改为:com.neusoft.axis2demo.client做为客户端的包名。然后点击Next下一步:进入如下图在OoutputPath这项选中工程的根目录作为这些自动生成代码的目录.然后点击finish完成代码生成工作.下图为生成代码后的工程目录结构下边介绍一下生成的代码的用途其中包(1):com.neusoft.axis2demo.client是客户端代码,第三方使用的.(2):com.neusoft.axis2demo.services.xsd是第三方调用webservice的传入参数和返回参数.(3):com.neusoft.axis2demo.common.xsd中的类是(2)的参数。其中第三方只需要调用com.neusoft.axis2demo.client中的Axis2DemoStub类中的nameConvertToContext方法就行了这个类的雏形是下边这样的。publiccom.neusoft.axis2demo.services.xsd.NameConvertToContextResponsenameConvertToContext(com.neusoft.axis2demo.services.xsd.NameConvertToContextparam22)throwsjava.rmi.RemoteException{return(com.neusoft.axis2demo.services.xsd.NameConvertToContextResponse)object;//TODO}其中红色部分是(2)包中的类他们作为参数传入和返回,同时红色的类中也有set和get方法用来存储(3)com.neusoft.axis2demo.common.xsd包中的类.

关于wsdl转java和wsdl转java对象,调用接口无返回值的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
