有關HttpClient模擬用戶登錄問題,網上資料介紹很多,在我要登錄的站點是用Acegi控制權限的,測試多次都不成功,不知道什么原因。
Souce Code:
HttpClient client = new HttpClient();
client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
try {
PostMethod post = new PostMethod("http://localhost:8080/test/");
NameValuePair name = new NameValuePair("j_username", "aaa");
NameValuePair pass = new NameValuePair("j_password", "111");
post.setRequestBody(new NameValuePair[]{name,pass});
int status = client.executeMethod(post);
System.out.println(status);
System.out.println(post.getResponseBodyAsString()); // 得到的還是登錄頁面的內容
post.releaseConnection();
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
在使用Struts2開發Web應用時,如果使用Date類型數據時,Struts2會調用Date轉換器來處理頁面的Date字符串到Date類型的轉換,在閱讀了Struts2的Code后,發現Date轉換器使用的日期格式都不是中文日期格式,而我們的日期字符串格式為2008-05-26 12:00,當找不到對應的日期格式時,Struts2會用短日期格式來處理(yy-MM-dd),這時如果我們需要長日期格式的數據,在日期轉換后是拿不到準確數據的,不知道有沒有同仁處理過類似的問題,歡迎大家給個合適的解決方案。