
对于wsdl文件,不需要用命令来生成,在eclipse中下载xfire插件,直接导入wsdl格式的文件会自动转化为java文件 ,如果是myeclipse,里面自带有wsdl文件导入器,直接导入就能生成java文件。
EJB3发布WS的话那就简单了直接类上加注解@WebService,然后生成JAR扔进EJB容器就可以了。
JWS也提到了CXF,这两个环境下发布WebService当然会不一样。
我用你的代码,
用JWS可以正常发布并访问到wsdl文本。
唯一做的修改是在行
public class IHelloServiceImpl implements IHelloService {
webservice 使用说明书,就是wsdl
wsdl说明是是基于xml格式的
通过wsdl说明书,就可以完整的描述一个服务端对外发布的服务
生成客户端调用代码:
语法1: wsimport -s wsdl说明书地址
语法2:wsimport -keep -p 包名称 wsdl说明书地址
直接用cmd控制调用上面代码,把生成的代码直接复制到你的项目中,就可以使用了
根据对方提供的wsdl地址你可以生成客户端类,用wsdl2java(搜索“wsdl生成客户端代码”),你用myeclipse的话参考这个:>
调用方法:
Service1 service = new Service1();Service1Soap soap = servicegetService1Soap();
Systemoutprintln(soapgetProjectInfo()); //本地方法
//不明白的再追问,望采纳
Java调用WebService可以直接使用Apache提供的axisjar自己编写代码,或者利用Eclipse自动生成WebService Client代码,利用其中的Proxy类进行调用。理论上是一样的,只不过用Eclipse自动生成代码省事些。
1、编写代码方式:
package comyuduntest;
import javarmiRemoteException;
import orgapacheaxisclientCall;
import orgapacheaxisclientService;
import orgapacheaxismessagePrefixedQName;
import orgapacheaxismessageSOAPHeaderElement;
import comcezannegoldenuserException;
import comcezannegoldenuserUserManagerServiceProxy;
import javaxxmlnamespaceQName;
import javanetMalformedURLException;
import javaxxmlrpcServiceException;
import javaxxmlsoapName;
import javaxxmlsoapSOAPException;
public class testWebService {
public static String getResult() throws ServiceException, MalformedURLException, RemoteException, SOAPException
{
//标识Web Service的具体路径
String endpoint = "WebService服务地址";
// 创建 Service实例
Service service = new Service();
// 通过Service实例创建Call的实例
Call call = (Call) servicecreateCall();
//将Web Service的服务路径加入到call实例之中
callsetTargetEndpointAddress( new javanetURL(endpoint) );//为Call设置服务的位置
// 由于需要认证,故需要设置调用的SOAP头信息。
Name headerName = new PrefixedQName( new QName("发布的wsdl里的targetNamespace里的url", "string_itemName") );
orgapacheaxismessageSOAPHeaderElement header = new SOAPHeaderElement(headerName);
headeraddTextNode( "blablabla" );
calladdHeader(header);
// SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement("发布的wsdl里的targetNamespace里的url", "SoapHeader");
以上就是关于用java怎么把wsdl文件生成客户端全部的内容,包括:用java怎么把wsdl文件生成客户端、webservice如何发布,怎么得到wsdl、怎么用Java通过wsdl地址调用WebService求代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)