Apply patch for bug 148498.
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/Messages.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/Messages.java
index 978f6cf..de8b7ee 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/Messages.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/Messages.java
@@ -64,6 +64,8 @@
 
 	public static String JSFLibraryConfigControl_NewImplementationLibrary;
 
+	public static String JSFLibraryConfigControl_NullProject;
+
 	public static String JSFLibraryConfigControl_Remove;
 
 	public static String JSFLibraryConfigControl_RemoveAll;
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryConfigControl.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryConfigControl.java
index a386dc1..60d7725 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryConfigControl.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryConfigControl.java
@@ -17,9 +17,7 @@
 import java.util.Vector;
 
 import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.runtime.IStatus;
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.jface.viewers.CheckStateChangedEvent;
 import org.eclipse.jface.viewers.CheckboxTableViewer;
@@ -101,16 +99,27 @@
 	 * Create the composite
 	 * @param parent
 	 * @param style
-	 * @param IProject
 	 */	
-	public JSFLibraryConfigControl(Composite parent, int style, IProject fProject) {
-		super(parent, style);	
-				
-		this.provider = new JSFLibraryConfigModelAdapter(fProject);
-		
-		initControls();
+	public JSFLibraryConfigControl(Composite parent, int style) {
+		super(parent, style);
+	
+		createControls();
 	}	
-
+	
+	/**
+	 * To initialize control valaues from a model instanciated w/ a project.
+	 * 
+	 * @param project
+	 */
+	public void initControlsValues(IProject project) {
+		if (project != null) {
+			provider = new JSFLibraryConfigModelAdapter(project);		
+			initializeControlValues();
+		} else {
+			JSFUiPlugin.log(IStatus.ERROR, Messages.JSFLibraryConfigControl_NullProject);
+		}
+	}	
+	
 	/**
 	 * Return the working model.
 	 * 
@@ -201,9 +210,8 @@
 		}
 		return selJSFImpl;		
 	}
-	
-	private void initControls() {
-		
+
+	private void createControls() {
 		setRedraw(true);
 		final GridLayout gridLayout = new GridLayout();
 		gridLayout.numColumns = 4;
@@ -409,7 +417,6 @@
 			}
 		});
 		
-		//initializeControlValues();
 		btnAdd.addMouseListener(new MouseAdapter() {
 			public void mouseDown(MouseEvent e) {
 				resetComponentLibSelection((StructuredSelection)tvCompLib.getSelection(), 
@@ -436,8 +443,7 @@
 				resetCompontLibSelectionAll(tvCompLib, ctvSelCompLib, false);
 			}
 		});
-		
-		initializeControlValues();
+			
 	}
 
 	/*
@@ -722,5 +728,5 @@
 		public void removeListener(ILabelProviderListener listener) {
 		}
 	}
-
+	
 }
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryPropertyPage.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryPropertyPage.java
index c169c23..6c905d4 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryPropertyPage.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/jsflibraryconfig/JSFLibraryPropertyPage.java
@@ -49,7 +49,7 @@
 	 */
 	public void setElement(IAdaptable element) {
 		super.setElement(element);
-		project= (IProject) element.getAdapter(IResource.class);
+		project = (IProject) element.getAdapter(IResource.class);
 	}	
 	
 	/* (non-Javadoc)
@@ -81,7 +81,8 @@
 	}
 
 	private Control createForJSFProject(Composite parent) {		 
-		jsfLibCfgControl = new JSFLibraryConfigControl(parent, SWT.NULL, project);
+		jsfLibCfgControl = new JSFLibraryConfigControl(parent, SWT.NULL);
+		jsfLibCfgControl.initControlsValues(project);
 				
 		jsfLibCfgControl.addOkClickedListener(new IJSFImplLibraryCreationListener() {			
 			public void okClicked(JSFImplLibraryCreationEvent event) {
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/messages.properties b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/messages.properties
index ef90567..8ea0fff 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/messages.properties
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/messages.properties
@@ -73,6 +73,7 @@
 JSFLibraryConfigControl_RemoveAll=\ \ <<  
 JSFLibraryConfigControl_NewComponentLibrary=New...
 JSFLibraryConfigControl_TH_Deploy=Deploy
+JSFLibraryConfigControl_NullProject=No project specified.
 JSFLibraryConfigControl_TH_LibraryName=Library Name
 
 JSFValidationPreferencePage_ELPrefPanel_Title=Expression Language (EL) Validation
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/project/facet/JSFFacetInstallPage.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/project/facet/JSFFacetInstallPage.java
index d03a3d2..a760ac3 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/project/facet/JSFFacetInstallPage.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/project/facet/JSFFacetInstallPage.java
@@ -80,7 +80,7 @@
 	private JSFLibraryConfigControl jsfLibCfgComp = null;
 	private String projectName = null;
 	private Composite composite = null;	
-	
+		
 	/**
 	 * Zero argument constructor
 	 */
@@ -107,10 +107,9 @@
 		lblJSFImpl.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false));
 		lblJSFImpl.setText(Messages.JSFFacetInstallPage_JSFLibraryLabel0);
 		
-		((GridLayout)composite.getLayout()).marginLeft = 0;		
-		IProject project = getProjectHandle();
-		jsfLibCfgComp = new JSFLibraryConfigControl(composite, SWT.NONE, project);
-				
+		((GridLayout)composite.getLayout()).marginLeft = 0;
+		
+		jsfLibCfgComp = new JSFLibraryConfigControl(composite, SWT.NONE);
 		jsfLibCfgComp.addOkClickedListener(new IJSFImplLibraryCreationListener() {
 			public void okClicked(JSFImplLibraryCreationEvent event) {
 				if (((JSFImplLibraryCreationEvent) event).isLibraryCreated()) {
@@ -394,7 +393,7 @@
 	public void propertyChanged(DataModelEvent event) {
 		if (webAppDataModel != null){
 			String propertyName = event.getPropertyName();
-			if (propertyName.equals(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER)){
+			if (propertyName.equals(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER)) {
 				model.setStringProperty(WEBCONTENT_DIR, event.getProperty().toString());
 			}
 		}
@@ -406,14 +405,26 @@
 			webAppDataModel.removeListener(this);
 		super.dispose();
 	}
+	
 	protected void restoreDefaultSettings() {
 		initializeValues();
 	}
 	
+	/**
+	 * (non-Javadoc)
+	 * @see org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizardPage#updateControls()
+	 */
+	protected void updateControls() {
+		projectName = model.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.FACET_PROJECT_NAME);
+		IProject project = getProjectHandle();
+		jsfLibCfgComp.initControlsValues(project);
+	}		
+	
 	private IProject getProjectHandle() {
-		if (projectName != null) {
+		if (projectName != null && projectName.length() > 0) {
 			return ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
 		}
 		return null;
-	}	
+	}
+		
 }