Bug 126971 [correction] CorrectionMarkerResolutionGenerator his inconsistent hasResolutions and getResolutions for read-only files
20050208-0800 org.eclipse.jdt.internal.ui.text.correction.CorrectionMarkerResolutionGenerator can return true to hasMarkerResolutions() but returns an empty array when getMarkerResolutions is called. STEPS 1) Create a class than implements Serializable 2) Make the java file read-only 3) Select The serializable class SerializableTest does not declare a static final serialVersionUID field of type long 4) Select Quick fix (enabled because CorrectionMarkerResolutionGenerator returns true for hasMarkerResolutions in this case) 5) Dialog will come up with no resolutions (CorrectionMarkerResolutionGenerator returns an empty array for getMarkerResolutions in this case) This is not an issue if the file is not read-only. Marking major as ClearCase users can run into this issue quite easily as they frequently have read only files.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.java
public static String SerialVersionHashProposal_unable_locate_executable;
	public static String CorrectPackageDeclarationProposal_name;
	public static String CorrectPackageDeclarationProposal_remove_description;
	public static String CorrectPackageDeclarationProposal_add_description;
	public static String CorrectPackageDeclarationProposal_change_description;
	public static String JavaCorrectionProcessor_addquote_description;
	public static String ChangeCorrectionProposal_error_title;
	public static String ChangeCorrectionProposal_error_message;
	public static String ChangeCorrectionProposal_name_with_shortcut;
	public static String CUCorrectionProposal_error_title;
	public static String CUCorrectionProposal_error_message;
	public static String ReorgCorrectionsSubProcessor_renametype_description;
	public static String ReorgCorrectionsSubProcessor_renamecu_description;
	public static String ReorgCorrectionsSubProcessor_movecu_default_description;
	public static String ReorgCorrectionsSubProcessor_movecu_description;
	public static String ReorgCorrectionsSubProcessor_unusedimport_description;
	public static String ReorgCorrectionsSubProcessor_organizeimports_description;
	public static String ReorgCorrectionsSubProcessor_addcp_project_description;
	public static String ReorgCorrectionsSubProcessor_addcp_archive_description;
	public static String ReorgCorrectionsSubProcessor_addcp_classfolder_description;
	public static String ReorgCorrectionsSubProcessor_50_project_compliance_description;
	public static String ReorgCorrectionsSubProcessor_50_workspace_compliance_description;
	public static String ReorgCorrectionsSubProcessor_addcp_variable_description;
	public static String ReorgCorrectionsSubProcessor_addcp_library_description;
	public static String LocalCorrectionsSubProcessor_surroundwith_description;
	public static String LocalCorrectionsSubProcessor_addthrows_description;
	public static String LocalCorrectionsSubProcessor_addadditionalcatch_description;
	public static String LocalCorrectionsSubProcessor_unnecessaryinstanceof_description;
	public static String LocalCorrectionsSubProcessor_unnecessarythrow_description;
	public static String LocalCorrectionsSubProcessor_classtointerface_description;