1.创建java类
LoginLogWebservice
代码如下:
package com.platform.webservice;
import java.util.HashMap;
import java.util.Map;
import org.springframework.remoting.jaxrpc.ServletEndpointSupport;
import com.platform.um.loginlog.service.ILoginlogService;
/**
*
* @Description: 其他系统调用UM对外公布的 登出日志更新
* @author chen
* @version 1.0,
* @date 2013-4-18 下午05:15:45
*/
public class LoginLogWebservice extends ServletEndpointSupport {
private ILoginlogService loginLogService;
/**
* 调用 方法 更新的UM系统记录的登录日志信息
* 远程调用时 ipAddress , systemId必填
* @param ipAddress
* @param id loginlog 的id
* @param systemId 归属系统的id code
* @return
*/
public String updateLoginlog(String ipAddress,String id,String systemId){
Map<String,Object> paramMap = new HashMap<String,Object>();
paramMap.put("ipAddress", ipAddress);
paramMap.put("systemId", systemId);
paramMap.put("id", id);
try {
//获取 service 实例
loginLogService = (ILoginlogService) getApplicationContext().getBean("com.platform.um.loginlog.service.impl.LoginlogServiceImpl");
loginLogService.updateLoginlog(paramMap);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
}
----------------------------------------------------------------------------------------
2.配置web.xml
<!-- start webservice by aixs -->
<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>
<session-config>
<session-timeout>5</session-timeout>
</session-config>
<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>
<!-- end webservice by aixs -->
----------------------------------------------------------------------
3.在WEB-INF目录下新建
server-config.wsdd
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<deployment name="defaultClientConfig"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"
xmlns:handler="http://xml.apache.org/axis/wsdd/providers/handler" xmlns="http://xml.apache.org/axis/wsdd/">
<globalConfiguration name="defaultClientConfig">
<requestFlow name="RequestFlow1" type="">
<handler name="Handler1" type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="session"/>
</handler>
<handler name="Handler2" type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="request"/>
<parameter name="extension" value=".jwr"/>
</handler>
</requestFlow>
</globalConfiguration>
<handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>
<handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>
<handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
<transport name="http" type="">
<requestFlow name="RequestFlow1" type="">
<handler name="Handler1" type="URLMapper"/>
<handler name="Handler2" type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
</requestFlow>
</transport>
<transport name="local" type="">
<responseFlow name="ResponseFlow1" type="">
<handler name="Handler1" type="LocalResponder"/>
</responseFlow>
</transport>
<service name="AdminService" type="" provider="java:MSG">
<parameter name="allowedMethods" value="AdminService"/>
<parameter name="enableRemoteAdmin" value="false"/>
<parameter name="className" value="org.apache.axis.utils.Admin"/>
<namespace>http://xml.apache.org/axis/wsdd/</namespace>
</service>
<service name="Version" type="" provider="java:RPC">
<parameter name="allowedMethods" value="getVersion"/>
<parameter name="className" value="org.apache.axis.Version"/>
</service>
<service name="LoginLogWebService" type="" provider="java:RPC" style="rpc" use="encoded">
<parameter name="scope" value="Request"/>
<parameter name="className" value="com.platform.webservice.LoginLogWebservice"/>
<parameter name="allowedMethods" value="*"/>
<namespace>urn:LoginLogWebService</namespace>
</service>
</deployment>
-----------------------------------------------
4.测试:
package test;
import java.net.URL;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import com.longtech.configuration.BaseConfiguration;
/**
* 测试 webservice 接口
* @author chen
*
*/
public class TestClient {
private static String md5Key = BaseConfiguration.getString("md5_key");
public static void init(String host, int port, final String username, final String password) {
System.setProperty("http.proxyType", "4");
System.setProperty("http.proxyPort", Integer.toString(port));
System.setProperty("http.proxyHost", host);
System.setProperty("http.proxySet", "true");
}
public static void main(String[] args) {
//通过设置代理 进行外网连接
String proxy = "172.16.251.58";
int port = 3128;
String username = "usr";
String password = "pwd";
//通过设置代理 进行外网连接
init(proxy, port, username, password);
try {
//webservice 对应的本地 地址
String targetEendPoint = "http://11.205.242.110:8080/platform/services/LoginLogWebService";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new URL(targetEendPoint));
//指定调用的webservice 方法 换用不同的方法进行测试
call.setOperationName(new QName(targetEendPoint, "updateLoginlog"));
String result = (String) call.invoke(new Object[]{"1","2","3"});
System.out.println("----"+result);
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
通过整合Spring和Axis2,我们可以利用Spring的依赖注入(DI)和管理功能,同时享受Axis2的高性能和易用性。 集成Spring和Axis2的过程大致分为以下几个步骤: 1. **配置Axis2**:在Spring项目中,首先需要将Axis2的...
spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码
整合Axis2和Spring的主要目的是利用Spring的依赖注入(DI)和面向切面编程(AOP)特性,使得Web服务的创建和管理更加方便。以下是整合步骤: 1. **添加依赖**:在Maven项目中,需要在pom.xml文件中添加Axis2和...
描述中提到的“简单例子:axis2整合spring发布webservice”,意味着我们将学习如何将这两个框架结合,以便通过Spring来管理和控制Web服务的生命周期,同时利用Axis2的Web服务处理能力。此外,“以及session的管理”...
将Axis2与Spring整合可以让我们在Spring的环境中便捷地创建、管理和部署Web服务,同时利用Spring的众多优点。本文将深入探讨如何将这两者融合,并介绍相关的技术细节。 首先,理解Axis2 Web服务的核心概念。Axis2是...
### Spring与Axis的整合知识点详解 #### 一、Spring与Axis整合概述 Spring与Axis的整合,是指在Java环境中利用Spring框架管理和配置Axis Web服务的一种技术。这种整合方式充分利用了Spring框架的强大功能(如依赖...
Spring整合Axis2经典案例解析 在Java Web服务开发中,Spring框架和Apache Axis2是两个重要的组件。Spring作为一款强大的企业级应用框架,提供了一种模块化、灵活的方式来构建应用程序,而Axis2则是Apache组织提供的...
接下来,我们将探讨如何将Web Service服务接口与Spring整合: 1. **配置Spring上下文**:在Spring配置文件中,你需要声明一个WebServiceTemplate或Endpoint,这是Spring与Web Service交互的核心组件。例如,对于...
整合Axis2和Spring2.5不仅提高了开发效率,还增强了Web服务的灵活性和可维护性。这种组合在企业级应用中非常常见,因为它们能够很好地处理复杂的服务交互和管理需求。通过合理的配置和编程,你可以构建出强大且健壮...
通过整合SpringBoot与Axis,我们可以快速构建高效且易于维护的Web服务。 首先,让我们了解什么是SpringBoot。SpringBoot是Spring框架的扩展,旨在简化Spring应用的初始搭建以及开发过程。它提供了开箱即用的设置,...
3. **创建WebService**:在Spring Boot应用中,你可以通过Axis1.4创建一个WebService。首先,定义一个Java类,包含你想要公开的方法。然后,使用Axis的工具生成服务端点接口和服务类。 4. **配置Spring Boot**:...
4. **Spring整合**: - Spring框架提供了一个统一的依赖注入容器,可以将Axis2和XFire的服务实例化和管理起来,简化服务的创建和配置。 - Spring的AOP(面向切面编程)支持可以用于实现Web服务的安全性、事务管理...
"maven-spring-mybatis-webservice"的整合就是这样一个实例,它涵盖了项目管理、服务层架构、持久层操作以及Web服务通信等多个方面。接下来,我们将深入探讨这些知识点。 首先,Maven是Java开发中的一个项目管理和...
总结来说,Spring Boot整合CXF提供Web服务的关键步骤包括:添加CXF依赖、定义Web服务接口、实现接口、配置CXF端点以及调整仓库配置以优化依赖下载。通过这种方式,我们可以轻松地在Spring Boot应用中创建和部署Web...
3. **整合Spring和Axis2**:这一步通常通过 Axis2的Spring模块(SpringModule)完成,它允许你将Spring配置加载到Axis2环境中,使得Axis2能够发现并使用Spring托管的服务。 4. **处理Session**:在Web服务中,由于...
Quartz 是一个开源的作业调度框架,用于在 Java 应用程序中实现任务调度。它允许开发者安排任务在特定的时间点或按照特定...通过分析和学习这个示例,开发者可以加深对 Spring 整合第三方库和实现复杂业务逻辑的理解。
描述中提到,“使用axis2与spring3进行集成,实现的webservice服务。”这意味着项目的核心功能是展示如何将Apache Axis2与Spring 3框架整合,以便利用Spring的依赖注入和管理能力来构建和控制Web服务。此外,资料是...
首先,我们需要理解Spring Boot与CXF的整合。Spring Boot通过其自动配置特性简化了CXF的设置。我们可以通过添加`cxf-spring-boot-starter-jaxws`依赖到项目中来启动这个过程。在`pom.xml`文件中添加如下依赖: ```...
本主题聚焦于如何使用Spring3 MVC与Hibernate进行整合,以便更好地处理业务逻辑和数据持久化,并结合Axis2发布Web服务,同时利用Quartz进行任务调度。以下将详细介绍这些技术及其整合过程。 **Spring3 MVC** 是...
主流的spring4mvc+Mybatis,并整合了axis2实现webservice接口开发。利用quartz注解实现任务作业功能源码。利用spring RoutingDataSource实现动态数据源切换