最简单的httpunit问题能够访问到本地的网页,但是网站上的就是不能访问。import java.io.IOException;import org.xml.sax.SAXException;import com.meterware.httpunit.*; public class webread {
public static void display(){
WebConversation wc = new WebConversation();
try {
WebRequest request = new GetMethodWebRequest(
//"http://localhost/duty/index.jsp"); //--------这个能获得
//"http://www.163.com/"); //---这个就不能
"http://jlpt.biz/jlpt/jlptQuestions.do?type=grammer&level=1&pageNo=1" ); //这也不能
WebResponse response = wc.getResponse(request);
WebTable webtable = response.getTables()[0];
String[][] datas = webtable.asText();
int i = 0 ,j = 0;
int m = datas[0].length;
int n = datas.length;
while (i<n){
j=0;
while(j<m){
System.out.println("表中第"+(i+1)+"行第"+
(j+1)+"列の内容は:"+datas[i][j]);
++j;
}
++i;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public static void main(String[] args){
display();
}
}
public static void display(){
WebConversation wc = new WebConversation();
try {
WebRequest request = new GetMethodWebRequest(
//"http://localhost/duty/index.jsp"); //--------这个能获得
//"http://www.163.com/"); //---这个就不能
"http://jlpt.biz/jlpt/jlptQuestions.do?type=grammer&level=1&pageNo=1" ); //这也不能
WebResponse response = wc.getResponse(request);
WebTable webtable = response.getTables()[0];
String[][] datas = webtable.asText();
int i = 0 ,j = 0;
int m = datas[0].length;
int n = datas.length;
while (i<n){
j=0;
while(j<m){
System.out.println("表中第"+(i+1)+"行第"+
(j+1)+"列の内容は:"+datas[i][j]);
++j;
}
++i;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public static void main(String[] args){
display();
}
}
到底是什么地方出的错,请各位指点!!!Caused by: java.net.UnknownHostException: jlpt.biz
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getHeaderFieldKey(Unknown Source)
at com.meterware.httpunit.HttpWebResponse.loadHeaders(HttpWebResponse.java:255)
at com.meterware.httpunit.HttpWebResponse.readHeaders(HttpWebResponse.java:237)
... 10 more
wc.setProxyServer( "192.168.10.200", 38080 );
出现下面的结果
RHINO USAGE WARNING: Missed Context.javaToJS() conversion:
Rhino runtime detected object [Ljava.lang.Object;@2f2295 of class [Ljava.lang.Object; where it expected String, Number, Boolean or Scriptable instance. Please check your code for missing Context.javaToJS() call.
表中第1行第1列の内容は:
表中第1行第2列の内容は:
表中第1行第3列の内容は:
表中第1行第4列の内容は:
表中第1行第5列の内容は:
表中第1行第6列の内容は:
表中第1行第7列の内容は:
表中第1行第8列の内容は:
表中第1行第9列の内容は:
表中第1行第10列の内容は:
表中第1行第11列の内容は:
表中第1行第12列の内容は:
表中第1行第13列の内容は:
表中第1行第14列の内容は:
表中第2行第1列の内容は:
表中第2行第2列の内容は:
表中第2行第3列の内容は:
表中第2行第4列の内容は:
表中第2行第5列の内容は:
表中第2行第6列の内容は:
表中第2行第7列の内容は:
表中第2行第8列の内容は:
表中第2行第9列の内容は:
表中第2行第10列の内容は:
表中第2行第11列の内容は:
表中第2行第12列の内容は:
表中第2行第13列の内容は:
表中第2行第14列の内容は:
有谁帮忙看看阿
import java.io.IOException;
import java.net.MalformedURLException;import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;import junit.framework.TestCase;public class TestHtmlUnit extends TestCase{
/**
* 测试主页标题
* @throws FailingHttpStatusCodeException
* @throws MalformedURLException
* @throws IOException
*/
public void testHomePage() throws FailingHttpStatusCodeException, MalformedURLException, IOException{ final WebClient webClient = new WebClient();
final HtmlPage startPage = webClient.getPage("http://htmlunit.sourceforge.net");
// assertEquals("HtmlUnit - Welcome to HtmlUnit", startPage.getTitleText());
System.out.println("title:"+startPage.getTitleText());
}
/**
* 测试浏览器
* @throws Exception
*/
public void testHomePage_Firefox() throws Exception {
//火狐2/3
// final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_2);
//IE6/7
final WebClient webClient = new WebClient(BrowserVersion.INTERNET_EXPLORER_7);
final HtmlPage page = webClient.getPage("http://htmlunit.sourceforge.net");
// assertEquals("HtmlUnit - Welcome to HtmlUnit", page.getTitleText());
System.out.println("title:"+page.getTitleText());
}/**
* 两个测试类的输出都如下:
* title:HtmlUnit - Welcome to HtmlUnit
*/
}我用到了JUnit3的包