# This patch file was generated by NetBeans IDE # Following Index: paths are relative to: /home/matthias/NetBeansProjects/core-main # This patch can be applied using context Tools: Patch action on respective folder. # It uses platform neutral UTF-8 encoding and \n newlines. # Above lines and this line are ignored by the patching process. Index: dbschema/src/org/netbeans/modules/dbschema/jdbcimpl/wizard/DBSchemaWizardIterator.java --- dbschema/src/org/netbeans/modules/dbschema/jdbcimpl/wizard/DBSchemaWizardIterator.java +++ dbschema/src/org/netbeans/modules/dbschema/jdbcimpl/wizard/DBSchemaWizardIterator.java @@ -46,6 +46,8 @@ import java.io.IOException; import java.util.*; +import java.util.logging.Level; +import java.util.logging.Logger; import javax.swing.event.ChangeListener; import org.netbeans.api.project.Project; @@ -56,12 +58,14 @@ import org.openide.util.NbBundle; import org.openide.WizardDescriptor; import org.openide.filesystems.FileObject; +import org.openide.filesystems.FileUtil; import org.openide.loaders.DataFolder; /** Iterator implementation which can iterate through two * panels which forms dbschema template wizard */ public class DBSchemaWizardIterator implements TemplateWizard.Iterator { + private static final Logger LOG = Logger.getLogger(DBSchemaWizardIterator.class.getName()); static final long serialVersionUID = 9197272899287477324L; @@ -228,12 +232,24 @@ if (newTargetFO == null || !newTargetFO.isValid()) { newTargetFO = projectDir.getFileObject("src/META-INF"); // NOI18N if (newTargetFO == null || !newTargetFO.isValid()) { + // take existence of /src/main as indication + // of maven style project layout + FileObject tempFo = projectDir.getFileObject("src/main"); // NOI18N + if(tempFo != null) { + try { + newTargetFO = FileUtil.createFolder(tempFo, "resources/META-INF"); + } catch (IOException ex) { + LOG.log(Level.INFO, "Failed to create META-INF folder", ex); + } + } + if(newTargetFO == null) { newTargetFO = projectDir.getFileObject("src"); // NOI18N if (newTargetFO == null || !newTargetFO.isValid()) { return; } } } + } DataFolder newTarget = DataFolder.findFolder(newTargetFO); wizardInstance.setTargetFolder(newTarget);