以文本方式查看主题 - 计算机科学论坛 (http://bbs.xml.org.cn/index.asp) -- 『 Web Services & Semantic Web Services 』 (http://bbs.xml.org.cn/list.asp?boardid=10) ---- 如何让Skeleton调用服务端本机实现代码,例如.so文件? (http://bbs.xml.org.cn/dispbbs.asp?boardid=10&rootid=&id=71508) |
-- 作者:venus_w3china -- 发布时间:1/17/2009 10:57:00 PM -- 如何让Skeleton调用服务端本机实现代码,例如.so文件? 我需要开发一个语音识别服务,可以接收一段音频,返回一段识别后的文字。而服务端本机上已经有了一个程序,可以独立运行,专门负责语音识别,将音频转换成文本。该程序是用c++写的,被编译连接成一个动态链接库文件,假设是A.so。我要做的是将它封装成一个Web服务,可以供外界调用,对外提供语音识别的功能。 我首先编写好了WSDL文件,用wsdl2java生成了Skeleton和Stub文件,其中Skeleton文件中需要导入A.so,并调用其中的某个函数,如下所示: public class Service_RecognitionSkeleton { static{System.loadLibrary("A");} // 导入A.so public RecognitionResponse Recognize(Recognition recognition) { B b = new B(); // B是A.so中的一个类 String words = b.doRecognition(recognition.getVoice()); // doRecognition()是B类的的一个方法,执行语音识别功能,入口参数是音频数据,出口参数是转换后的文本 RecognitionResponse ret = new RecognitionResponse(); // 生成回复消息 ret.setWords(words); // 设置返回参数 return ret; } } 该Skeleton文件随着其它文件一起被编译打包成.aar文件放在/usr/local/tomcat/webapps/axis2/WEB-INF/services/下,部署为一个Web服务,这样当有客户端发出服务调用请求时,该服务能自动执行语音识别程序,并做出反馈。 我想问的就是:作为实际的功能实现代码,A.so应该放在哪个目录下,可以使得这个web服务能够自动导入它,并且自动使用其中的类,调用其中的函数?
|
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
31.250ms |