Bug 57569 Search with the $V{PAGE_NUMBER} pattern fails
I am trying to search for "$V{PAGE_NUMBER}". Nothing happens in the interface when I click the Search button, but I see the following in the Eclipse log: !ENTRY org.eclipse.ui 4 0 Apr 06, 2004 16:24:14.260 !MESSAGE can't parse argument number PAGE_NUMBER !STACK 0 java.lang.IllegalArgumentException: can't parse argument number PAGE_NUMBER at java.text.MessageFormat.makeFormat(MessageFormat.java:1330) at java.text.MessageFormat.applyPattern(MessageFormat.java:450) at java.text.MessageFormat.<init>(MessageFormat.java:350) at java.text.MessageFormat.format(MessageFormat.java:803) at org.eclipse.search.internal.ui.text.FileSearchResult.getLabel(FileSearchResult.java:51) at org.eclipse.search2.internal.ui.SearchView.updateTitle(SearchView.java:272) at org.eclipse.search2.internal.ui.SearchView.showSearchResult(SearchView.java:258) at org.eclipse.search2.internal.ui.SearchView.queryAdded(SearchView.java:324) at org.eclipse.search2.internal.ui.QueryManager.fireAdded(QueryManager.java:72) at org.eclipse.search2.internal.ui.QueryManager.addQuery(QueryManager.java:49) at org.eclipse.search2.internal.ui.InternalSearchUI.runSearchInBackground(InternalSearchUI.java:115) at org.eclipse.search.ui.NewSearchUI.runQuery(NewSearchUI.java:44) at org.eclipse.search.internal.ui.text.TextSearchPage.performNewSearch(TextSearchPage.java:291) at org.eclipse.search.internal.ui.text.TextSearchPage.performAction(TextSearchPage.java:135) at org.eclipse.search.internal.ui.SearchDialog.performAction(SearchDialog.java:363) at org.eclipse.search.internal.ui.util.ExtendedDialogWindow.buttonPressed(ExtendedDialogWindow.java:147) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:413) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:89) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:769) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2578) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2256) at org.eclipse.jface.window.Window.runEventLoop(Window.java:670) at org.eclipse.jface.window.Window.open(Window.java:650) at org.eclipse.search.internal.ui.OpenSearchDialogAction.run(OpenSearchDialogAction.java:60) at org.eclipse.search.internal.ui.OpenSearchDialogAction.run(OpenSearchDialogAction.java:46) at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:269) at org.eclipse.ui.internal.WWinPluginAction.runWithEvent(WWinPluginAction.java:207) at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:68) at org.eclipse.ui.internal.commands.Command.execute(Command.java:173) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:463) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:855) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:896) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:522) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$2(WorkbenchKeyboard.java:488) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$1.handleEvent(WorkbenchKeyboard.java:261) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:705) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:768) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:793) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:778) at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1720) at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1716) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3041) at org.eclipse.swt.widgets.Control.windowProc(Control.java:2944) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3146) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1450) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2254) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1562) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1536) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:257) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:139) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:90) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:277) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:239) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:117) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:494) at org.eclipse.core.launcher.Main.basicRun(Main.java:267) at org.eclipse.core.launcher.Main.run(Main.java:692) at org.eclipse.core.launcher.Main.main(Main.java:676)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/JavaSearchQuery.java
}
					public void run() throws Exception {
						participantDescriptors[iPrime].getParticipant().search(requestor, fPatternData, participantPM);
					}
				};
				
				Platform.run(runnable);
			}
			
		} catch (CoreException e) {
			return e.getStatus();
		}
		
		String message= SearchMessages.getString("JavaSearchQuery.status.ok.message"); 
		MessageFormat.format(message, new Object[] { new Integer(textResult.getMatchCount()) });
		return new Status(IStatus.OK, JavaPlugin.getPluginId(), 0, message, null);
	}
	public String getLabel() {
		if (fPatternData.getLimitTo() == IJavaSearchConstants.REFERENCES)
			return SearchMessages.getString("JavaSearchQuery.searchfor_references"); 
		else if (fPatternData.getLimitTo() == IJavaSearchConstants.DECLARATIONS)
			return SearchMessages.getString("JavaSearchQuery.searchfor_declarations"); 
		else if (fPatternData.getLimitTo() == IJavaSearchConstants.READ_ACCESSES)
			return SearchMessages.getString("JavaSearchQuery.searchfor_read_access"); 
		else if (fPatternData.getLimitTo() == IJavaSearchConstants.WRITE_ACCESSES)
			return SearchMessages.getString("JavaSearchQuery.searchfor_write_access"); 
		else if (fPatternData.getLimitTo() == IJavaSearchConstants.IMPLEMENTORS)
			return SearchMessages.getString("JavaSearchQuery.searchfor_implementors"); 
		return SearchMessages.getString("JavaSearchQuery.search_label"); 
	}