List of usage examples for org.apache.commons.httpclient.methods ByteArrayRequestEntity ByteArrayRequestEntity
public ByteArrayRequestEntity(byte[] paramArrayOfByte)
From source file:org.wso2.carbon.appfactory.svn.repository.provider.SCMManagerBasedSVNRepositoryProvider.java
@Override public String createRepository(String applicationKey, String tenantDomain) throws RepositoryMgtException { HttpClient client = getClient();//from w ww . ja v a 2 s . c om PostMethod post = new PostMethod(getServerURL() + REST_BASE_URI + REST_CREATE_REPOSITORY_URI); Repository repository = new Repository(); repository.setName(applicationKey); repository.setType("svn"); Permission permission = new Permission(); permission.setGroupPermission(true); permission.setName(applicationKey); permission.setType(PermissionType.WRITE); ArrayList<Permission> permissions = new ArrayList<Permission>(); permissions.add(permission); repository.setPermissions(permissions); post.setRequestEntity(new ByteArrayRequestEntity(getRepositoryAsString(repository))); post.setDoAuthentication(true); post.addRequestHeader("Content-Type", "application/xml;charset=UTF-8"); String url; try { client.executeMethod(post); } catch (IOException e) { String msg = "Error while invoking the web service"; log.error(msg, e); throw new RepositoryMgtException(msg, e); } finally { post.releaseConnection(); } if (post.getStatusCode() == HttpStatus.SC_CREATED) { url = getAppRepositoryURL(applicationKey, tenantDomain); } else { String msg = "Repository creation is failed for " + applicationKey + " server returned status " + post.getStatusText(); log.error(msg); throw new RepositoryMgtException(msg); } return url; }
From source file:org.zaproxy.zap.extension.ascanrulesAlpha.CloudMetadataScanner.java
private static HttpMethod createRequestMethod(HttpRequestHeader header, HttpBody body, HttpMethodParams params) throws URIException { HttpMethod httpMethod = new ZapGetMethod(); httpMethod.setURI(header.getURI());//from w w w . j av a2s .c o m httpMethod.setParams(params); params.setVersion(HttpVersion.HTTP_1_1); String msg = header.getHeadersAsString(); String[] split = Pattern.compile("\\r\\n", Pattern.MULTILINE).split(msg); String token = null; String name = null; String value = null; int pos = 0; for (int i = 0; i < split.length; i++) { token = split[i]; if (token.equals("")) { continue; } if ((pos = token.indexOf(":")) < 0) { return null; } name = token.substring(0, pos).trim(); value = token.substring(pos + 1).trim(); httpMethod.addRequestHeader(name, value); } if (body != null && body.length() > 0 && (httpMethod instanceof EntityEnclosingMethod)) { EntityEnclosingMethod post = (EntityEnclosingMethod) httpMethod; post.setRequestEntity(new ByteArrayRequestEntity(body.getBytes())); } httpMethod.setFollowRedirects(false); return httpMethod; }
From source file:pt.lsts.neptus.historicdata.HistoricWebAdapter.java
public Future<Notification> upload(HistoricData data) { return executor.submit(new Callable<Notification>() { @Override//from w w w. j a v a 2s . c o m public Notification call() throws Exception { try { PostMethod post = new PostMethod(postURL); ByteArrayOutputStream baos = new ByteArrayOutputStream(); IMCOutputStream out = new IMCOutputStream(baos); out.writeMessage(data); out.close(); ByteArrayRequestEntity body = new ByteArrayRequestEntity(baos.toByteArray()); post.setRequestEntity(body); NeptusLog.pub().info("Uploading message to the web"); int response = client.executeMethod(post); if (response != 200) throw new Exception("HTTP Status " + response + ": " + post.getResponseBodyAsString()); return Notification.success(I18n.text("Message upload"), I18n.text("Message uploaded successfully")); } catch (Exception e) { e.printStackTrace(); NeptusLog.pub().error(e); return Notification.error(I18n.text("Message upload"), I18n.textf("Error uploading to web: %error", e.getMessage())); } } }); }
From source file:pt.lsts.neptus.historicdata.HistoricWebAdapter.java
public Future<Notification> upload() { return executor.submit(new Callable<Notification>() { @Override// w w w . j a v a 2 s . c o m public Notification call() throws Exception { int samplesBefore = localStore.numSamples(); HistoricData data = localStore.pollData(0, 64000); try { PostMethod post = new PostMethod(postURL); ByteArrayOutputStream baos = new ByteArrayOutputStream(); IMCOutputStream out = new IMCOutputStream(baos); out.writeMessage(data); out.close(); ByteArrayRequestEntity body = new ByteArrayRequestEntity(baos.toByteArray()); post.setRequestEntity(body); NeptusLog.pub().info("Uploading local data to the web"); int response = client.executeMethod(post); if (response != 200) throw new Exception("HTTP Status " + response + ": " + post.getResponseBodyAsString()); NeptusLog.pub().info("Uploaded local data to the web. Local dataStore contained " + samplesBefore + " and now contains " + localStore.numSamples() + " samples."); uploaded.addData(data); return Notification.info(I18n.text("Historic Data Upload"), I18n.text("Historic Data uploaded successfully")); } catch (Exception e) { localStore.addData(data); e.printStackTrace(); NeptusLog.pub().error(e); return Notification.warning(I18n.text("Historic Data Upload"), I18n.textf("Error uploading historic data: %error", e.getMessage())); } } }); }
From source file:test.unit.be.fedict.eid.applet.service.AppletServiceServletTest.java
@Test public void sslPostIdentityMessage() throws Exception { // setup/*from w w w.j a v a2 s . co m*/ byte[] idFile = IOUtils.toByteArray(AppletServiceServletTest.class.getResourceAsStream("/id-alice.tlv")); // XXX: expired LOG.debug("SSL URL: " + this.sslLocation); HttpClient httpClient = new HttpClient(); HelloMessage helloMessage = new HelloMessage(); PostMethod postMethod = new PostMethod(this.sslLocation); PostMethodHttpTransmitter httpTransmitter = new PostMethodHttpTransmitter(postMethod); Transport.transfer(helloMessage, httpTransmitter); int result = httpClient.executeMethod(postMethod); assertEquals(HttpServletResponse.SC_OK, result); Header setCookieHeader = postMethod.getResponseHeader("Set-Cookie"); String setCookieValue = setCookieHeader.getValue(); int sessionIdIdx = setCookieValue.indexOf("JSESSIONID=") + "JESSSIONID=".length(); String sessionId = setCookieValue.substring(sessionIdIdx, setCookieValue.indexOf(";", sessionIdIdx)); LOG.debug("session id: " + sessionId); postMethod = new PostMethod(this.sslLocation); postMethod.addRequestHeader("X-AppletProtocol-Version", "1"); postMethod.addRequestHeader("X-AppletProtocol-Type", "IdentityDataMessage"); postMethod.addRequestHeader("X-AppletProtocol-IdentityFileSize", Integer.toString(idFile.length)); RequestEntity requestEntity = new ByteArrayRequestEntity(idFile); postMethod.setRequestEntity(requestEntity); // operate result = httpClient.executeMethod(postMethod); // verify assertEquals(HttpServletResponse.SC_OK, result); HttpSession httpSession = this.servletTester.getContext().getSessionHandler().getSessionManager() .getHttpSession(sessionId); Identity identity = (Identity) httpSession.getAttribute("eid.identity"); assertNotNull(identity); assertEquals("Alice Geldigekaart2266", identity.firstName); Address address = (Address) httpSession.getAttribute("eid.address"); assertNull(address); }
From source file:test.unit.be.fedict.eid.applet.service.PostMethodHttpTransmitter.java
public void setBody(byte[] bodyValue) { RequestEntity requestEntity = new ByteArrayRequestEntity(bodyValue); this.postMethod.setRequestEntity(requestEntity); }
From source file:weka.gui.explorer.ClassifierPanelRemoteLauncher.java
/** * Send a task to the server/*from w w w .ja va 2 s . co m*/ * * @param task the task to send * @return the task ID returned by the server */ protected String sendTaskToServer(NamedTask task) { InputStream is = null; PostMethod post = null; String taskID = null; try { byte[] serializedTask = WekaServer.serializeTask(task); String service = ExecuteTaskServlet.CONTEXT_PATH + "/?client=Y"; String url = constructURL(service); post = new PostMethod(url); RequestEntity entity = new ByteArrayRequestEntity(serializedTask); post.setRequestEntity(entity); post.setDoAuthentication(true); post.addRequestHeader(new Header("Content-Type", "application/octet-stream")); // Get HTTP client HttpClient client = WekaServer.ConnectionManager.getSingleton().createHttpClient(); WekaServer.ConnectionManager.addCredentials(client, m_username, m_password); int result = client.executeMethod(post); if (result == 401) { logMessage("Unable to send fold task to server - authentication " + "required"); } else { is = post.getResponseBodyAsStream(); ObjectInputStream ois = new ObjectInputStream(is); // System.out.println("Number of bytes in response " + ois.available()); Object response = ois.readObject(); if (response.toString().startsWith(WekaServlet.RESPONSE_ERROR)) { logMessage("A problem occurred at the sever : \n" + "\t" + response.toString()); } else { taskID = response.toString(); } } } catch (Exception ex) { logMessage("An error occurred while sending fold task to server: " + ex.getMessage()); ex.printStackTrace(); } finally { if (is != null) { try { is.close(); } catch (Exception e) { } } if (post != null) { // Release current connection to the connection pool post.releaseConnection(); } } return taskID; }
From source file:weka.server.knowledgeFlow.FlowRunnerRemote.java
/** * Execute the current flow remotely on the server * /* ww w . j a v a 2s .c o m*/ * @throws Exception if a problem occurs */ public void executeFlowRemote() throws Exception { Exception exception = null; NamedTask taskToRun = null; if (m_schedule == null) { taskToRun = new UnscheduledNamedKFTask(NAME_PREFIX + m_name, m_flowXML, m_sequential, m_parameters); } else { taskToRun = new ScheduledNamedKFTask(NAME_PREFIX + m_name, m_flowXML, m_sequential, m_parameters, m_schedule); } InputStream is = null; // BufferedInputStream bi = null; PostMethod post = null; try { // serialized and compressed byte[] serializedTask = WekaServer.serializeTask(taskToRun); System.out.println("Sending " + serializedTask.length + " bytes..."); String service = ExecuteTaskServlet.CONTEXT_PATH + "/?client=Y"; post = new PostMethod(constructURL(service)); RequestEntity entity = new ByteArrayRequestEntity(serializedTask); post.setRequestEntity(entity); post.setDoAuthentication(true); post.addRequestHeader(new Header("Content-Type", "application/octet-stream")); // Get HTTP client HttpClient client = WekaServer.ConnectionManager.getSingleton().createHttpClient(); WekaServer.ConnectionManager.addCredentials(client, m_username, m_password); // Execute request int result = client.executeMethod(post); System.out.println("Response status from server : " + result); // the response /* * is = post.getResponseBodyAsStream(); bi = new BufferedInputStream(is); * StringBuffer bodyB = new StringBuffer(); int c; while ((c = * bi.read())!=-1) { bodyB.append((char)c); } */ if (result == 401) { // Security problem - authentication required /* * bodyB.setLength(0); bodyB.append("Unable to send task to server - " + * "authentication required.\n"); */ System.err.println("Unable to send task to server - authentication required.\n"); } else { is = post.getResponseBodyAsStream(); ObjectInputStream ois = new ObjectInputStream(is); // System.out.println("Number of bytes in response " + ois.available()); Object response = ois.readObject(); if (response.toString().startsWith(WekaServlet.RESPONSE_ERROR)) { System.err.println("A problem occurred at the sever : \n" + "\t" + response.toString()); } else { System.out.println("Task ID from server : " + response.toString()); } /* * String body = bodyB.toString(); if * (body.startsWith(WekaServlet.RESPONSE_ERROR)) { * System.err.println("A problem occurred at the sever : \n" + "\t" + * body); } else { System.out.println("Task ID from server : " + body); * } */ } } catch (Exception ex) { ex.printStackTrace(); exception = ex; } finally { /* * if (bi != null) { bi.close(); } */ if (is != null) { is.close(); } if (post != null) { // Release current connection to the connection pool post.releaseConnection(); } } if (exception != null) { throw new Exception(exception.fillInStackTrace()); } }
From source file:weka.server.knowledgeFlow.legacy.FlowRunnerRemote.java
/** * Execute the current flow remotely on the server * //from w w w . ja v a 2 s . c om * @throws Exception if a problem occurs */ public void executeFlowRemote() throws Exception { Exception exception = null; NamedTask taskToRun = null; if (m_schedule == null) { taskToRun = new LegacyUnscheduledNamedKFTask(NAME_PREFIX + m_name, m_flowXML, m_sequential, m_parameters); } else { taskToRun = new LegacyScheduledNamedKFTask(NAME_PREFIX + m_name, m_flowXML, m_sequential, m_parameters, m_schedule); } InputStream is = null; // BufferedInputStream bi = null; PostMethod post = null; try { // serialized and compressed byte[] serializedTask = WekaServer.serializeTask(taskToRun); System.out.println("Sending " + serializedTask.length + " bytes..."); String service = ExecuteTaskServlet.CONTEXT_PATH + "/?client=Y"; post = new PostMethod(constructURL(service)); RequestEntity entity = new ByteArrayRequestEntity(serializedTask); post.setRequestEntity(entity); post.setDoAuthentication(true); post.addRequestHeader(new Header("Content-Type", "application/octet-stream")); // Get HTTP client HttpClient client = WekaServer.ConnectionManager.getSingleton().createHttpClient(); WekaServer.ConnectionManager.addCredentials(client, m_username, m_password); // Execute request int result = client.executeMethod(post); System.out.println("Response status from server : " + result); // the response /* * is = post.getResponseBodyAsStream(); bi = new BufferedInputStream(is); * StringBuffer bodyB = new StringBuffer(); int c; while ((c = * bi.read())!=-1) { bodyB.append((char)c); } */ if (result == 401) { // Security problem - authentication required /* * bodyB.setLength(0); bodyB.append("Unable to send task to server - " + * "authentication required.\n"); */ System.err.println("Unable to send task to server - authentication required.\n"); } else { is = post.getResponseBodyAsStream(); ObjectInputStream ois = new ObjectInputStream(is); // System.out.println("Number of bytes in response " + ois.available()); Object response = ois.readObject(); if (response.toString().startsWith(WekaServlet.RESPONSE_ERROR)) { System.err.println("A problem occurred at the sever : \n" + "\t" + response.toString()); } else { System.out.println("Task ID from server : " + response.toString()); } /* * String body = bodyB.toString(); if * (body.startsWith(WekaServlet.RESPONSE_ERROR)) { * System.err.println("A problem occurred at the sever : \n" + "\t" + * body); } else { System.out.println("Task ID from server : " + body); * } */ } } catch (Exception ex) { ex.printStackTrace(); exception = ex; } finally { /* * if (bi != null) { bi.close(); } */ if (is != null) { is.close(); } if (post != null) { // Release current connection to the connection pool post.releaseConnection(); } } if (exception != null) { throw new Exception(exception.fillInStackTrace()); } }
From source file:weka.server.WekaServer.java
/** * Execute a task on a slave server// w w w .j a va 2s . co m * * @param entry the task entry for the task * @param task the task to execute * @param slave the slave to execute on * @return true if the task is sent to the slave successfully */ protected synchronized boolean executeTaskRemote(WekaTaskEntry entry, NamedTask task, String slave) { InputStream is = null; PostMethod post = null; boolean success = true; NamedTask originalTask = task; if (task instanceof Scheduled) { // scheduling checks are run on this local server. So wrap this // scheduled task up in an unscheduled instance for this single // execution on the slave NamedTask oneTime = new WekaTaskMap.NamedClassDelegator(task); task = oneTime; } try { // make sure that the task loads any resources it needs // before we pass it on task.loadResources(); byte[] serializedTask = WekaServer.serializeTask(task); String url = "http://" + slave; url = url.replace(" ", "%20"); url += ExecuteTaskServlet.CONTEXT_PATH; url += "/?client=Y&master=Y"; post = new PostMethod(url); RequestEntity entity = new ByteArrayRequestEntity(serializedTask); post.setRequestEntity(entity); post.setDoAuthentication(true); post.addRequestHeader(new Header("Content-Type", "application/octect-stream")); // Get HTTP client HttpClient client = ConnectionManager.getSingleton().createHttpClient(); ConnectionManager.addCredentials(client, m_username, m_password); // Execute request int result = client.executeMethod(post); System.out.println("[WekaServer] Executing task on slave server : " + slave); System.out.println("[WekaServer] Sending " + serializedTask.length + " bytes..."); System.out.println("[WekaServer] Response from slave : " + result); if (result == 401) { System.err.println("[WekaServer] Unable to send task to " + "slave server (" + slave + ") - authentication required.\n"); success = false; } else { is = post.getResponseBodyAsStream(); ObjectInputStream ois = new ObjectInputStream(is); // System.out.println("Number of bytes in response " + ois.available()); Object response = ois.readObject(); if (response.toString().startsWith(WekaServlet.RESPONSE_ERROR)) { System.err.println( "[WekaServer] A problem occurred at the slave sever : \n" + "\t" + response.toString()); } entry.setRemoteID(response.toString()); entry.setServer(slave); success = true; // this will not necessarily capture the execution time of // this task as it might get queued at the slave... if (originalTask != null) { persistTask(entry, originalTask); } } } catch (Exception ex) { ex.printStackTrace(); success = false; } finally { if (is != null) { try { is.close(); } catch (IOException e) { e.printStackTrace(); } } if (post != null) { post.releaseConnection(); } // save memory (if possible) task.persistResources(); } return success; }