Unable to Click a element in 3rd window. | Selenium Forum
M
Posted on 29/03/2016
Hi Guys,

I am trying to click a element in 3rd window, but unable to do so and facing "java.util.NoSuchElementException" error.

[b:1n2dxtd3]This is my code:[/b:1n2dxtd3]

import java.util.Iterator;
import java.util.Set;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Revise {

public static void main(String[] args) {

WebDriver driver = new FirefoxDriver();
driver.get("https://www.online.citibank.co.in/");

Set<String> winIds = driver.getWindowHandles();
Iterator<String> it = winIds.iterator();
System.out.println(winIds.size());
System.out.println(winIds);
System.out.println(it.next());
driver.findElement(By.xpath(".//*[@id='container']/div[2]/div[2]/div/div[1]/div[1]/p[2]/a[1]/img")).click();

winIds = driver.getWindowHandles();
System.out.println(winIds.size());
System.out.println(winIds);
it = winIds.iterator();
String MainWin = it.next();
String ChildWin = it.next();
System.out.println(MainWin);
System.out.println(ChildWin);
driver.switchTo().window(ChildWin);
driver.findElement(By.linkText("Security tips")).click();

winIds = driver.getWindowHandles();
System.out.println(winIds.size());
System.out.println(winIds);
it = winIds.iterator();
it.next();
it.next();
String ChildWin1 = it.next();
System.out.println(it.next());
System.out.println(it.next());
System.out.println(ChildWin1);
driver.switchTo().window(ChildWin1);
driver.manage().window().maximize();
driver.findElement(By.linkText("Citibank Online")).click();


}

}


[b:1n2dxtd3]Console Message:[/b:1n2dxtd3]

1
[{9b889c7e-1d8c-445c-b108-46b8476847fa}]
{9b889c7e-1d8c-445c-b108-46b8476847fa}
2
[{9b889c7e-1d8c-445c-b108-46b8476847fa}, {f5bf1f36-2517-4e6d-aece-ec36d8a91f49}]
{9b889c7e-1d8c-445c-b108-46b8476847fa}
{f5bf1f36-2517-4e6d-aece-ec36d8a91f49}
3
[{9b889c7e-1d8c-445c-b108-46b8476847fa}, {f5bf1f36-2517-4e6d-aece-ec36d8a91f49}, {e50a06fc-6643-4123-b49d-bdfe4d8488ae}]
Exception in thread "main" java.util.NoSuchElementException
at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:396)
at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:405)
at com.sanity.Revise.main(Revise.java:42)

M
Replied on 30/03/2016

check if your your iterator is working fine.

http://stackoverflow.com/questions/19106753/java-util-nosuchelementexception-using-iterator-in-java