`

ssh整合webservice cxf采用注解的方式+andriod客户端

阅读更多

定义接口和实现类

/**
* 自定义service接口
*
* @time 9:01:54 PM
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
@WebService
public interface PUserService {
@WebMethod
public String seyHello(@WebParam(name = "name")
String name);


@WebMethod
public String saveUser(@WebParam(name = "email")
String email, @WebParam(name = "nickName")
String nickName, @WebParam(name = "pwd")
String pwd);


@WebMethod
public String getUser(@WebParam(name = "email")
String email, @WebParam(name = "pwd")
String pwd);


}

 

/**
* 自定义接口实现
*
* @time 9:01:46 PM
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
@WebService
public class PUserServiceImpl implements PUserService {


private BaseDao<User> userDao;

// 注入userdao
@Resource(name = "userDao")
public void setUserDao(BaseDao<User> userDao) {
this.userDao = userDao;
}


public String seyHello(String name) {
System.out.println("进入服务器端的sayHello方法");
return "你好" + name;
}


/**
* 注册用户
*/


public String saveUser(String email, String nickName, String pwd) {
System.out.println("进入服务器端的saveUser方法");
User user = new User();
user.setEmail(email);
user.setNickName(nickName);
user.setPassword(pwd);
user.setRegDate(new Date());


//
userDao.saveEntity(user);
return "success";
}


/**
* 查询用户
*/
public String getUser(String email, String pwd) {


System.out.println("进入服务器端的getUser方法" + email + "===pwd===" + pwd);
List<User> userList = userDao.findEntityByHQL("from User u where u.email =? and u.password = ?", email, pwd);
if (!ValidateUtil.isValidate(userList)) {
return "error";
}
System.out.println("user===============" + userList.get(0).getEmail());
return "success";
}
}

 

 

web.xml中的配置

<!-- cxf的设置 -->
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>
org.apache.cxf.transport.servlet.CXFServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>


<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>

 

spring配置文件

<!-- service服务 -->
<bean id="pService"
class="cn.yue.lsp.service.impl.PUserServiceImpl">
</bean>
<!-- 访问路径 -->
<jaxws:endpoint id="puserService" implementor="#pService"
address="/puserService" />

 

注:如果在是作声明式事务通知,在接口中的方法一定不要随意声明,会报hibernate session no bond的错误

 

android 客户端

需要添加第三方包

ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar

 

/**
* userService接口实现
*
* @time 上午9:57:01
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public class UserServiceImpl implements UserService {


/**
* 注册用户
*/
@Override
public String saveEntity(User user) {
Mylog.i("tag", "add user success!");


// =========================================================


// 创建HttpTransportSE对象
HttpTransportSE htse = new HttpTransportSE(Constants.SERVICE_URL);
// 使用soap1.1协议,创建SoapSerializationEnvelope对象
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
// 创建soapObject对象,参数为命名空间和webService 方法
SoapObject request = new SoapObject(Constants.SERVICE_NAMESPACE, Constants.METHOD_ADDUSER);
// 添加参数
// request.addProperty("name", user.getEmail());
request.addProperty("email", user.getEmail());
request.addProperty("nickName", user.getNickName());
request.addProperty("pwd", user.getPassword());


// 设置soap消息体
// envelope.setOutputSoapObject(request);
envelope.bodyOut = request;
String str = null;
try {
// 调用对象的call方法,
htse.call(null, envelope);
if (envelope.getResponse() != null) {
Log.i("tag", "返回正常");
// 取得返回的soapObject对象
SoapObject result = (SoapObject) envelope.bodyIn;
str = result.getProperty(0).toString();
Log.i("tag", "返回值为:" + str);
return str;
}
} catch (IOException e) {
e.printStackTrace();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
Log.i("tag", "无返回值");
return str;
}

}

未设置超时时间,网络出问题需要作处理

 

 

分享到:
评论

相关推荐

    WebService+CXF+Spring+MySql+注解

    【注解】:注解在Java中是一种元数据,提供了在代码中添加元信息的方式,这些信息可以被编译器或运行时环境用来处理代码。在本项目中,注解可能被用于简化配置,例如Spring的@Autowired用于自动装配依赖,@...

    springboot整合CXF发布webservice和客户端调用

    它允许开发者以Java注解或XML方式定义服务接口,并提供了丰富的客户端和服务端工具。 3. **整合过程** - 首先,我们需要在`pom.xml`中添加CXF和SpringBoot的相关依赖。 - 创建一个服务接口,使用JAX-WS注解如`@...

    SSH整合cxf webservice实例

    SSH整合CXF Webservice实例详解 在Java世界中,SSH(Spring、Struts、Hibernate)是一种常见的企业级应用开发框架组合,它提供了强大的MVC(Model-View-Controller)架构支持,以及持久层管理和业务逻辑处理。而CXF...

    Java cxf开发webservice,分别有客户端和服务端

    2.用cxf开发webservice 3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息...

    ssh整合cxf(webservice)

    ssh框架整合cxf(webservice),ssh案例(增、删、改、查),发布webservice,客户端调用,该工程自带jar包,mysql连接池,自动建库、建表。 ①直接解压,导入ssh2cxf项目 ②用tomcat启动ssh2cxf项目 ③在浏览器输入...

    Spring + CXF + 注解方式(webService)

    标题“Spring + CXF + 注解方式(webService)”揭示了本次讨论的核心内容,即如何使用Spring框架与Apache CXF结合,并通过注解的方式来实现Web服务。Apache CXF是一个开源的服务框架,它允许开发者创建和消费各种不同...

    使用cxf wsdl2java生成webservice客户端

    使用cxf wsdl2java生成webservice客户端命令

    ssh+cxf整合发布webservice实例

    SSH+CXF整合发布Web服务(Webservice)实例详解 在软件开发中,SSH(Spring、Struts、Hibernate)是一个常见的Java EE应用框架组合,用于构建高效、可维护的企业级应用程序。CXF则是一个开源的Java服务堆栈,主要...

    CXF协议WebService+Spring客户端和服务端程序,实现了多数据源动态切换

    开发者可能使用了Spring的`@WebService`注解来声明服务接口,并使用CXF的`JAXWS-RI`或`JAXRS`组件来暴露这些服务。 另一方面,"DSG_CXF_WebClient_Test"可能包含了客户端代码,用于调用服务端的Web服务。这部分代码...

    webservice-CXF-spring+maven

    【标题】"webservice-CXF-spring+maven" 指的是使用Apache CXF框架,结合Spring和Maven构建Web服务。Apache CXF是一个开源的Java框架,它允许开发人员创建和消费各种Web服务,包括SOAP和RESTful类型。Spring框架则...

    cxf webservice+spring+mybatis 整合(含Jar包)

    在IT行业中,构建一个高效且灵活的企业级应用是至关重要的,而"CXF Webservice+Spring+MyBatis 整合"就是一个这样的解决方案。这个整合利用了三个强大的开源框架:Apache CXF、Spring以及MyBatis,来实现Web服务、...

    springmvc+webservice(cxf)+maven 完整实例

    CXF是Apache组织的一个开源项目,它是一个强大的WebService实现,支持SOAP、RESTful等多种通信方式。CXF允许开发者轻松地创建和消费Web服务,提供了一套完整的工具集,包括了WSDL生成、服务发布、客户端生成等,大大...

    Springboot整合CXF发布Web service和客户端调用(用户和密码验证)

    在IT行业中,Spring Boot是一个非常流行的微服务框架,它简化了Spring应用的初始化和配置。而Apache CXF则是一个强大的...通过这种方式,你可以构建安全、可靠的Web服务,并在Spring Boot环境中轻松地进行客户端调用。

    简单的webservice+Cxf+Spring数据对接实例以及jar.rar

    简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar...

    ssh2+cxf搭建webservice实例

    SSH2+CXF 搭建 WebService 实例详解 SSH(Struts2、Spring、Hibernate)是一个常见的 Java Web 开发框架组合,而 CXF 是一个用于构建和开发 Web 服务的开源框架。本教程将详细介绍如何在 SSH 项目中集成 CXF 来创建...

    webservice xfire整合spring(webservice配置采用注解)例子

    【标题】中的“webservice xfire整合spring(webservice配置采用注解)”是指将Xfire,一个早期的Web服务框架,与Spring框架结合使用,其中Web服务的配置通过Spring的注解方式进行。这种方式简化了配置,提高了开发...

    webservice(cxf)+ajax请求,客户端和服务器端

    【标题】:Web服务(CXF)+Ajax 请求:客户端与服务器端交互 【知识点详解】 Web服务在现代软件开发中扮演着至关重要的角色,它提供了不同系统间数据交换的标准方式。CXF 是一个流行的开源框架,用于创建和消费 ...

    WebService CXF+struts+spring 示例

    在"WebService CXF+Struts+Spring 示例"项目中,这三者如何协同工作呢? - **CXF**:作为Web服务的核心,CXF负责处理Web服务的发布、调用以及协议转换。在Spring环境中,CXF可以通过Spring配置文件进行配置,定义...

    idea + spring4.3.7.RELEASE+cxf3.1.0整合+客户端调用

    通过CXF的注解,如`@WebService`和`@WebMethod`,我们可以声明这是一个Web服务并定义其操作。 在服务器端,我们需要配置CXF的Servlet,以便处理HTTP请求。这通常在Spring的配置文件中完成,通过`&lt;jaxws:endpoint&gt;`...

Global site tag (gtag.js) - Google Analytics