选择表单按钮时HtmlUnit ClassCastException

时间:2017-06-25 17:14:41

标签: java htmlunit

我有一个表单 - https://racky.wufoo.com/forms/m1wv5fg40e46lwk/

我正在尝试使用HtmlUnit填写表单。

这是我的代码 -

WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage("https://racky.wufoo.com/forms/m1wv5fg40e46lwk/");
HtmlSubmitInput button = page.getElementByName("saveForm");
HtmlTextInput field1 = page.getElementByName("Field1");
HtmlTextInput field2 = page.getElementByName("Field4");
field1.setValueAttribute("test_test");
field2.setValueAttribute("packpack");
HtmlPage page2 = button.click();

但是当我执行它时,我在 HtmlSubmitInput按钮行收到以下错误 -

java.lang.ClassCastException:com.gargoylesoftware.htmlunit.html.HtmlImageInput cannot be cast to com.gargoylesoftware.htmlunit.html.HtmlSubmitInput

我该怎么做才能解决它?

1 个答案:

答案 0 :(得分:0)

page.getElementByName("saveForm");

你的问题是因为这会在你的情况下返回一个HtmlImageInput。 像这样更改你的代码:

HtmlInput button = page.getElementByName("saveForm");