1

I am using selenium webdriver with Firefox .

driver.navigate().back();

I browse through pages and when I navigate back through page , I get following exception.In Browser it says Document expired.

org.openqa.selenium.StaleElementReferenceException: Element not found in the cache - perhaps the page has changed since it was looked up Command duration or timeout: 23 milliseconds For documentation on this error, please visit: http://seleniumhq.org/exceptions/stale_element_reference.html Build info: version: '2.21.0', revision: '16552', time: '2012-04-11 19:09:00' System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_20' Driver info: driver.version: RemoteWebDriver at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:175) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:128) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:459) at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:245) at org.openqa.selenium.remote.RemoteWebElement.getText(RemoteWebElement.java:141) at run.DriverImpl.startScrapingFromThePage(DriverImpl.java:48) at ui.SAFSPUserInterface.startButtonClicked(SAFSPUserInterface.java:311) at ui.SAFSPUserInterface$1.actionPerformed(SAFSPUserInterface.java:62) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.Component.processMouseEvent(Component.java:6263) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6028) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4630) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

The page contains Ajax and javascript calls . Can anyone help me in this?

2
  • Is this the second it clicks the back button or is it when it clicks the back button and then goes on to try and find the element? Commented Sep 24, 2012 at 14:27
  • when it clicks back button, there is no page present. Browser shows "Document expired". Commented Sep 25, 2012 at 5:23

1 Answer 1

1

First of all, the exception you pasted is not related to navigating back. You have a handle to a stale element causing the exception. StaleElementException occurs when you have a WebElement reference to a HTML element in the page which may have been removed/lost due to interactions on the page. So your WebElement which is a proxy to the non-existant DOM element is invalid.

There is also this known issue in webdriver when navigating back to pages originally loaded via POST request. So the page you are expecting may not have actually loaded. Soution to postback warning in firefox is to reissue navigate().back(), i.e. backout twice.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.