MyEclipse6.0 安装axis2插件, 调用加密的SAP webservice
2013-07-22 09:26
405 查看
MyEclipse6.0 安装axis2插件, 调用加密的SAP webservice
6人收藏此文章,
我要收藏
发表于1个月前(2013-06-06 09:41) , 已有116次阅读 ,共0个评论
首先鄙视一下自己,还在用myeclipse,竟然还是6.0版本,没办法,用习惯了,而且自己的开发机配置不高,装过一些别的IDE,发现用的都不是很流畅。
项目要用java调用sap的webservice接口,自己决定用axis2的wsdl2java根据wsdl文件生成java类然后调用接口。网上到处找资料,折腾了一天,终于把接口调通了。下面介绍一下安装调试的过程
首先参照的是这篇博文,资料和描述相当楚 /article/8369283.html
我对下面的下载地址做过改动,我下的插件是1_4_1这个目录下的,war包是1.5.x releases下面的
1.
下载Myeclipse Axis2插件
http://archive.apache.org/dist/ws/axis2/tools/1_4_1/
下载axis2-eclipse-codegen-wizard.zip和axis2-eclipse-service-archiver-wizard.zip
http://axis.apache.org/axis2/java/core/download.cgi
下载axis2-1.5-war.zip
2.解压插件($ECLIPSE_HOME表示你安装的myeclipse主目录)
将上述两个插件都解压到$ECLIPSE_HOME/eclipse/plugins目录中;
Axis2_Codegen_Wizard_1.3.0
和Axis2_Service_Archiver_1.3.0
3.
在$ECLIPSE_HOME/eclipse/links目录下增加文件axis-eclipse-plugin.link
写入path= $ECLIPSE_HOME/eclipse/plugins (将$ECLIPSE_HOME替换为你的安装目录!!)
4.
重新启动myeclipse,在file->new->other中即可看到Axis2 Wizards,至此,axis2插件安装成功!!(GXGX)
5.
赶快试下用wsdl文件生成java源文件吧!是不是有错误出现?对~
事情就是这样发展的。
6.
An error occurred while completing process-java.lang.reflect.InvocationTargetException的错误
解决方法如下:
step 1、从AXIS2的LIB库中复制"geronimo-stax-api_1.0_spec-1.0.1.jar"和
"backport-util-concurrent-3.1.jar"文件到Axis2_Codegen_Wizard_1.3.0的lib目录中,同时修改Axis2_Codegen_Wizard_1.3.0下的plugin.xml文件,在<runtime>中添加
<library name="lib/geronimo-stax-api_1.0_spec-1.0.1.jar">
<export name="*"/>
</library>
<library name="lib/backport-util-concurrent-3.1.jar">
<export name="*"/>
</library>
到plugin.xml文件中,保存!
step 2、将 $workspace位置/.metadata/.plugins下目录 Axis2_Codegen_Wizard
删除
step 3、在命令行下切换至$ECLIPSE_HOME\eclipse目录,然后执行:
eclipse –clear 或者是 eclipse -clean,不太记得了
但是参照这个安装博文生成java类的时候仍然会出现
An error occurred while completing process-java.lang.reflect.InvocationTargetException的错误
按照博文的说法也改了,但是还是行。
又找到了别的更改方法。那就是重命名Axis2_Codegen_Wizard_1.3.0为Axis2_Codegen_Wizard_1.4.0
更改这个目录下的plugin.xml中的 version="1.4.0"
再重启Myeclipse,成功!!!
至此Axis2安装成功,下面用插件来生成java类吧,在myeclipse里flie--->new---->other 会出现
用code Generator吧
选择使用wsdl生成java,选择相应的wsdl文件点击下一步出现我选择custom
可以选择生成测试方法,客户端我选择生成的是sync style的,之后是选择生成的位置,注意包名,我试了几次才放对地方。
工程了还要引入相应的jar包,这些jar包在axis2-1.5-war\axis2\WEB-INF\lib里,但是jar包太多,我参照网上给出的列表筛选出了一些放入其中,下面就是我整理的axis2客户端所需要的jar包
在此还要给出缺失axis2 jar包引起的错误
各种类缺失对于的jar包:
org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder -->axis2-spring-1.6.1.jar
org.apache.axis2.transport.http.AxisServlet ------------------------->axis2-transport-http-1.6.1.jar
javax.wsdl.xml.WSDLLocator ------------------------------------------->wsdl4j-1.6.2.jar
org.apache.ws.commons.schema.resolver.URIResolver -------------->XmlSchema-1.4.7.jar
org.apache.axiom.om.OMNode ------------------------------------------>axiom-api-1.2.12.jar
org.apache.axiom.om.impl.llom.factory.OMLinkedListMetaFactory ------>axiom-impl-1.2.12.jar
org.apache.neethi.PolicyComponent ------------------------------------------>neethi-3.0.1.jar
org.apache.axis2.transport.local.LocalTransportSender--------------->axis2-transport-local-1.6.1.jar
org.apache.commons.httpclient.HttpException-------------------------->commons-httpclient-3.1.jar
javax.mail.internet.ParseException ----------------------------------------->mail-1.4.jar
org.apache.commons.fileupload.FileItemFactory ------------------------>commons-fileupload-1.2.jar
org.apache.woden.resolver.URIResolver -------------------------------------->woden-api-1.0M9.jar
org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher ------------>axis2-jaxws-1.6.1.jar
org.apache.commons.io.FileUtils ------------------------------------------------>commons-io-1.4.jar
org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver ----------------->axis2-adb-1.6.1.jar
org.apache.axis2.rpc.client.RPCServiceClient ------------------------------ -->axis2-adb-1.6.1.jar
org.apache.axis2.AxisFault? --------------------------------------------------->axis2-kernel-1.6.1.jar
org.apache.axis2.addressing.EndpointReference ------------------------ -->axis2-kernel-1.6.1.jar
org.apache.axis2.client.Options ----------------------------------------------->axis2-kernel-1.6.1.jar
org.apache.commons.logging.LogFactory ---------------------------------->commons-logging-1.1.1.jar
org.apache.axis2.transport.http.CommonsHTTPTransportSender ------>axis2-transport-http-1.6.1.jar
org.apache.http.HttpResponseFactory ---------------------------------->httpcore-4.0.jar
org.apache.commons.codec.DecoderException ------------------------- -->commons-codec-1.3.jar
到这里我生成了一个xxxxxxStub类,这个类就是接口类啦~但是Sap需要ws-security的认证,这个用户名和密码填写在哪里呢????
调用sap webservice的认证信息如下使用:
ServiceStub serviceStub= new ServiceStub();
HttpTransportProperties.Authenticator basicAuth = new HttpTransportProperties.Authenticator();
basicAuth.setUsername("userName");
basicAuth.setPassword("password");
serviceStub._getServiceClient().getOptions().setProperty(HTTPConstants.AUTHENTICATE, basicAuth);
最后大功告成~
6人收藏此文章,
我要收藏
发表于1个月前(2013-06-06 09:41) , 已有116次阅读 ,共0个评论
首先鄙视一下自己,还在用myeclipse,竟然还是6.0版本,没办法,用习惯了,而且自己的开发机配置不高,装过一些别的IDE,发现用的都不是很流畅。
项目要用java调用sap的webservice接口,自己决定用axis2的wsdl2java根据wsdl文件生成java类然后调用接口。网上到处找资料,折腾了一天,终于把接口调通了。下面介绍一下安装调试的过程
首先参照的是这篇博文,资料和描述相当楚 /article/8369283.html
我对下面的下载地址做过改动,我下的插件是1_4_1这个目录下的,war包是1.5.x releases下面的
1.
下载Myeclipse Axis2插件
http://archive.apache.org/dist/ws/axis2/tools/1_4_1/
下载axis2-eclipse-codegen-wizard.zip和axis2-eclipse-service-archiver-wizard.zip
http://axis.apache.org/axis2/java/core/download.cgi
下载axis2-1.5-war.zip
2.解压插件($ECLIPSE_HOME表示你安装的myeclipse主目录)
将上述两个插件都解压到$ECLIPSE_HOME/eclipse/plugins目录中;
Axis2_Codegen_Wizard_1.3.0
和Axis2_Service_Archiver_1.3.0
3.
在$ECLIPSE_HOME/eclipse/links目录下增加文件axis-eclipse-plugin.link
写入path= $ECLIPSE_HOME/eclipse/plugins (将$ECLIPSE_HOME替换为你的安装目录!!)
4.
重新启动myeclipse,在file->new->other中即可看到Axis2 Wizards,至此,axis2插件安装成功!!(GXGX)
5.
赶快试下用wsdl文件生成java源文件吧!是不是有错误出现?对~
事情就是这样发展的。
6.
An error occurred while completing process-java.lang.reflect.InvocationTargetException的错误
解决方法如下:
step 1、从AXIS2的LIB库中复制"geronimo-stax-api_1.0_spec-1.0.1.jar"和
"backport-util-concurrent-3.1.jar"文件到Axis2_Codegen_Wizard_1.3.0的lib目录中,同时修改Axis2_Codegen_Wizard_1.3.0下的plugin.xml文件,在<runtime>中添加
<library name="lib/geronimo-stax-api_1.0_spec-1.0.1.jar">
<export name="*"/>
</library>
<library name="lib/backport-util-concurrent-3.1.jar">
<export name="*"/>
</library>
到plugin.xml文件中,保存!
step 2、将 $workspace位置/.metadata/.plugins下目录 Axis2_Codegen_Wizard
删除
step 3、在命令行下切换至$ECLIPSE_HOME\eclipse目录,然后执行:
eclipse –clear 或者是 eclipse -clean,不太记得了
但是参照这个安装博文生成java类的时候仍然会出现
An error occurred while completing process-java.lang.reflect.InvocationTargetException的错误
按照博文的说法也改了,但是还是行。
又找到了别的更改方法。那就是重命名Axis2_Codegen_Wizard_1.3.0为Axis2_Codegen_Wizard_1.4.0
更改这个目录下的plugin.xml中的 version="1.4.0"
再重启Myeclipse,成功!!!
至此Axis2安装成功,下面用插件来生成java类吧,在myeclipse里flie--->new---->other 会出现
用code Generator吧
选择使用wsdl生成java,选择相应的wsdl文件点击下一步出现我选择custom
可以选择生成测试方法,客户端我选择生成的是sync style的,之后是选择生成的位置,注意包名,我试了几次才放对地方。
工程了还要引入相应的jar包,这些jar包在axis2-1.5-war\axis2\WEB-INF\lib里,但是jar包太多,我参照网上给出的列表筛选出了一些放入其中,下面就是我整理的axis2客户端所需要的jar包
在此还要给出缺失axis2 jar包引起的错误
各种类缺失对于的jar包:
org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder -->axis2-spring-1.6.1.jar
org.apache.axis2.transport.http.AxisServlet ------------------------->axis2-transport-http-1.6.1.jar
javax.wsdl.xml.WSDLLocator ------------------------------------------->wsdl4j-1.6.2.jar
org.apache.ws.commons.schema.resolver.URIResolver -------------->XmlSchema-1.4.7.jar
org.apache.axiom.om.OMNode ------------------------------------------>axiom-api-1.2.12.jar
org.apache.axiom.om.impl.llom.factory.OMLinkedListMetaFactory ------>axiom-impl-1.2.12.jar
org.apache.neethi.PolicyComponent ------------------------------------------>neethi-3.0.1.jar
org.apache.axis2.transport.local.LocalTransportSender--------------->axis2-transport-local-1.6.1.jar
org.apache.commons.httpclient.HttpException-------------------------->commons-httpclient-3.1.jar
javax.mail.internet.ParseException ----------------------------------------->mail-1.4.jar
org.apache.commons.fileupload.FileItemFactory ------------------------>commons-fileupload-1.2.jar
org.apache.woden.resolver.URIResolver -------------------------------------->woden-api-1.0M9.jar
org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher ------------>axis2-jaxws-1.6.1.jar
org.apache.commons.io.FileUtils ------------------------------------------------>commons-io-1.4.jar
org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver ----------------->axis2-adb-1.6.1.jar
org.apache.axis2.rpc.client.RPCServiceClient ------------------------------ -->axis2-adb-1.6.1.jar
org.apache.axis2.AxisFault? --------------------------------------------------->axis2-kernel-1.6.1.jar
org.apache.axis2.addressing.EndpointReference ------------------------ -->axis2-kernel-1.6.1.jar
org.apache.axis2.client.Options ----------------------------------------------->axis2-kernel-1.6.1.jar
org.apache.commons.logging.LogFactory ---------------------------------->commons-logging-1.1.1.jar
org.apache.axis2.transport.http.CommonsHTTPTransportSender ------>axis2-transport-http-1.6.1.jar
org.apache.http.HttpResponseFactory ---------------------------------->httpcore-4.0.jar
org.apache.commons.codec.DecoderException ------------------------- -->commons-codec-1.3.jar
到这里我生成了一个xxxxxxStub类,这个类就是接口类啦~但是Sap需要ws-security的认证,这个用户名和密码填写在哪里呢????
调用sap webservice的认证信息如下使用:
ServiceStub serviceStub= new ServiceStub();
HttpTransportProperties.Authenticator basicAuth = new HttpTransportProperties.Authenticator();
basicAuth.setUsername("userName");
basicAuth.setPassword("password");
serviceStub._getServiceClient().getOptions().setProperty(HTTPConstants.AUTHENTICATE, basicAuth);
最后大功告成~
相关文章推荐
- MyEclipse6.0 安装axis2插件, 调用加密的SAP webservice
- MyEclipse下Axis2插件安装
- myeclipse8.5安装axis2插件
- MyEclipse下Axis2插件的下载和安装
- myeclipse6.0 svn插件安装
- MyEclipse下Axis2插件的下载和安装
- Myeclipse8.0安装Axis2插件
- MyEclipse8.5安装axis2插件
- axis webservice 笔记 安装eclipse axis2 插件 (links 方式)
- 关于MyEclipse8.0安装axis2插件问题
- 使用axis2调用sap生成的webservice(带用户密码认证)
- Myeclipse6.0安装svn插件
- MyEclipse6.5 下Axis2插件的下载和安装
- eclipse安装Axis2插件和简单的webservice发布
- 关于MyEclipse8.0安装axis2插件问题续之处理报错java.lang.reflect.InvocationTargetException
- MyEclipse 8.5 安装 axis2 插件 .
- MyEclipse下axis2插件的安装
- MyEclipse安装插件axis2方法
- eclipse axis2 插件安装方法(不是 MyEclipse)
- myEclipse6.0 的jd_gui插件安装(myEclipse6.0直接查看jar文件的源码)