Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我的XPath不返回任何内容?_Java_Xpath_Htmlunit - Fatal编程技术网

Java 为什么我的XPath不返回任何内容?

Java 为什么我的XPath不返回任何内容?,java,xpath,htmlunit,Java,Xpath,Htmlunit,我试图从页面中获取数字输入文本框的XPath以及提交按钮 我使用创建了XPath 以下是我输入文本字段的XPath: HtmlTextInput rollNum = (HtmlTextInput)index.getFirstByXPath("/html/body/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr/td/t

我试图从页面中获取数字输入文本框的XPath以及提交按钮

我使用创建了XPath

以下是我输入文本字段的XPath:

HtmlTextInput rollNum = (HtmlTextInput)index.getFirstByXPath("/html/body/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr[2]/td/input");
按钮的XPath是:

HtmlButton button = index.getFirstByXPath("/html/body/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr[5]/td/button");
但是当我尝试访问文本和按钮字段时,当我尝试使用
System.out.println(rollNum.toString())查看代码时,它抛出
java.lang.NullPointerException
异常


我正在使用HTMLUnit和Java将数据插入输入字段并单击submit按钮。感觉XPath本身有一些错误。元素的正确XPath应该是什么,以及如何找到它们?

我找到了。实际上xpath不起作用,因为我试图访问由
javascript
代码生成的元素,但webclient没有等待元素加载,因此引发了
java.lang.NullPointerException
异常。我添加了
webClient.waitForBackgroundJavaScript(30*1000)
等待webClient 30秒,现在我可以使用相同的xpath访问元素

对你来说,最好的方法是学习编写XPath——复制它们很少是最好的解决方案。你能在有同样问题的地方发布一个小的html示例吗?