NC65调用webservice(nc65系统)

http://www.itjxue.com  2023-01-30 01:59  来源:未知  点击次数: 

如何调用web service接口的某个方法

调用方法大致有三种方法:

1)使用,直接AXIS调用远程的web service

2)直接SOAP调用远程的webservice

3)使用wsdl2java把WSDL文件转成本地类,然后像本地类一样使用,即可。

我一般使用第三种,挺简单的:

比如webservice的代码如下:

@WebService

public class ServiceHello {

/*

* 供客户端调用的方法

* @param name

* @return String

*/

public String getValue(String name){

return "我叫"+name;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

Endpoint.publish("", new ServiceHello());

System.out.println("service success!");

}

}

1)先建立客户端webservice项目,使用命令将WSDL文件转成本地类,比如:

C:\Users\aiher\Workspaces\MyEclipse 2015\TheClient\srcwsimport -s . -p com.hyan.client -keep

2)编写客户端测试类,调用服务端web service接口的某个方法,如下:

public class ServiceTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

ServiceHello hello = new ServiceHelloService().getServiceHelloPort();

String name = hello.getValue("Hyan");

System.out.println("name-:"+name);

}

}

NC中如何调用WebService

private Object callWebService() throws Exception {

// WebService URL, EX:

String url = "";

Service service = new Service();

Call call = (Call) service.createCall();

call.setTargetEndpointAddress(new java.net.URL(url));

call.setOperationName(new QName("", "zipTest"));

// 参数设置

call.addParameter("doccode", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);

// 方法的返回值类型

call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);

String rs = (String) call.invoke(new Object[] {

"10"

});

return rs;

}

如何调试webservice

1:在解决方案中选中webservice的项目节点, "网站 "菜单,2:选 "Asp.NET 配置 "弹出属性设置的页面,3:选中 "应用程序 "页,找到 "调试和跟踪 "一栏,4:选中 "配置调试和跟踪 ",5:在 "配置调试和跟踪应用程序的设置 "下选中 "启用调试 "6:设置断点运行或按F11后就可以单步调试WebService程序的代码了

如何调用别人提供的webservice接口

1、调用WebService的Client端采用jax-ws调用WebService; 流程: 1) 建立JavaProject; 2) 建立WebServiceClient: (1) OtherèMyEclipseèWebServicesèWebServiceClient; (2) “Strategy”只能选jax-ws(不能选XFire); (3) 选用WSDL URL;((3)(4)两步表示只能用jax-ws采用WSDL解析的方式来调用WebService); (4) 下一步会提示加入jax-ws的包; (5) “Finish”后会自动产生很多的类; 3) 手动设计本地调用WebService的类,流程: (1) 实例化一个Service:NumberPlusService srvc = new NumberPlusService()//为WebService中主类(包含各种接口) (2) 生成该WebService的本地代理: NumberPlusServicePortType delegate = srvc.getNumberPlusServiceHttpPort() (3) 通过该代理调用服务中的Operation: delegate.plus(4, 6)//接口中的方法 2、通过url调用WebService public int String delegate(int a, int b) { String URL = " ?wsdl"; Object[] results = null; try { Client client = new Client(new URL(URL)); results = client.invoke("delegate", new Object[] { a,b}); } catch (MalformedURLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } return (int) results[0]; }

C#WebService调用。结合WebConfig

一般而言,C#中调用WebService,首先得添加web引用,选中你的web项目,点击右键,选择Add Web Reference,这时会出现一个页面,要你输入web service的地址,你填入后点击go就会找到该页面,填上别名(add reference name),如:auoService,然后点击Add reference就行。这时它会自动在你的web.config文件中生成add key="auoService" value="" /

那么在页面中调用的时候需要先实例化:如

auoService service=new auoService(); 然后调用web service写好的方法,如

service.Url = ConfigurationSettings.AppSettings["auoService"]; //AppSettings中填入key值

或者:

service.Url = System.Configuration.ConfigurationSettings.AppSettings["auoService"];

service.showMethod(); //注意:showMethod()是该web service中含有的方法,只是举例

NC5.6的Webservice 如何部署到NC_home 我直接在UAP项目导出modules,放在里面,重新部署EJB,还是不行?

先说说如何部署到NC_HOME:

1.把你的UAP项目导出modules,然后把你定义的wsdl和xsd文件导出放入public对应目录下(wsdl对应接口,xsd对应VO)

2.把你引入的外部jar包放入对应模块lib文件夹下面(如果有的话,例如wsdj包)

3.重启中间件,访问http://服务器IP地址:端口/uapws/service,可以看到当前NCHOME发布的所有webservice

再说说部署到WAS:

部署到WAS与部署到NC_HOME需要整体是差不多的,需要注意包冲突的问题(例如wsdj),如果包冲突,体现在部署was时会报错或者访问不到所有的webservice

(责任编辑:IT教学网)

更多

推荐免费资源文章