Unable to remove components from Layout after page is refreshed

Using Vaadin8, I have a page with several panels. The central panel is intended to contain content that is navigated to with a drop down menu, situated in a header panel. When an item from the menu is selected a view is loaded in the central panel. This view has a button and once clicked the content of the central panel is changed to another view. This works as expected until i refresh the page. Once refreshed, the central panel that was initially blank, now contains the last view that was navigated to before the page was refreshed, and further, navigating to the menu items no longer replaces that view in the central panel.

I have achieved the initial navigation with the following:

// panel set up
Panel centerPanel = new Panel();
VerticalLayout centerPanelContentCntr = new VerticalLayout();
centerPanel.setContent(centerPanelContentCntr);
....

// view 1 set up
// the centerPanelContentCntr is made available to this view 
HorizontalLayout srchCtrl = new HorizontalLayout();
Button srchBtn = new Button("Search");
srchCtrl.addComponent(srchBtn);
srchBtn.addClickListener(event -> {
			
			centerPanelContentCntr.removeComponent(srchCtrl);
			targetPanel.addComponent(resultLayout);
			
		});
....

// view 2 set up
HorizontalLayout resultLayout = new HorizontalLayout();
Label lbl = new Label();
lbl.setCaption("you found something");
resultLayout.addComponent(lbl);
....

/* then the menu set up
 * the centerPanelContentCntr, the srchCtrl and the resultLayout are made available to the Menu class
 */
 MenuBar.Command menuAction = new MenuBar.Command() {
		public void menuSelected(MenuItem selectedItem) {
		    centerPanelContentCntr.removeAllComponents();
			centerPanelContentCntr.addComponent(srchCtrl);
		}
 }
 ....

Could someone please suggest why the page refresh causes this to happen and how can i properly “re-initialize” components on page refresh ?