Java 在main方法中获取NullPointerException
我试图从XML中读取值。然后,在浏览器中,我想登录到Gmail应用程序。我得到了Java 在main方法中获取NullPointerException,java,Java,我试图从XML中读取值。然后,在浏览器中,我想登录到Gmail应用程序。我得到了NullPointerException Eclipse中使用的代码如下所示: import java.io.File; import java.io.IOException; import java.util.Properties; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory;
NullPointerException
Eclipse中使用的代码如下所示:
import java.io.File;
import java.io.IOException;
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class A {
private static WebDriver driver;
Properties p= new Properties();
String url=p.getProperty("url");
public static void main(String[] args) throws SAXException, IOException, ParserConfigurationException {
A a = new A();
String url = a.readXML("logindetails","url");
String username = a.readXML("logindetails","username");
String password = a.readXML("logindetails","password");
System.out.println(url);
System.out.println(username);
System.out.println(password);
//use username for webdriver specific actions
driver.findElement(By.id("1001")).sendKeys(url);
}
public String readXML(String searchelement,String tag) throws SAXException, IOException, ParserConfigurationException{
String ele = null;
File fXmlFile = new File("D://NewFile.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(fXmlFile);
doc.getDocumentElement().normalize();
NodeList nList = doc.getElementsByTagName(searchelement);
Node nNode = nList.item(0);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
ele=eElement.getElementsByTagName(tag).item(0).getTextContent();
}
return ele;
}
}
输出为:
www.gmail.com
test
test123
Exception in thread "main" java.lang.NullPointerException
at A.main(A.java:33)
您可以访问驱动程序
,但从不初始化它
这就是为您提供
NullPointerException
初始化驱动程序的原因。例如:
如果您使用的是firefox浏览器,请尝试
WebDriver driver = new FirefoxDriver();
它可能是一个FirefoxDriver
。或色度驱动程序
。或HtmlUnitDriver
。或任何WebDriver
的实现。获取如下错误:JavaScript错误:chrome://browser/content/urlbarBindings.xml,第677行:aUrl未定义可能这是firefox和Selenium的版本问题。也许这对你有帮助。通过此链接查看可能的副本
WebDriver driver = new FirefoxDriver();