1

I want to generate a pdf using the playwright java, the problem is the page I want to generate pdf is not directly available on the main page or landing page after login. So I tried to log in one tab and load the URL which I wanted to generate the pdf of in another tab. But the page or browser doesn't wait for the entire process. It closes before I generate the pdf.

       Browser browser = playwright.chromium().launch(new 
       BrowserType.LaunchOptions().setHeadless(false));
       BrowserContext userContext = browser.newContext();
       Page loginPage = userContext.newPage();
       Page report= userContext.newPage();
       loginPage.navigate("http://xxx/login");
    
    
       loginPage.getByPlaceholder("Enter your email").click();
       loginPage.getByPlaceholder("Enter your email")
             .fill("***************");
       loginPage.getByPlaceholder("Enter your email")
             .press("Tab");
       loginPage.getByPlaceholder("Enter your password")
             .fill("**");
       loginPage.getByRole(AriaRole.BUTTON,new com.microsoft.playwright.Page.GetByRoleOptions().setName("logIn"))
             .click();
       loginPage.waitForRequestFinished(() ->{
          report.navigate("http://*** report/");
           report.pdf(new Page.PdfOptions().setDisplayHeaderFooter(true)
            .setPrintBackground(true).setPath(Paths.get("reportgenerate.pdf")));
       });
    }

Paul Verest
  • 60,022
  • 51
  • 208
  • 332
user3132347
  • 363
  • 1
  • 7
  • 27

0 Answers0