Handle start page wisely when creating a new Page/PageFragment without Visual Web framework initialized. release60-m8_root
authorpotingwu@netbeans.org
Wed, 21 Mar 2007 00:21:05 +0000
changeset 355c928df148096
parent 354 48918f30ee8f
child 356 f66906465b62
Handle start page wisely when creating a new Page/PageFragment without Visual Web framework initialized.
visualweb.project.jsf/src/org/netbeans/modules/visualweb/project/jsf/ui/PageIterator.java
     1.1 --- a/visualweb.project.jsf/src/org/netbeans/modules/visualweb/project/jsf/ui/PageIterator.java	Tue Mar 20 21:47:40 2007 +0000
     1.2 +++ b/visualweb.project.jsf/src/org/netbeans/modules/visualweb/project/jsf/ui/PageIterator.java	Wed Mar 21 00:21:05 2007 +0000
     1.3 @@ -185,6 +185,7 @@
     1.4  
     1.5          DataObject dTemplate = DataObject.find(template);                
     1.6          String targetName = Templates.getTargetName(wizard);
     1.7 +        Set result = Collections.EMPTY_SET;
     1.8  
     1.9          // Visual Web framework is not initialized
    1.10          String version = JsfProjectUtils.getProjectVersion(project);
    1.11 @@ -202,36 +203,50 @@
    1.12                          beanPackage = JsfProjectUtils.deriveSafeName(projDir.getName());
    1.13                      }
    1.14                      JsfProjectUtils.createProjectProperty(project, JsfProjectConstants.PROP_JSF_PAGEBEAN_PACKAGE, beanPackage);
    1.15 -                    if ("jsp".equals(template.getExt())) {
    1.16 +
    1.17 +                    boolean isPage = "jsp".equals(template.getExt());
    1.18 +                    if (isPage) {
    1.19                          JsfProjectUtils.createProjectProperty(project, JsfProjectConstants.PROP_START_PAGE, targetName+".jsp");
    1.20 +                    } else if ("jspf".equals(template.getExt()) && "Page1".equals(targetName)) {
    1.21 +                        JsfProjectUtils.createProjectProperty(project, JsfProjectConstants.PROP_START_PAGE, "Page2.jsp");
    1.22                      }
    1.23  
    1.24                      framework.getConfigurationPanel(webModule);
    1.25 -                    return framework.extend(webModule);
    1.26 +                    result = framework.extend(webModule);
    1.27 +
    1.28 +                    if (isPage) {
    1.29 +                        return result;
    1.30 +                    }
    1.31                  }
    1.32              }
    1.33          }
    1.34  
    1.35 -        DataObject result;
    1.36 +        DataObject obj;
    1.37          try {
    1.38              if (targetName == null) {
    1.39                  // Default name.
    1.40 -                result = dTemplate.createFromTemplate(df);
    1.41 +                obj = dTemplate.createFromTemplate(df);
    1.42              } else {
    1.43 -                result = dTemplate.createFromTemplate(df, targetName);
    1.44 +                obj = dTemplate.createFromTemplate(df, targetName);
    1.45              }
    1.46          } catch(org.netbeans.modules.visualweb.project.jsf.api.JsfDataObjectException jsfe) {
    1.47              DialogDisplayer.getDefault().notify(new NotifyDescriptor.Message(
    1.48                  NbBundle.getMessage(PageIterator.class, "TXT_CantCreatePage", df.getName())));
    1.49 -            return Collections.EMPTY_SET;
    1.50 +            return result;
    1.51 +        }
    1.52 +
    1.53 +        if (result == Collections.EMPTY_SET) {
    1.54 +            result = Collections.singleton(obj);
    1.55 +        } else {
    1.56 +            result.add(obj);
    1.57          }
    1.58  
    1.59          // Open the new document
    1.60 -        OpenCookie open = (OpenCookie)result.getCookie(OpenCookie.class);
    1.61 +        OpenCookie open = (OpenCookie)obj.getCookie(OpenCookie.class);
    1.62          if (open != null) {
    1.63              open.open();
    1.64          }
    1.65 -        return Collections.singleton(result);
    1.66 +        return result;
    1.67      }
    1.68      
    1.69      public void previousPanel () {