List of usage examples for org.apache.commons.httpclient Header toExternalForm
public String toExternalForm()
From source file:com.fatwire.dta.sscrawler.reporting.reporters.PageCollectingReporter.java
public void addToReport(final ResultPage page) { if (page.getResponseCode() != 200) { return; // bail out }/* ww w.ja v a2 s . co m*/ final long id = idGen.incrementAndGet(); FileWriter writer = null; try { final String p = (page.getPageName() != null ? page.getPageName() : "") + "-" + id + ".txt"; final File pFile = new File(dir, p); pwriter.println(page.getUri() + "\t" + path + File.separator + p.replace('/', File.separatorChar)); pwriter.flush(); pFile.getAbsoluteFile().getParentFile().mkdirs(); writer = new FileWriter(pFile); writer.write(page.getUri().toString()); writer.write(PageCollectingReporter.CRLF); writer.write(PageCollectingReporter.CRLF); final Header[] headers = page.getResponseHeaders(); for (final Header header : headers) { writer.write(header.toExternalForm()); } writer.write(PageCollectingReporter.CRLF); writer.write(page.getBody()); } catch (final IOException e) { log.error(e, e); } finally { if (writer != null) { try { writer.close(); } catch (final IOException ignored) { // ignored } } } }
From source file:com.mosso.client.cloudfiles.FilesResponse.java
/** * @param method The HttpMethod that generated this response *///from www . j a v a 2 s.c om public FilesResponse(HttpMethod method) { httpmethod = method; if (logger.isDebugEnabled()) { logger.debug("Request Method: " + method.getName()); logger.debug("Request Path: " + method.getPath()); logger.debug("Status Line: " + getStatusLine()); Header[] reqHeaders = method.getRequestHeaders(); for (Header rH : reqHeaders) logger.debug(rH.toExternalForm()); Header[] responseHeaders = getResponseHeaders(); for (int i = 0; i < responseHeaders.length; i++) logger.debug(responseHeaders[i]); } }
From source file:com.eviware.soapui.impl.wsdl.panels.teststeps.amf.AMFResponse.java
protected void initHeaders(ExtendedPostMethod postMethod) { requestHeaders = new StringToStringsMap(); responseHeaders = new StringToStringsMap(); if (postMethod == null) return;//from w w w. ja v a2 s.c o m try { ByteArrayOutputStream rawResponse = new ByteArrayOutputStream(); ByteArrayOutputStream rawRequest = new ByteArrayOutputStream(); if (!postMethod.isFailed()) { rawResponse.write(String.valueOf(postMethod.getStatusLine()).getBytes()); rawResponse.write("\r\n".getBytes()); } rawRequest.write((postMethod.getMethod() + " " + postMethod.getURI().toString() + " " + postMethod.getParams().getVersion().toString() + "\r\n").getBytes()); Header[] headers = postMethod.getRequestHeaders(); for (Header header : headers) { requestHeaders.add(header.getName(), header.getValue()); rawRequest.write(header.toExternalForm().getBytes()); } if (!postMethod.isFailed()) { headers = postMethod.getResponseHeaders(); for (Header header : headers) { responseHeaders.add(header.getName(), header.getValue()); rawResponse.write(header.toExternalForm().getBytes()); } responseHeaders.add("#status#", String.valueOf(postMethod.getStatusLine())); } if (postMethod.getRequestEntity() != null) { rawRequest.write("\r\n".getBytes()); if (postMethod.getRequestEntity().isRepeatable()) { postMethod.getRequestEntity().writeRequest(rawRequest); } else rawRequest.write("<request data not available>".getBytes()); } if (!postMethod.isFailed()) { rawResponse.write("\r\n".getBytes()); rawResponse.write(rawResponseBody); } rawResponseData = rawResponse.toByteArray(); rawRequestData = rawRequest.toByteArray(); initAMFHeaders(postMethod); } catch (Throwable e) { SoapUI.logError(e); } }
From source file:com.eviware.soapui.impl.wsdl.submit.transports.http.BaseHttpResponse.java
protected void initHeaders(ExtendedHttpMethod httpMethod) { try {/* ww w . j ava2 s. co m*/ ByteArrayOutputStream rawResponse = new ByteArrayOutputStream(); ByteArrayOutputStream rawRequest = new ByteArrayOutputStream(); if (!httpMethod.isFailed()) { try { rawResponse.write(String.valueOf(httpMethod.getStatusLine()).getBytes()); rawResponse.write("\r\n".getBytes()); } catch (Throwable e) { } } rawRequest.write((method + " " + String.valueOf(url) + " " + version + "\r\n").getBytes()); requestHeaders = new StringToStringsMap(); Header[] headers = httpMethod.getRequestHeaders(); for (Header header : headers) { requestHeaders.put(header.getName(), header.getValue()); rawRequest.write(header.toExternalForm().getBytes()); } responseHeaders = new StringToStringsMap(); if (!httpMethod.isFailed()) { headers = httpMethod.getResponseHeaders(); for (Header header : headers) { responseHeaders.put(header.getName(), header.getValue()); rawResponse.write(header.toExternalForm().getBytes()); } responseHeaders.put("#status#", String.valueOf(httpMethod.getStatusLine())); } if (httpMethod.getRequestEntity() != null) { rawRequest.write("\r\n".getBytes()); if (httpMethod.getRequestEntity().isRepeatable()) { requestContentPos = rawRequest.size(); MaxSizeByteArrayOutputStream tempOut = new MaxSizeByteArrayOutputStream( SoapUI.getSettings().getLong(UISettings.RAW_REQUEST_MESSAGE_SIZE, 0)); httpMethod.getRequestEntity().writeRequest(tempOut); tempOut.writeTo(rawRequest); } else rawRequest.write("<request data not available>".getBytes()); } if (!httpMethod.isFailed()) { rawResponse.write("\r\n".getBytes()); rawResponse.write(httpMethod.getResponseBody()); } rawResponseData = rawResponse.toByteArray(); rawRequestData = rawRequest.toByteArray(); } catch (Throwable e) { e.printStackTrace(); } }
From source file:com.tasktop.c2c.server.ssh.server.commands.AbstractInteractiveProxyCommand.java
private void emitHeaders(OutputStream proxyOut, HeaderGroup headers) throws IOException { for (Header header : headers.getAllHeaders()) { String headerHttpFormat = header.toExternalForm(); proxyOut.write(headerHttpFormat.getBytes(HTTP_ENTITY_CHARSET)); }/* www . j a v a 2s.c o m*/ // close headers proxyOut.write("\r\n".getBytes(HTTP_ENTITY_CHARSET)); }
From source file:org.collectionspace.services.IntegrationTests.xmlreplay.XmlReplayTransport.java
public static ServiceResult doGET(String urlString, String authForTest, String fromTestID) throws Exception { ServiceResult pr = new ServiceResult(); pr.fromTestID = fromTestID;//from w w w.j a va 2s. c o m pr.method = "GET"; //HACK for speed testing. //pr.CSID = "2"; //pr.overrideGotExpectedResult(); //if (true) return pr; //END-HACK HttpClient client = new HttpClient(); GetMethod getMethod = new GetMethod(urlString); getMethod.addRequestHeader("Accept", "multipart/mixed"); getMethod.addRequestHeader("Accept", "application/xml"); getMethod.setRequestHeader("Authorization", "Basic " + authForTest); //"dGVzdDp0ZXN0"); getMethod.setRequestHeader("X-XmlReplay-fromTestID", fromTestID); try { int statusCode1 = client.executeMethod(getMethod); pr.responseCode = statusCode1; pr.result = getMethod.getResponseBodyAsString(); pr.responseMessage = getMethod.getStatusText(); Header[] headers = getMethod.getResponseHeaders(); pr.responseHeaders = Arrays.copyOf(headers, headers.length); Header hdr = getMethod.getResponseHeader("CONTENT-TYPE"); if (hdr != null) { String hdrStr = hdr.toExternalForm(); pr.boundary = PayloadLogger.parseBoundary(hdrStr); } pr.contentLength = getMethod.getResponseContentLength(); getMethod.releaseConnection(); } catch (Throwable t) { //System.err.println("ERROR getting content from response: "+t); pr.error = t.toString(); } return pr; }
From source file:org.deegree.enterprise.servlet.WASSHandler.java
/** * Method to send the result of another service. * * @param result//from w w w.ja v a 2 s.c o m * @throws IOException */ private void sendOtherServiceResponse(DoServiceResponse result) throws IOException { Header[] headers = result.getHeaders(); // footers will be ignored for now // Header[] footers = result.getFooters(); InputStream in = result.getResponseBody(); for (Header h : headers) { // maybe we have to filter some headers here TODO LOG.logDebug(h.toExternalForm()); // ignore content length header, as the content length actually changes for GetCapabilities responses // (facade URLs and possibly encoding). Otherwise parts of the response may get cut off. if (!h.getName().equalsIgnoreCase("content-length")) { response.setHeader(h.getName(), h.getValue()); } } BufferedInputStream bin = new BufferedInputStream(in, 16384); OutputStream out = response.getOutputStream(); byte[] buf = new byte[16384]; int numberRead = 0; while ((numberRead = bin.read(buf)) != -1) { out.write(buf, 0, numberRead); } bin.close(); out.close(); }
From source file:org.mule.transport.http.HttpServerConnection.java
public void writeRequest(final HttpRequest request) throws IOException { if (request == null) { return;/* ww w . jav a 2 s . c o m*/ } ResponseWriter writer = new ResponseWriter(this.out, encoding); writer.println(request.getRequestLine().toString()); Iterator item = request.getHeaderIterator(); while (item.hasNext()) { Header header = (Header) item.next(); writer.print(header.toExternalForm()); } writer.println(); writer.flush(); OutputStream outstream = this.out; InputStream content = request.getBody(); if (content != null) { Header transferenc = request.getFirstHeader(HttpConstants.HEADER_TRANSFER_ENCODING); if (transferenc != null) { request.removeHeaders(HttpConstants.HEADER_CONTENT_LENGTH); if (transferenc.getValue().indexOf(HttpConstants.TRANSFER_ENCODING_CHUNKED) != -1) { outstream = new ChunkedOutputStream(outstream); } } IOUtils.copy(content, outstream); if (outstream instanceof ChunkedOutputStream) { ((ChunkedOutputStream) outstream).finish(); } } outstream.flush(); }
From source file:org.mule.transport.http.HttpServerConnection.java
/** * Write an HttpResponse and add the map entries as headers * * @param response http response with the content of the response * @param headers headers to add to the http response besides the one already contained in the HttpResponse object * @throws IOException// w ww . j a va 2 s . co m */ public void writeResponse(final HttpResponse response, Map<String, String> headers) throws IOException { if (response == null) { return; } if (!response.isKeepAlive()) { Header header = new Header(HttpConstants.HEADER_CONNECTION, "close"); response.setHeader(header); } setKeepAlive(response.isKeepAlive()); addHeadersToHttpResponse(response, headers); ResponseWriter writer = new ResponseWriter(this.out, encoding); OutputStream outstream = this.out; writer.println(response.getStatusLine()); Iterator item = response.getHeaderIterator(); while (item.hasNext()) { Header header = (Header) item.next(); writer.print(header.toExternalForm()); } writer.println(); writer.flush(); OutputHandler content = response.getBody(); if (content != null) { Header transferenc = response.getFirstHeader(HttpConstants.HEADER_TRANSFER_ENCODING); if (transferenc != null) { response.removeHeaders(HttpConstants.HEADER_CONTENT_LENGTH); if (transferenc.getValue().indexOf(HttpConstants.TRANSFER_ENCODING_CHUNKED) != -1) { outstream = new ChunkedOutputStream(outstream); } } content.write(RequestContext.getEvent(), outstream); if (outstream instanceof ChunkedOutputStream) { ((ChunkedOutputStream) outstream).finish(); } } outstream.flush(); }
From source file:org.mule.transport.http.transformers.HttpResponseToString.java
/** * Perform the transformation to always return a String object *//* w w w .ja v a 2 s . co m*/ @Override protected Object doTransform(Object src, String encoding) throws TransformerException { try { HttpResponse response = (HttpResponse) src; ByteArrayOutputStream bos = new ByteArrayOutputStream(8192); OutputStream outstream = bos; ResponseWriter writer = new ResponseWriter(outstream, encoding); writer.println(response.getStatusLine()); Iterator item = response.getHeaderIterator(); while (item.hasNext()) { Header header = (Header) item.next(); writer.print(header.toExternalForm()); } writer.println(); writer.flush(); if (response.hasBody()) { OutputHandler handler = response.getBody(); Header transferenc = response.getFirstHeader(HttpConstants.HEADER_TRANSFER_ENCODING); if (transferenc != null) { response.removeHeaders(HttpConstants.HEADER_CONTENT_LENGTH); if (transferenc.getValue().indexOf(HttpConstants.TRANSFER_ENCODING_CHUNKED) != -1) { outstream = new ChunkedOutputStream(outstream); } } handler.write(RequestContext.getEvent(), outstream); if (outstream instanceof ChunkedOutputStream) { ((ChunkedOutputStream) outstream).finish(); } } outstream.flush(); bos.flush(); byte[] result = bos.toByteArray(); outstream.close(); writer.close(); bos.close(); String output = null; try { output = new String(result, encoding); } catch (UnsupportedEncodingException uee) { // I believe this is never reached since a TransformerExcpetion // is thrown before at new ResponseWriter(outstream, encoding) if // encoding is not supported output = new String(result); } return output; } catch (IOException e) { throw new TransformerException(this, e); } }