选择表单按钮时出现 HtmlUnit ClassCastException
HtmlUnit ClassCastException while selecting form button
我有一个表格 - 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
我应该怎么做才能解决?
page.getElementByName("saveForm");
您的问题是因为 return 在您的案例中是一个 HtmlImageInput。
像这样更改您的代码:
HtmlInput button = page.getElementByName("saveForm");
我有一个表格 - 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
我应该怎么做才能解决?
page.getElementByName("saveForm");
您的问题是因为 return 在您的案例中是一个 HtmlImageInput。 像这样更改您的代码:
HtmlInput button = page.getElementByName("saveForm");