当我使用HttpUnit时出现错误

时间:2012-06-06 12:27:58

标签: java http-unit

我正在使用HttpUnit来模拟设计到指定网址的表单的提交按钮。 (我正在使用http://stu21.kntu.ac.ir/Login.aspx)。我使用以下代码获取响应页面。

WebConversation conversation = new WebConversation();
WebRequest request = new GetMethodWebRequest("http://stu21.kntu.ac.ir/Login.aspx");
WebResponse response = conversation.getResource(request);       

WebForm loginForm = response.getForms()[0]; //Form has been got successfully
request = loginForm.getRequest();
request.setParameter("txtusername", "8810103" );
request.setParameter("txtpassword", "8810103" );
response = conversation.getResponse( request ); //error while getting the .js

想要获取java脚本文件时出现问题,错误是

  

线程“main”com.meterware.httpunit.ScriptException中的异常:   脚本'var shuffleArray = new Array();

那么,我怎么能摆脱这个问题呢?它阻止我的程序加载结果页面。

2 个答案:

答案 0 :(得分:1)

JS文件(public.js)有一个“字节顺序标记”。默认情况下,HTTPUnit将访问ISO-8859-1中的网页。通过调用setDefaultCharacterSet中的HTTPUnitOptions并将字符集更新为UTF-8HTTPUnit会将请求解释为UTF-8,前提是没有字符在请求中指定的集合开始。可以找到更多使用HTTPUnit的示例here

答案 1 :(得分:0)

正如您所见,here它是ISO-8859-1表示中的UTF-8字节顺序标记。您应该使用文本编辑器(例如Notepad ++)将其删除。