java调用openmeetings webservices报错。
这里只调用简单的userservice里的getSession方法,代码如下:
package client.stub;
import client.UserServiceStub;
import javax.xml.namespace.QName;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
public class UserServiceStubClient {
public static void main(String[] args) throws Exception {
UserServiceStub stub = new UserServiceStub();
UserServiceStub.Sessiondata gg = new UserServiceStub.Sessiondata();
String sid = null;
sid = gg.getSession_id();
System.out.println("$$$$$$$$$$$$$$$$:" + sid);
System.out.println("!!!!!!!!!!!!!另一种方法!!!!!!!!!!!!!!");
//////////////////////////////////
//另一方法
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference("http://localhost:5080/openmeetings/services/UserService");
options.setTo(targetEPR);
//下面的代码调用了getSession方法,并返回Sessiondata对象实例
QName opAddEntry = new QName("http://services.axis.openmeetings.org", "getSession");
data.Sessiondata sd = (data.Sessiondata) serviceClient.invokeBlocking(opAddEntry, new Object[] {}, new Class[] { data.Sessiondata.class })[0];
System.out.println(sd.getSession_id());
}
}
报如下错误:
$$$$$$$$$$$$$$$$:null
!!!!!!!!!!!!!另一种方法!!!!!!!!!!!!!!
Exception in thread "main" org.apache.axis2.AxisFault: org.openmeetings.app.hibernate.beans.basic.Sessiondata
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:365)
at org.apache.axis2.databinding.utils.BeanUtil.processObject(BeanUtil.java:722)
at org.apache.axis2.databinding.utils.BeanUtil.ProcessElement(BeanUtil.java:670)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:602)
at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:104)
at client.stub.UserServiceStubClient.main(UserServiceStubClient.java:27)
Caused by: java.lang.ClassNotFoundException: org.openmeetings.app.hibernate.beans.basic.Sessiondata
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at org.apache.axis2.util.Loader.loadClass(Loader.java:261)
at org.apache.axis2.util.Loader.loadClass(Loader.java:229)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:363)
... 5 more
我看了下,服务端是有这个jar包的啊,这个包里有文件org.openmeetings.app.hibernate.beans.basic.Sessiondata的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
最初客户端的jdk版本是1.5的,而openmeetings的是jdk1.6,
执行客户端是报错的:
解决:
华仔哥们,这个我能不知道嘛,呵呵。
红薯的意思:jar 包是有啊,但你可能没包含在你的程序类路径中
引用来自#6楼“红薯”的帖子
引用来自#5楼“小博”的帖子
我试了下,还是报错误。
你说能不能这个原因,openmeetings的webservices的aixs2的版本是1.3的
而我自己整的axis2demo工程引用的包是axis2-1.4.1的,是否服务端、客户端二者的版本都要一致呢?
引用来自#5楼“小博”的帖子
我试了下,还是报错误。
你说能不能这个原因,openmeetings的webservices的aixs2的版本是1.3的
而我自己整的axis2demo工程引用的包是axis2-1.4.1的,是否服务端、客户端二者的版本都要一致呢?
我试了下,还是报错误。
你说能不能这个原因,openmeetings的webservices的aixs2的版本是1.3的
而我自己整的axis2demo工程引用的包是axis2-1.4.1的,是否服务端、客户端二者的版本都要一致呢?
引用来自#3楼“小博”的帖子
是啊,但在在安装目录里有这个jar包啊openmeetings.jar这个jar包的有这个Sessiondata.class啊
D:openmeetingsopenmeetings_1_6_rc1_r3621red5webappsopenmeetingsWEB-INFlibopenmeetings.jar
是啊,但在在安装目录里有这个jar包啊openmeetings.jar这个jar包的有这个Sessiondata.class啊
D:openmeetingsopenmeetings_1_6_rc1_r3621red5webappsopenmeetingsWEB-INFlibopenmeetings.jar
缺少类啊 org.openmeetings.app.hibernate.beans.basic.Sessiondata