It turns out that Firefox makes an additional page request if there is an image on the page with an empty source. I had this because my database had null values for the images to display, so this was rendered:
<img wicket:id="" src=""/>Firefox makes two requests to the page if this is the case. The first has this in the
request headers:
Accept: text/xml,application/xml,application/xhtml+xml,text /html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
The browser then makes a second request due to the src="", with this in the request headers:
The solution was to make sure that my application does not output src="" for the images. Also, I found the same problem will take place for images defined in CSS files if the source is "".
Accept: image/png,*/*;q=0.5The result is that Wicket renders the page again, but Firefox doesn't update its DOM with the new HTML (and thus new Link URLs). So Wicket was doing what it should.
The solution was to make sure that my application does not output src="" for the images. Also, I found the same problem will take place for images defined in CSS files if the source is "".