- 浏览: 761550 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
飞出四季做的茧:
z赞
JAVA日期格式化字符串的24小时制 -
daniaowansui:
亲测,可行!
JS 在open打开的窗口中调用父页面JS方法 -
zh_123:
ie9测试过吗貌似列不能冻结啊!
Css 实现的表头, 表列冻结, 可以超大数据量 -
Jxdwuao:
IXR 写道少年,在哪里混呢?在虹桥机场这边阿, 兄弟你在何方 ...
修改JS文件FF刷新不生效 -
IXR:
少年,在哪里混呢?
修改JS文件FF刷新不生效
现在项目中大量应用了Webservice技术,与别的核心系统交互。之前没有用过Webservice,所以,了解下,做了个测试的例子。
在Java中开发Webservice可以使用很多的框架,我们使用的Aixs。
需要的包如下:
activation.jar
axis.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
mail.jar
saaj.jar
wsdl4j-1.5.1.jar
服务器端:建立接口和实现类:
接口类:
package server; import java.rmi.Remote; import com.cpic.b2bcore.externalinterface.wss.type.MusterCollectRequest; import com.cpic.b2bcore.externalinterface.wss.type.MusterCollectResponse; public interface ISayHello extends Remote { public MusterCollectResponse getPolicyInfo(MusterCollectRequest mrequest)throws java.rmi.RemoteException; }
实现类:
package server;
import java.rmi.RemoteException;
import com.cpic.b2bcore.externalinterface.wss.type.MusterCollectRequest;
import com.cpic.b2bcore.externalinterface.wss.type.MusterCollectResponse;
public class SayHello implements ISayHello {
public MusterCollectResponse getPolicyInfo(MusterCollectRequest mrequest)
throws RemoteException {
// TODO Auto-generated method stub
MusterCollectResponse mresponse = new MusterCollectResponse();
mresponse.setPublicpolicies(null);
return mresponse;
}
}
可以看出,这里传入参数和返回参数都是自定义对象,属于较为复杂的 service。
需要 在web.xml 里面加入 AXIS 的配置参数。。
<display-name>Apache-Axis</display-name>
<listener>
<listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>
</listener>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>
org.apache.axis.transport.http.AxisServlet
</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminServlet</servlet-name>
<servlet-class>
org.apache.axis.transport.http.AdminServlet
</servlet-class>
<load-on-startup>100</load-on-startup>
</servlet>
<servlet>
<servlet-name>SOAPMonitorService</servlet-name>
<servlet-class>
org.apache.axis.monitor.SOAPMonitorService
</servlet-class>
<init-param>
<param-name>SOAPMonitorPort</param-name>
<param-value>5001</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SOAPMonitorService</servlet-name>
<url-pattern>/SOAPMonitor</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xsd</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
编辑 wsdd 文件,用以生成 配置文件
<!-- Use this file to deploy some handlers/chains and services --> <!-- Two ways to do this: --> <!-- java org.apache.axis.client.AdminClient deploy.wsdd --> <!-- after the axis server is running --> <!-- or --> <!-- java org.apache.axis.utils.Admin client|server deploy.wsdd --> <!-- from the same directory that the Axis engine runs --> <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <!-- Services from YwxCommonService WSDL service --> <service name="PolicyInfoService" provider="java:RPC" style="wrapped" use="literal"> <parameter name="className" value="server.SayHello"/> <parameter name="allowedMethods" value="getPolicyInfo"/> <parameter name="wsdlTargetNamespace" value="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx"/> <parameter name="schemaQualified" value="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx,http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx/types"/> <parameter name="wsdlServiceElement" value="PolicyInfoService"/> <parameter name="wsdlServicePort" value="PolicyInfoService"/> <parameter name="wsdlPortType" value="PolicyInfoCommService"/> <parameter name="typeMappingVersion" value="1.2"/> <operation name="getPolicyInfo" qname="operNS:getPolicyInfo" xmlns:operNS="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx" returnQName="retNS:musterCollectResponse" xmlns:retNS="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx" returnType="rtns:MusterCollectResponse" xmlns:rtns="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx/types" soapAction="" > <parameter qname="pns:musterCollectRequest" xmlns:pns="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx" type="tns:MusterCollectRequest" xmlns:tns="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx/types"/> </operation> <typeMapping xmlns:ns="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx/types" qname="ns:MusterCollectRequest" type="java:com.cpic.b2bcore.externalinterface.wss.type.MusterCollectRequest" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" /> <typeMapping xmlns:ns="http://wss.cpic.com.cn/propertyinsurance/commonservice/ywx/types" qname="ns:MusterCollectResponse" type="java:com.cpic.b2bcore.externalinterface.wss.type.MusterCollectResponse" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" /> </service> </deployment>
用于执行部署的批处理脚本:
@echo off set AXIS_HOME=D:\workspace\testServices\WebRoot\WEB-INF rem set AXIS_HOME cd %AXIS_HOME% rem echo current dir=%cd% set JAVA_HOME=D:\MyEclipse 6.5\jre rem set JAVA_HOME set CLASSPATH=%JAVA_HOME%\lib\tools.jar set CLASSPATH=.;%CLASSPATH% set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\activation.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\axis.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\axis-ant.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\commons-discovery-0.2.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\commons-logging-1.0.4.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\jaxrpc.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\log4j-1.2.8.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\mail.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\saaj.jar set CLASSPATH=%CLASSPATH%;%AXIS_HOME%\WebRoot\WEB-INF\lib\wsdl4j-1.5.1.jar rem set CLASSPATH set _RUNJAVA="%JAVA_HOME%\bin\java" set _RUNJAVAW="%JAVA_HOME%\bin\javaw" set _RUNJDB="%JAVA_HOME%\bin\jdb" set _RUNJAVAC="%JAVA_HOME%\bin\javac" set OUTPUT_PATH=%AXIS_HOME%\src echo 开始执行wsddjava... java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient -l http://localhost:8080/testServices/services/PolicyInfoService deploy.wsdd echo ...执行wsdd java完成 pause
执行该批处理文件,顺利完成后,部署成功。
客户端的生成 见另外的 一篇 博客 。。
- WEB-INF.rar (1.9 MB)
- 下载次数: 121
发表评论
-
NGINX配置简单的MOCK接口
2024-10-15 17:25 0公司中需要对应用进行压测,需要不影响接口返回速度的情况下,返 ... -
RabbitMQ消息关闭自动启动
2024-09-23 11:34 0应用配置的RabbitMQ一启动就注册监听器,这样 ... -
应用内存长期80%不下降
2024-06-21 18:13 0观察到应用JVM长期85%以上,堆内存小幅度波动,没有变化, ... -
内存80告警
2024-05-24 11:08 0网关内存到了85%, 查看近几天内存一直小幅波动,没有下降 ... -
Eclipse设置护眼色
2022-06-17 09:04 0编辑区背景色 1.背景颜色 Window->Pre ... -
java证书安装和更新/删除
2022-01-19 15:02 1100拿到证书,如 ****2019.cer。在WIN下面,双击 ... -
CLASS文件目录不执行更新,改了代码不生效
2021-12-02 16:56 0class目录下不编译, 更新了代码运行还是老的内容执行. ... -
Struts2导出多Excel压缩包
2021-09-28 16:34 0Struts2配置 <result name= ... -
8080端口不能访问
2021-07-21 23:11 0电脑装好之后,本机能访问,外机通过IP不能访问,关闭防火墙可 ... -
JVM设置中文编码
2021-07-05 11:46 0用CXF2.0做了一个接口转发服务,调用后发现中文出现乱码, ... -
自动发布没有通知更新缓存
2021-01-15 10:17 0问题 在成功测试完成平台的一个版本, 测试计划出测试报告 ... -
Eclipse 查看本地历史记录
2020-09-03 16:39 0Eclipse 在更新后,发现本地修改的代码不见了,可以使 ... -
SPRINGBOOT定时器中断不跑了测试
2020-08-05 21:43 0一次发布之后, 定时器不跑了, 追查了TOMCAT 日志, ... -
LOG4J多项目同TOMCAT后面项目不生成日志文件
2020-04-28 10:35 0在项目的TOMCAT里新增加一个监控的项目, 发现监控项目 ... -
DUBBO配置多环境
2019-11-07 16:49 0需要在Springboot2项目中配置DUBBO, Dub ... -
SOAPUI中文乱码
2019-10-23 11:05 0用SOAPUI调用报错UTF-8,参数中有中文。看到返回错误 ... -
JAVA中SET集合判断是否包含的坑
2019-10-22 14:18 0SET集合中存放航班信息对象FlightBoardQuery ... -
定时器任务缓慢
2019-10-09 13:51 0值机系统在国庆前定时器不再执行了。查日志Spring定时任 ... -
NGINX配置
2019-05-28 16:17 0在测试环境LINUX安装后,调试了很久跳转TOMCAT不通 ... -
使用Eclipse调试Spring boot项目时总是直接进入SilentExitExceptionHandler
2019-03-05 10:21 0使用Eclipse调试Spring boot项目时总是直接 ...
相关推荐
这个压缩包包含了一系列必要的库文件,使得开发者能够在Java环境中有效地使用Axis进行开发。 描述中提到的"axis生成客户端文件所需要的jar包"指的就是这些JAR文件在生成客户端代理类时起着至关重要的作用。以下是每...
在IT行业中,尤其是在企业级应用开发中,常常需要与各种系统进行集成,以实现数据的交互和共享。本文将深入探讨如何使用Axis2这个Java Web服务客户端框架来调用SharePoint的Web服务,以实现文件的上传、下载以及删除...
虽然没有提供具体的描述,但从标签"源码 工具"我们可以推测这可能与Java编程有关,因为文件名中有".java"的扩展名,通常代表Java源代码文件。以下是对这些文件名及其可能关联的知识点的详细解释: 1. **...
总的来说,CTSS是一个融合了C/S架构、WebService技术和跨平台通信策略的实训选题系统,它的设计和实现充分考虑了异构环境下的数据一致性,是Java技术在实践中的一个典型应用案例。对于学习和研究Java开发、Web服务...
在IT领域,"aixs2包"可能指的是一个专门为AIX操作系统(AIX是IBM开发的一种UNIX变体)设计的软件包。这个包可能包含了特定的功能或者服务,比如系统管理工具、性能监控模块或是针对AIX系统的优化组件。然而,"aixs2...
本文将深入探讨如何使用AXIS进行Web服务开发,主要关注定制发布这一更灵活且常用的发布方式。 首先,确保你已准备好开发环境,包括JDK 1.4.2或更高版本,Myeclipse 6.0或其他集成开发环境,Tomcat 5.0.28或兼容版本...
在本场景中,我们关注的是使用Apache Axis2框架来自动创建WSDL文件,这涉及到一系列的jar包。 Apache Axis2是Java平台上一个强大的Web服务引擎,它支持SOAP、RESTful和XML-RPC等多种通信协议。它提供了一种方便的...
aixs查询软件
在实际应用中,选择SYMMETRY还是AXIS,或者是否使用AXISYMMETRY SWIRL,需要根据具体问题的对称性、流动特性和计算资源来决定。理解这些边界条件的差异和适用范围,能够帮助我们更有效地进行流体力学模拟,提高计算...
在hibernate spring项目基础上通过aixs2-1.4.1把程序发布成webService,包括aixs2以对象数组和AXIOM方式处理map,list的程序代码;和aixs2-1.4-1的jar包
在CODESYS中,实轴的控制主要通过编程实现,这通常涉及到运动控制功能块的使用。这些功能块允许编写运动控制程序,如点到点定位、连续运动、同步运动等。通过对这些功能块的调用和参数设置,可以实现对实轴的精确...
\quad从上述代码中,我们可以看到,data.mean(axis=1)是将data数据的行进行了求均值,而data.drop(“two”,axis=1)是按列进行了删除,那么到底axis=0和axis=1,是如何定义的呢? \quad最简单的解释就是axis=0表示跨...
### CANopen通信概览 CANopen是一种基于CAN(Controller Area Network)总线技术的高层...文档中提供的技术细节、安全指南、版本更新信息和使用手册对于理解、配置和维护基于CANopen通信的伺服驱动器网络至关重要。
在单轴运动模式下,可以通过选择“Aixs 1-3”或“Aixs 4-6”分别控制机器人的一到六个关节轴进行独立旋转,这对于精细调整和定位非常有用。对于外轴运动,只能选择单轴模式,确保每个轴独立动作。 运动坐标系的选择...
Axis2 1.6.3 必要的jar包资源。
按照图一中aixs=0,对aixs=0上下对应的数据进行相加在学习numpy的时候,最难理解的就是轴的概念,我们知道坐标系中有轴的概念,那么两个轴是否有关联呢?为了便于理解,特写此博客进行梳理。 正文 首先数组的维数...
另外,CAN总线(CAN6_AIXS_SENSOR)用于汽车电子系统中的通信,具有高可靠性和抗干扰能力。 6. **键盘和按键**:KEY0和DS0 RED表示用户输入接口,可能是一个物理按键或触摸屏输入。 7. **蜂鸣器**:BEEPR847K连接...
例如,R9和510R是电路中的电阻,用来限制电流或调整电压。 接着,LED0、LEDKEY0和KEYGNDR181K是LED指示灯和按键部分,通常用于用户交互,如系统状态指示或用户输入。BEEP则是蜂鸣器,用于发出声音提示。 在I2C2_...