I am trying to save a file from a website but unable to handle windows dialogue box. not able to get control of dialogue box to click on Save File.The code should be able to download the file from url.
I am trying with following code:
package new;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.support.ui.WebDriverWait;
public class BlipsManagement
{
static WebDriver driver;
public static void main(String args[]) throws AWTException
{
//System.setProperty("webdriver.ie.driver","D:\\IEDriverServer.exe");
//driver= new InternetExplorerDriver();
driver= new FirefoxDriver();
try
{
String EIN="xyz";
String pass="abc";
String st_date="01/08/2014";
String end_date="10/09/2014";
String URL="http://myurl.com";
driver.get(URL);
Thread.sleep(2000);
//url opens
driver.findElement(By.name("Logon")).click();
driver.switchTo().activeElement().sendKeys(EIN);
driver.switchTo().activeElement().sendKeys(Keys.TAB);
driver.switchTo().activeElement().sendKeys(pass);
driver.switchTo().activeElement().sendKeys(Keys.ENTER);
Thread.sleep(2000);
//element is located
driver.findElement(By.name("YES")).click();
Thread.sleep(3000);
driver.findElement(By.linkText("locator")).click();
Thread.sleep(3000);
driver.findElement(By.linkText("locator")).click();
Thread.sleep(3000);
//entries are passed
driver.findElement(By.id("PeriodStartDate")).clear();
driver.findElement(By.id("PeriodStartDate")).click();
driver.findElement(By.id("PeriodStartDate")).sendKeys(st_date.toString());
driver.findElement(By.id("PeriodFinishDate")).clear();
driver.findElement(By.id("PeriodFinishDate")).click();
driver.findElement(By.id("PeriodFinishDate")).sendKeys(end_date.toString());
driver.findElement(By.name("locator")).clear();
driver.findElement(By.name("locator")).sendKeys("text");
//checkboxes selected
driver.findElement(By.name("PM1")).click();
driver.findElement(By.name("locator")).click();
driver.findElement(By.cssSelector("input.formButton")).click();
System.out.println("Generated");
Thread.sleep(3000);
//click the word image
driver.findElement(By.linkText("My Reports")).sendKeys(Keys.TAB);
driver.switchTo().activeElement().sendKeys(Keys.ENTER);
//here is where the problem is
//the dialogue box of firefox opens and asks whether to open file or save file.
//initially open file radio button is selected to select save file alt+s is used
//still not working
driver.switchTo().activeElement();
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_S);
robot.keyRelease(KeyEvent.VK_S);
robot.keyRelease(KeyEvent.VK_ALT);
//robot.keyPress(KeyEvent.VK_ENTER);
//robot.keyRelease(KeyEvent.VK_ENTER);*/
driver.switchTo().activeElement().click();
System.out.println("done!");
}
catch (InterruptedException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}