Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package es.carebear.rightmanagement.client.user; import com.google.gson.Gson; import es.carebear.rightmanagement.client.exceptions.BadRequestException; import es.carebear.rightmanagement.client.exceptions.InternalServerErrorException; import es.carebear.rightmanagement.client.exceptions.UnknownResponseException; import es.carebear.rightmanagement.core.user.User; import java.io.IOException; import javax.swing.JTextField; import javax.ws.rs.ForbiddenException; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.httpclient.methods.multipart.*; import org.omg.CORBA.UNKNOWN; /** * * @author hannes */ public class ChangeAttributeUser { private String baseUri; private HttpClient httpClient; public ChangeAttributeUser(String baseUri) { this.baseUri = baseUri; this.httpClient = new HttpClient(); } public void ChangeAttribute(String userName, String authName, String[] attribute, String[] value) throws BadRequestException, InternalServerErrorException, IOException, UnknownResponseException { Gson gson = new Gson(); String attr = gson.toJson(attribute, attribute.getClass()); String val = gson.toJson(value, value.getClass()); PostMethod postMethod = new PostMethod(baseUri + "/client/users/change/" + userName); postMethod.addParameter("authName", authName); postMethod.addParameter("attribute", attr); postMethod.addParameter("value", val); int responseCode = httpClient.executeMethod(postMethod); switch (responseCode) { case HttpStatus.SC_OK: break; case HttpStatus.SC_BAD_REQUEST: throw new BadRequestException(); case HttpStatus.SC_INTERNAL_SERVER_ERROR: throw new InternalServerErrorException(); case HttpStatus.SC_FORBIDDEN: throw new ForbiddenException(); default: throw new UnknownResponseException((new Integer(responseCode)).toString()); } } }