启动硬盘上的tomcat服务时,在动态调用webservice接口时报空指针,但是在myeclipse中却没问题,
public static String callService(String wsUrl, String method, Object arg[]){
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient(wsUrl);
Object res[] = (Object[])null;
try{
res = client.invoke(method, arg);
}catch (Exception e){
e.printStackTrace();
}
return (String)res[0];
}
调用的代码就这么简单,但是却始终爆出如下额错误信息:
java.lang.NullPointerException
at org.apache.cxf.common.util.Compiler.useJava6Compiler(Compiler.java:189)
at org.apache.cxf.common.util.Compiler.compileFiles(Compiler.java:143)
at org.apache.cxf.common.util.Compiler.compileFiles(Compiler.java:138)
后来才知道是因为我的myeclipse指定了tomcat,并指定了jdk的位置,虽然环境变量也指定了jdk和jre的位置,但是不知道什么原因tomcat没有找到,初步怀疑是服务器虚拟机的问题或者是服务器上有多个版本jdk导致。
我是如下解决:
(1)在环境变量中有JAVA_HOME后再加入一个JRE_HOME指向中的JRE
JRE_HOME
C:\Program Files\Java\jdk1.7.0_45\jre
(2)在tomcat下的bin目录中找到catalina.bat加入
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45
set JRE_HOME=C:\Program Files\Java\jdk1.7.0_45\jre
(3)在tomcat下的bin目录中找到setclasspath.bat加入
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45
set JRE_HOME=C:\Program Files\Java\jdk1.7.0_45\jre
我的问题解决。
相关推荐
cxf客户端调用axis服务端流程.docxcxf客户端调用axis服务端流程.docx
cxf客户端调用webservice所需jar包
2.用cxf开发webservice 3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息...
NULL 博文链接:https://hw1287789687.iteye.com/blog/2034439
纯java调用ws-security+CXF实现的webservice安全接口
用camel-cxf调用webservice和发布一个webservice接口例子,首先启动QueryServiceMain主函数启动webservice接口,然后启动测试类TestWebservice。例子主要是实现java代码实现camel调用webservice接口
MyCXFService为WebService服务端,MyCXFClient为客户端调用 1、将MyCXFService.zip与MyCXFClient.zip解压 2、将cxf_jar包文件夹下所有包,拷至MyCXFService与MyCXFClient项目WebRoot\WEB-INF\lib\cxf_2.7.8 目录下...
Java 调用webservice cxf客户端调用demo和服务端,包含jar包,服务端发布后直接用客户端调用
C#动态调用CXF WEBSERVICE框架共通类。
在使用Idea根据wsdl自动生成java code的时候;抛出无法找到主类:org.apache.axis.wsdl.WSDL2Java(Throws Could not find main class: org.apache.axis.wsdl.WSDL2Java)。 添加本文的jar包压缩包解压出来的所有jar包...
s.addLocation(StaxUtils.java:1038) at org.apache.cxf.staxutils.StaxUtils.startElement(StaxUtils.java:893) at org.apache.cxf.staxutils.StaxUtils.readDocElements(StaxUtils.java:965) at org.apache.cxf....
springboot整合CXF发布webservice和客户端调用 项目中每个类都有详细的注释,保证都能看懂,不失为一个学习springboot整合cxf来学习webservice发布调用的好例子
NULL 博文链接:https://liugang594.iteye.com/blog/2022626
apache-cxf-2.4.6.zip
最近项目中遇到需要去掉老系统的webservice服务中的insert方法,找了很久,发现这样最简单,实测有效!!!
CXF框架实现Webservice服务.pdf
webservice对外发布接口全部源码拿起来就能用。还有调用的包需的找我要
WebService-CXF.ppt
使用CXF生成动态调用webservice接口的客户端,也比较简单。
现在主流的webService框架,一个是axis2,一个是cxf,本资源是基于cxf框架的简单例子