jax-rs的客户端完整实例
本地接口:
@Override
public Response formsubGet(String accountContent, char inputContent,
String opEntrustWay, String opStation, String sysName,String sdkType,String comsFunc,String password,
char passwordType) {
return this.formsubPost(accountContent, inputContent, opEntrustWay, opStation,sysName,sdkType,comsFunc, password, passwordType);
}
@Override
public Response formsubPost(String accountContent, char inputContent,
String opEntrustWay, String opStation, String sysName, String sdkType,String comsFunc,String password,
char passwordType) {
Response loginAuth = null;
本地实现类:
public class AuthLoginServerImpl implements AuthLoginServer
{
private static final Logger logger = Logger.getLogger(AuthLoginServerImpl.class);
private AuthLoginClient authLoginClient;
@Override
public Response formsubGet(String accountContent, char inputContent,
String opEntrustWay, String opStation, String sysName,String sdkType,String comsFunc,String password,
char passwordType) {
return this.formsubPost(accountContent, inputContent, opEntrustWay, opStation,sysName,sdkType,comsFunc, password, passwordType);
}
@Override
public Response formsubPost(String accountContent, char inputContent,
String opEntrustWay, String opStation, String sysName, String sdkType,String comsFunc,String password,
char passwordType) {
Response loginAuth = null;
try {
loginAuth = authLoginClient.login(accountContent, inputContent, opEntrustWay, opStation, sysName,sdkType,comsFunc,password, passwordType);
} catch (Exception e) {
logger.info("调用login认证异常:"+ e.getMessage());
loginAuth.setRetCode("-1");
loginAuth.setRetMessage("login方法认证失败!");
}
return loginAuth;
}
public void setAuthLoginClient(AuthLoginClient authLoginClient) {
this.authLoginClient = authLoginClient;
}
}
客户端类:
@Path("/mds")
@Produces("application/json;charset=UTF-8")
public interface AuthLoginClient
{
@POST
@Consumes({ MediaType.APPLICATION_FORM_URLENCODED + ";charset=UTF-8",
MediaType.MULTIPART_FORM_DATA + ";charset=UTF-8" })
@Path("/formsub.json")
/*
* F_OP_SRC首字母大写,无法将所有参数进行封装处理,因为对象属性是通过geter获取,结果得到的属性名为f_OP_SRC
*/
public Response login(@FormParam("AccountContent") String accountContent, @FormParam("InputContent") char inputContent,
@FormParam("OpEntrustWay") String opEntrustWay, @FormParam("OpStation") String opStation,
@FormParam("sys_name") String sysName, @FormParam("sdk_type") String sdkType,
@FormParam("coms_func") String comsFunc,@FormParam("Password") String password,
@FormParam("PasswordType") char passwordType);
}
xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://cxf.apache.org/jaxrs
http://cxf.apache.org/schemas/jaxrs.xsd">
<!-- 资源文件配置 -->
<bean )
private int sysnodeId;
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getBranchNo() {
return branchNo;
}
public void setBranchNo(String branchNo) {
this.branchNo = branchNo;
}
public String getClientID() {
return clientID;
}
public void setClientID(String clientID) {
this.clientID = clientID;
}
public int getSysnodeId() {
return sysnodeId;
}
public void setSysnodeId(int sysnodeId) {
this.sysnodeId = sysnodeId;
}
}