服务端配置:
第一步:引用jar包
commons-httpclient.jar
commons-logging.jar
jdom-10.jar
wsdl4j-1.6.1.jar
xbean-spring-2.8.jar
xfire-all-1.2.6.jar

第二步:添加配置文件
路径:WEB-INF/config/xfire-servlet.xml
内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- START SNIPPET: xfire -->
<import resource="classpath:org/codehaus/xfire/spring/xfire.xml"/>
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="urlMap">
<map>
<entry key="/userWeb">
<ref bean="sso"/>
</entry>
</map>
</property>
</bean>

<!-- Declare a parent bean with all properties common to both services -->
<bean id="sso" class="org.codehaus.xfire.spring.remoting.XFireExporter">
<property name="serviceFactory">
<ref bean="xfire.serviceFactory"/>
</property>
<property name="xfire">
<ref bean="xfire"/>
</property>
<property name="serviceBean">
<ref bean="cmsUserWebMng"/>
</property>
<property name="serviceClass">
<value>com.jeecms.cms.manager.main.CmsUserWebMng</value>
</property>
</bean>
<!-- END SNIPPET: xfire -->
</beans>

第三步:修改web。xml
添加配置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/config/application-context.xml
/WEB-INF/config/cache-context.xml
/WEB-INF/config/captcha-context.xml
/WEB-INF/config/jeecore-context.xml
/WEB-INF/config/jeecms-context.xml
/WEB-INF/config/xfire-servlet.xml//添加配置
</param-value>
</context-param>

增加:

