关于泛微OA 发布接口生成WSDL

由于新转职的公司OA是完全买的,没进行过自己的二次开发。现在要写个流程根据Eas生产的流程要生成一张流程单。第一次玩这个OA的webservice。

不急着写代码,先把环境看下是不是缺少配置。

先百度了一番这个OA的文档,找到一个我还没读大学的文档,还是有点用的虽然有点老.

先查看配置WEB-INF下的web.xml是否缺少配置

缺少这个配置

修改/classbean/META-INF/xfire/services.xml

编写接口代码

 

 

package com.test001.test.imp;

import com.test001.test.ITestService;

public class TestService implements ITestService {

	@Override
	public String queryVname(String inputStr) {
		// TODO Auto-generated method stub
		return "video111Name"+inputStr;
	}

}	


测试wsdl文件生成

 

http://127.0.0.1:99/services/TestService?wsdl

在Eclipse内新建java工程或者WEB工程

eg:java project

选择java工程右键新建web service client

-->Next

注意:此时OA是启动状态,如果关闭这边将wsdl地址报错(The service definition selected is invalid.)

-->Next-->finsh

 

OA包名

 

测试类

 

 

完成。

有时候有些东西想不通可以放一放,休息下脑子也许就完成了。

 

这里我以Java语言为例,使用Apache CXF来实现泛微OAWeb Service接口调用。 首先,需要在项目中引入Apache CXF的相关依赖,例如: ```xml <dependencies> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <version>3.4.3</version> </dependency> </dependencies> ``` 接着,根据泛微OA提供的接口文档,获取需要调用的接口WSDL地址,例如用户接口WSDL地址为: ``` http://yourserver/Service1.asmx?wsdl ``` 然后,使用Apache CXF的命令行工具`wsdl2java`,根据WSDL地址生成客户端代码,例如: ``` wsdl2java -d /path/to/output -p com.example.client http://yourserver/Service1.asmx?wsdl ``` 执行完上述命令后,会在`/path/to/output`目录下生成`com.example.client`包中的Java类文件,包括接口的代理类`Service1Soap`。 最后,在代码中进行接口调用,例如: ```java import com.example.client.Service1Soap; import com.example.client.User; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; public class Main { public static void main(String[] args) { // 创建Service1Soap接口的代理类 JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(Service1Soap.class); factory.setAddress("http://yourserver/Service1.asmx"); Service1Soap service1 = (Service1Soap) factory.create(); // 调用接口方法 User[] users = service1.getUsers(); for (User user : users) { System.out.println("ID: " + user.getId()); System.out.println("Name: " + user.getName()); } } } ``` 以上代码中,首先使用`JaxWsProxyFactoryBean`创建了`Service1Soap`接口的代理类`service1`,然后调用了代理类中的`getUsers`方法,获取到了所有用户的信息,并打印输出。 需要注意的是,以上代码仅供参考,具体实现方式还需要结合泛微OA提供的接口文档进行调整。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值