<—start—>
编写crm的webservice接口,实现客户信息保存操作。在CustomerService接口中新增一个服务接口,用于添加客户注册的信息。
1 @Path("/customer")2 @POST3 @Consumes({ "application/xml", "application/json" })4 public void regist(Customer customer);
在实现类中,只需要调用dao的save方法保存以下就可。
1 @Override2 public void regist(Customer customer) {3 ????System.out.println(customer);4 ????customerRepository.save(customer);5 }
因为save方法jpa接口中默认就有,所以不需要自定义去创建方法。
接下来就是在CustomerAction类中调用服务了。
调用webservice连接crm保存客户信息:发送json类型的数据,调用post方法将customer传递过去,客户注册就要保存到后台数据库,所以用post方法去添加。
1 @ParentPackage("json-default") 2 @Namespace("/") 3 @Controller 4 @Scope("prototype") 5 public class CustomerAction2 extends BaseAction<Customer> { 6 ????@Action(value="customer_sendSms") 7 ????public String sendSms() throws IOException{ 8 ????????//生成短信验证码 9 ????????String randomCode = RandomStringUtils.randomNumeric(4);10 ????????//将短信验证码保存到session中11 ????????ServletActionContext.getRequest().getSession().setAttribute(model.getTelephone(),randomCode);12 ????????//编辑短信内容13 ????????String msg = "你好!本次获取的验证码位:"+randomCode;14 ????????//调用SMS服务发送短信15 ????????//String result = SmsUtils.sendSmsByHTTP(model.getTelephone(),msg);16 ????????String result = "000/XXX";17 ????????if(result.startsWith("000")){18 ????????????//以"000"开头表示短信发送成功19 ????????????return NONE;20 ????????}else{21 ????????????//发送失败,就抛出一个运行期异常22 ????????????throw new RuntimeException("短信发送失败,信息码:"+result);23 ????????}24 ????}25 26 ????//属性驱动接收页面填写的验证码27 ????private String checkCode;28 ????public void setCheckCode(String checkCode) {29 ????????this.checkCode = checkCode;30 ????}31 ????@Action(value="customer_regist",results={@Result(name="success",type="redirect",location="signup_success.html"),32 ????????????@Result(name="input",type="redirect",location="signup.html")})33 ????public String regist(){34 ????????//先校验短信验证码,如果不通过就跳回登录页面35 ????????//从session中获取之前生成的短信验证码36 ????????String checkcodeSession = (String) ServletActionContext.getRequest().getAttribute(model.getTelephone());37 ????????if(checkcodeSession==null||!checkcodeSession.equals(checkCode)){38 ????????????System.out.println("短信验证码错误!");39 ????????????//短信验证码错误40 ????????????return INPUT;41 ????????}42 ????????//调用webservice连接crm保存客户信息43 ????????WebClient.create("http://localhost:9002/crm_management/services/customerService/customer").type(MediaType.APPLICATION_XML)44 ????????.post(model);45 ????????System.out.println("客户注册成功...");46 ????????return SUCCESS;47 ????}48 }
<—end—>
WebService实例-CRM系统提供WebService实现用户注册功能
原文地址:http://www.cnblogs.com/niwotaxuexiba/p/8087494.html