<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.spring.XFireSpringServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/portal/door/services/*</url-pattern>
</servlet-mapping>

第四步:添加接口和实现方法CmsUserWebMng和CmsUserWebMngImpl
CmsUserWebMng:
package com.jeecms.cms.manager.main;

public interface CmsUserWebMng {
public void save(String username, String password, String email, String ip, String realname);

public void update(String oldUsername, String username, String password, String email);

public void delete(String username);
}

CmsUserWebMngImpl

package com.jeecms.cms.manager.main.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.jeecms.cms.dao.main.CmsUserDao;
import com.jeecms.cms.entity.main.CmsGroup;
import com.jeecms.cms.entity.main.CmsSite;
import com.jeecms.cms.entity.main.CmsUser;
import com.jeecms.cms.entity.main.CmsUserExt;
import com.jeecms.cms.manager.main.CmsGroupMng;
import com.jeecms.cms.manager.main.CmsSiteMng;
import com.jeecms.cms.manager.main.CmsUserExtMng;
import com.jeecms.cms.manager.main.CmsUserSiteMng;
import com.jeecms.cms.manager.main.CmsUserWebMng;
import com.jeecms.common.hibernate3.Updater;
import com.jeecms.core.entity.UnifiedUser;
import com.jeecms.core.manager.UnifiedUserMng;

@Service
@Transactional
public class CmsUserWebMngImpl implements CmsUserWebMng {

public void save(String username, String password, String email, String ip, String realname) {
// TODO Auto-generated method stub
UnifiedUser unifiedUser = unifiedUserMng.save(username, email,
password, ip);
CmsUser user = new CmsUser();
user.forAdmin(unifiedUser, false, false, 8);
CmsGroup group = null;
CmsSite site = cmsSiteMng.findById(1);
group = cmsGroupMng.getRegDef();

if (group == null) {
throw new RuntimeException(
"register default member group not setted!");
}
user.setGroup(group);

user.init();
dao.save(user);
CmsUserExt userExt = new CmsUserExt();
userExt.setRealname(realname);
cmsUserExtMng.save(userExt, user);
cmsUserSiteMng.save(site, user, Byte.parseByte("1"), true);
System.out.println("管理员添加成功");
}

public void update(String oldUsername, String username, String password, String email) {
// TODO Auto-generated method stub
CmsUser bean = dao.findByUsername(oldUsername);
if (bean != null) {
bean.setUsername(username);
bean.setEmail(email);
Updater<CmsUser> updater = new Updater<CmsUser>(bean);
updater.include("email");
CmsUser user = dao.updateByUpdater(updater);
if (!password.equals("")){
unifiedUserMng.update(user.getId(), password, user.getEmail());
}
System.out.println("更新成功");
}
}

public void delete(String username) {
// TODO Auto-generated method stub
CmsUser bean = dao.findByUsername(username);
unifiedUserMng.deleteById(bean.getId());
CmsUser user = dao.deleteById(bean.getId());
if (user != null) {
System.out.println("删除成功");
}
}

public CmsUserDao dao;
private CmsUserExtMng cmsUserExtMng;
private UnifiedUserMng unifiedUserMng;
private CmsGroupMng cmsGroupMng;
private CmsSiteMng cmsSiteMng;
private CmsUserSiteMng cmsUserSiteMng;

@Autowired
public void setDao(CmsUserDao dao) {
this.dao = dao;
}

@Autowired
public void setCmsUserExtMng(CmsUserExtMng cmsUserExtMng) {
this.cmsUserExtMng = cmsUserExtMng;
}

@Autowired
public void setUnifiedUserMng(UnifiedUserMng unifiedUserMng) {
this.unifiedUserMng = unifiedUserMng;
}

@Autowired
public void setCmsGroupMng(CmsGroupMng cmsGroupMng) {
this.cmsGroupMng = cmsGroupMng;
}

@Autowired
public void setCmsSiteMng(CmsSiteMng cmsSiteMng) {
this.cmsSiteMng = cmsSiteMng;
}

@Autowired
public void setCmsUserSiteMng(CmsUserSiteMng cmsUserSiteMng) {
this.cmsUserSiteMng = cmsUserSiteMng;
}
}

第五步:配置接口及实现类
在config/jeecms-context.xml中添加
<bean id="cmsUserWebMng" class="com.jeecms.cms.manager.main.impl.CmsUserWebMngImpl" />
服务端配置成功

客户端:

public void websave(CmsUser bean, String password, String ip){
org.codehaus.xfire.service.Service srModel = new ObjectServiceFactory().create(CmsUserWebMng.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory
.newInstance().getXFire());// 创建工厂实例
String url = Constants.EMSP_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url);
manager.save(bean.getUsername(), password, bean.getEmail(), ip, bean.getRealname());

} catch (Exception e) {
e.printStackTrace();
}

String url2 = Constants.DSPTECH_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url2);
manager.save(bean.getUsername(), password, bean.getEmail(), ip, bean.getRealname());

} catch (Exception e) {
e.printStackTrace();
}

String url3 = Constants.DSPTALENT_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url3);
manager.save(bean.getUsername(), password, bean.getEmail(), ip, bean.getRealname());

} catch (Exception e) {
e.printStackTrace();
}
}

public void webupdate(String oldUsername, String username, String password, String email){
org.codehaus.xfire.service.Service srModel = new ObjectServiceFactory().create(CmsUserWebMng.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory
.newInstance().getXFire());// 创建工厂实例
String url = Constants.EMSP_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url);
manager.update(oldUsername, username, password, email);

} catch (Exception e) {
e.printStackTrace();
}

String url2 = Constants.DSPTECH_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url2);
manager.update(oldUsername, username, password, email);

} catch (Exception e) {
e.printStackTrace();
}

String url3 = Constants.DSPTALENT_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url3);
manager.update(oldUsername, username, password, email);

} catch (Exception e) {
e.printStackTrace();
}
}

public void webdelete(String username){
org.codehaus.xfire.service.Service srModel = new ObjectServiceFactory().create(CmsUserWebMng.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory
.newInstance().getXFire());// 创建工厂实例
String url = Constants.EMSP_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url);
manager.delete(username);

} catch (Exception e) {
e.printStackTrace();
}

String url2 = Constants.DSPTECH_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url2);
manager.delete(username);

} catch (Exception e) {
e.printStackTrace();
}

String url3 = Constants.DSPTALENT_URL;

try{
CmsUserWebMng manager = (CmsUserWebMng)factory.create(srModel, url3);
manager.delete(username);

} catch (Exception e) {
e.printStackTrace();
}
}

webservice配置的更多相关文章

  1. 找不到对应的webservice配置参数[ProcessService]

    在UI端 保存时 界面显示无法保存 且报此错误 “找不到对应的webservice配置参数[ProcessService]” 此下为解决方法: 首先 在[应用管理平台]--[参数模板设置] 找到你的参 ...

  2. webservice 配置

    webservice 配置 <system.web> <!--允许GET/POST请求 --> <webServices> <protocols> &l ...

  3. jquery ajax跨域访问webservice配置

    1.webservice方法 [System.Web.Script.Services.ScriptService] public class TestService : System.Web.Serv ...

  4. ajax跨域访问 java controller 和 cxf(webservice) 配置方式(CORS)

    1. controller跨域访问,配置方式 重点在这里: <mvc:cors> <mvc:mapping path="/*" allowed-origins=& ...

  5. .NET总结--WebService 配置与设置,发布

    发环境 OS:win10 企业版 开发工具:VS2017 IIS版本:6.0 .NET版本:4.6.1 Web Service 简介 Web Service也叫XML Web Service WebS ...

  6. log4net类库配置、WebService配置

    一.类库配置 结构如下图 1.LogUtility类 public class LogUtility { private static readonly log4net.ILog log = log4 ...

  7. Axis2 WebService(配置、发布、调用)

    准备工作 1.下载:axis2-1.5.4-bin.zip,axis2-1.5.4-war.zip 下载地址:http://axis.apache.org/axis2/java/core/ 2.环境变 ...

  8. springboot 配置webservice接口

    导入依赖的jar <!-- webservice cxf --> <dependency> <groupId>org.apache.cxf</groupId& ...

  9. cxf+spring+数字签名开发webservice(一)

    数字证书的准备         下面做的服务端和客户端证书在例子中无法加解密,不知道什么原因,我是使用正式环境中的客户端和服务端进行开发测试的,所以需要大家自己去准备证书,或者有人知道为什么jdk生成 ...

随机推荐

  1. Spring MVC Spring MyBatis 整合 - 快速上手

    我个人比较喜欢写注释,在工作中对注释的重要性看的也比较高,所以大部分文字都在注释中,代码外的文字会写的偏少,关键能懂就行 先看一下整合后的工程目录(单工程,多工程以后会采用maven) 5个packa ...

  2. JavaWeb学习之Servlet(三)----Servlet的映射匹配问题、线程安全问题

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140529.html 一.Servlet映射匹配问题: 在第一篇文章中的 ...

  3. uGUI练习(六) ScrollView

    练习目标 练习uGUI的滑动组件 一.相关组件 ScrollRect Mask Grid Layout Group Scrollbar 二.步骤 1.创建一个Panel,命名为ScrollRect,添 ...

  4. Finger Gestures 3.1

    3.x自定义手势 Finger Gestures用起来非常爽,除了有常用的手势之外,3.x的版本还增加了自定义手势! 官方Document:http://fingergestures.fatalfro ...

  5. 转:程序员必须知道的几个Git代码托管平台

    http://www.open-open.com/lib/view/open1420704561390.html

  6. Sublime Text2 新建文件快速生成Html头部信息和炫酷的代码补全

    预备:安装emmet插件(previously known as Zen Coding) 方法一  package control法: 上一篇博客已经介绍了如何安装package control.打开 ...

  7. ClickJacking(点击劫持)

    问题: 点击劫持(ClickJacking)是一种视觉上的欺骗手段.大概有两种方式,一是攻击者使用一个透明的iframe,覆盖在一个网页上,然后诱使用户在该页面上进行操作,此时用户将在不知情的情况下点 ...

  8. Verilog学习笔记基本语法篇(九)········ 任务和函数

    task 和 function 说明语句分别用来定义任务和函数,利用任务和函数可以把函数模块分成许多小的任务和函数便于理解和调试.任务和函数往往还是大的程序模块在不同地点多次用到的相同的程序段.输入. ...

  9. C++ c++与C语言的区别(实用性增强,register关键字增强,全局变量检测增强)

    //区别①:实用性增强 #include<iostream> using namespace std; //C语言中的变量都必须在作用域开始的位置定义!! //C++中更强调语言的“实用性 ...

  10. 深入了解view以及自定义控件

    参考文章: http://blog.csdn.net/guolin_blog/article/details/12921889 Android LayoutInflater原理分析,带你一步步深入了解 ...