package cn.com.test.wjj;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.UsernamePasswordCredentials;
import org.apache.commons.httpclient.auth.AuthScope;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.RequestEntity;
import org.apache.commons.httpclient.methods.StringRequestEntity;
public class PostXml {
/**
* @param args
*/
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("");
sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
sb.append("<EadMessage >");
sb.append("<Header>");
// sb.append(" <MessageType>MessageType</MessageType>");
sb.append(" <TransactionID>999</TransactionID>");
// sb.append(" <Version>1.0</Version>");
// sb.append(" <VASPID>VASPID</VASPID>");
sb.append(" <OperatorId>OperatorId</OperatorId>");
sb.append(" <Token>password</Token>");
sb.append("</Header>");
sb.append("<Body>");
sb.append(" <content>123445</content>");
sb.append(" <contentid>54321</contentid>");
sb.append("</Body>");
sb.append("</ EadMessage >");
String data = "program=" + sb.toString();
String url = "http://124.42.93.202:15051/eadserver";
HttpClient httpclient = new HttpClient();
httpclient.getState().setCredentials(
new AuthScope("http//124.42.93.202:15051/eadserver", 80, AuthScope.ANY_REALM),
new UsernamePasswordCredentials("admin", "admin123"));
httpclient.getParams().setAuthenticationPreemptive(true);
PostMethod post = new PostMethod(url);
// post.setDoAuthentication(true);
try {
int status = httpclient.executeMethod(post);
} catch (HttpException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String info = null;
try {
RequestEntity entity = new StringRequestEntity(data, "text/xml",
"iso-8859-1");
post.setRequestEntity(entity);
httpclient.executeMethod(post);
int code = post.getStatusCode();
if (code == HttpStatus.SC_OK) {
info = new String(post.getResponseBodyAsString());
System.out.println(info);
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
post.releaseConnection();
}
}
}
分享到:
相关推荐
6. **导入到IDE**:在描述中提到的"导入myeclipse即可使用",指的是将这三个jar包添加到MyEclipse项目的类路径中,这样项目就能识别并使用HttpClient的相关类和方法。 7. **测试类TestHttpClient**:压缩包中的`...
1. **创建HttpClient对象**:首先,我们需要创建一个HttpClient实例,这通常是通过HttpClientBuilder或HttpAsyncClientBuilder构建的。例如: ```java CloseableHttpClient httpClient = HttpClients.create...
使用`HttpClient`类创建一个客户端实例。 3. **创建PostMethod实例** 通过`PostMethod`类创建一个POST方法实例,并传入请求的URL作为参数。 4. **设置请求参数** 使用`NameValuePair`类创建表单域对象,并将...
1. HttpClient:客户端实例,负责管理连接、配置请求等。 2. HttpRequestBase:表示HTTP请求,如GET、POST等。 3. HttpResponse:表示HTTP响应,包括状态码、头信息和响应体。 4. HttpEntity:表示HTTP实体,即请求...
- 使用`HttpClients.createDefault()`方法创建一个默认的HttpClient实例。 2. **创建HttpPost对象**: - 创建一个HttpPost对象,并设置请求的URL。 - 示例中使用的URL为`"http://example.com/api/v1/post"`,请...
**三、使用HttpClient的步骤** 1. **创建HttpClient实例**:根据项目需求配置连接管理器、重试策略等。 2. **构建HttpRequest**:指定URL、HTTP方法,添加请求头,准备请求实体。 3. **执行请求**:使用...
这里提到的“httpclient3个jar包”指的是用于构建HTTP客户端功能的三个核心库,分别是: 1. **commons-httpclient-3.0.jar**:这是Apache HttpClient的核心库,提供了全面的HTTP客户端实现。HttpClient 3.0版本是该...
在本实例中,我们将探讨如何使用Apache的HttpClient库来实现这个功能。HttpClient是一个强大的HTTP客户端,它允许开发者发送HTTP请求并接收响应,非常适合用于文件上传。 首先,你需要在项目的`libs`目录下添加...
1. **HttpClient实例化**:初始化HttpClient对象,例如: ```java CloseableHttpClient httpClient = HttpClients.createDefault(); ``` 这里创建的是默认配置的HttpClient,也可以根据需求自定义配置。 2. **...
三、HttpClient 4.2.1的使用示例 1. **创建HttpClient实例**: ```java CloseableHttpClient httpClient = HttpClients.createDefault(); ``` 2. **构造HttpGet请求**: ```java HttpGet httpGet = new HttpGet...
1. 创建HttpClient实例:可以通过HttpParams配置参数,如超时时间、编码等。 2. 创建HttpMethod:根据需求选择合适的HttpMethod子类,设置请求URL、请求头和请求体。 3. 执行请求:调用HttpClient的execute方法,...
1. **创建HttpClient实例**:首先,需要创建一个HttpClient实例,可以设置连接超时、重试策略等参数。 2. **选择HttpMethod**:根据实际需求选择合适的HttpMethod,比如使用GetMethod或PostMethod。 3. **设置请求...
同时,注意`HttpClient`不是线程安全的,每个请求应使用新的`HttpClient`实例。 3. 异步处理:由于网络操作可能会阻塞主线程,导致应用无响应,因此建议使用异步方式执行HTTP请求,如`AsyncTask`或`Handler`。 四...
在标题和描述中提到的"Java中Httpclient需要的jar包(httpclient.jar,httpcore.jar及commons-logging.jar)",是使用HttpClient库时必须包含的三个关键依赖文件。 首先,`httpclient.jar`是Apache HttpClient的核心库...
三、HttpClient的使用步骤 1. 创建HttpClient实例:通常使用HttpClientBuilder构建,可以配置各种参数,如连接池、超时时间等。 2. 构建HttpRequest:根据需求创建HttpRequestBase的子类实例,如HttpGet、HttpPost等...
1. **创建 HttpClient 实例**:通过 `new HttpClient()` 创建一个 HttpClient 对象。 2. **构建 GetMethod**:使用 `GetMethod(String url)` 构造函数创建 GetMethod 对象,参数为要访问的 URL。 3. **执行请求**:...
然后,创建一个HttpClient实例,比如使用`HttpClients.createDefault()`,这将提供一个默认配置的客户端。 3. **构建请求**: 创建`HttpGet`或`HttpPost`对象来表示HTTP请求。设置URL为Servlet的访问路径,可以...
1. **创建HttpClient实例**:首先,你需要创建一个HttpClient实例,可以使用`HttpClientBuilder`构建器来定制配置。 2. **构建HttpRequest对象**:根据需求创建HttpRequestBase的子类实例,如HttpGet、HttpPost,...