# This patch file was generated by NetBeans IDE # Following Index: paths are relative to: /Volumes/300gb/nbtrunk6 # 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: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ProjectEar.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ProjectEar.java Base (1.18) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ProjectEar.java Locally Modified (Based On 1.18) *************** *** 157,167 **** } public FileObject getContentDirectory() { ! return project.getFileObject (EarProjectProperties.BUILD_DIR); //NOI18N } public FileObject getBuildDirectory() { --- 157,170 ---- } public FileObject getContentDirectory() { ! // use the RUN_DIR as the content directory if it is available ! // directory deployment support ! FileObject retVal = project.getFileObject(EarProjectProperties.RUN_DIR); ! if (null == retVal) { ! retVal = project.getFileObject(EarProjectProperties.BUILD_DIR); } + return retVal; + } public FileObject getBuildDirectory() { return project.getFileObject (EarProjectProperties.BUILD_DIR); //NOI18N Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/ModuleNode.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/ModuleNode.java Base (1.10) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/ModuleNode.java Locally Modified (Based On 1.10) *************** *** 109,114 **** --- 109,118 ---- newList.addAll(epp.getJarContentAdditional()); newList.remove(key); epp.put(EarProjectProperties.JAR_CONTENT_ADDITIONAL, newList); + newList.clear(); + newList.addAll(epp.getJavacClasspath()); + newList.remove(key); + epp.put(EarProjectProperties.JAVAC_CLASSPATH, newList); epp.store(); } Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/resources/build-impl.xsl *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/resources/build-impl.xsl Base (1.25) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/resources/build-impl.xsl Locally Modified (Based On 1.25) *************** *** 119,131 **** ! --- 119,147 ---- ! ! ! + + + + + + + + + + + + + + + + + *************** *** 205,215 **** ! init,deps-jar,pre-pre-compile,pre-compile --- 224,235 ---- ! init,deps-jar,pre-pre-compile,pre-compile,do-compile-directory,do-compile-archive ! + + init,deps-jar,pre-pre-compile,pre-compile + directory.deployment.supported *************** *** 224,230 **** ! --- 247,253 ---- ! *************** *** 244,250 **** --- 267,346 ---- + + + init,deps-jar,pre-pre-compile,pre-compile + directory.deployment.supported + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + *************** *** 286,291 **** --- 382,407 ---- + + init,compile,pre-dist + early.ear.package.without.custom.manifest + + + + + + + + + init,compile,pre-dist + early.ear.package.with.custom.manifest + + + + + + + Empty placeholder for easier customization. You can override this target in the ../build.xml file. *************** *** 332,338 **** ! dist,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy --- 448,454 ---- ! -package-without-manifest,-package-with-manifest,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy *************** *** 486,491 **** --- 602,608 ---- + *************** *** 548,554 **** --- 665,676 ---- + + + + + Index: j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/resources/build-impl.xsl *** /Volumes/300gb/nbtrunk6/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/resources/build-impl.xsl Base (1.68) --- /Volumes/300gb/nbtrunk6/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/resources/build-impl.xsl Locally Modified (Based On 1.68) *************** *** 14,20 **** "Portions Copyrighted [year] [name of copyright owner]" The Original Software is NetBeans. The Initial Developer of the Original ! Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun Microsystems, Inc. All Rights Reserved. --> + + + + + + + + + + + + + + + + + + + *************** *** 1129,1134 **** --- 1148,1173 ---- You can override this target in the ../build.xml file. + + + init,compile,-pre-dist,library-inclusion-in-archive + + + + + + + + + init,compile,-pre-dist,library-inclusion-in-archive + + + + + + + init,compile,-pre-dist,library-inclusion-in-archive has.custom.manifest *************** *** 1151,1156 **** --- 1190,1199 ---- + + init,compile,-pre-dist,library-inclusion-in-manifest + + init,compile,-pre-dist,library-inclusion-in-manifest *************** *** 1212,1218 **** ! init,-init-deploy,compile,library-inclusion-in-archive,dist,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy --- 1255,1261 ---- ! init,-init-deploy,compile,library-inclusion-in-archive,-package-without-manifest,-package-with-manifest,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy Index: web/webapi/src/org/netbeans/modules/web/api/webmodule/WebProjectConstants.java *** /Volumes/300gb/nbtrunk6/web/webapi/src/org/netbeans/modules/web/api/webmodule/WebProjectConstants.java Base (1.7) --- /Volumes/300gb/nbtrunk6/web/webapi/src/org/netbeans/modules/web/api/webmodule/WebProjectConstants.java Locally Modified (Based On 1.7) *************** *** 13,19 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ --- 13,19 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ *************** *** 65,68 **** --- 65,76 ---- //TO-DO: should be got from org.netbeans.modules.j2ee.common.J2eeProjectConstants public static final String ARTIFACT_TYPE_WAR_EAR_ARCHIVE = "j2ee_ear_archive"; //NOI18N + /** + * Constant representing the build directory of a web app artifact to be + * packaged as a part of an ear archive. Used to directory deploy EAR projects. + * @see org.netbeans.api.project.ant.AntArtifact + * @since 1.9 + */ + public static final String ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE = "j2ee_ear_builddir"; // NOI18N + } Index: j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProvider.java *** /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProvider.java Base (1.4) --- /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProvider.java Locally Modified (Based On 1.4) *************** *** 197,207 **** } public FileObject getContentDirectory() { ! return getFileObject(AppClientProjectProperties.BUILD_CLASSES_DIR); } public FileObject getBuildDirectory() { --- 197,208 ---- } public FileObject getContentDirectory() { ! FileObject retVal = getFileObject(AppClientProjectProperties.BUILD_CLASSES_DIR); ! if (null == retVal) { ! retVal = getFileObject("build.ear.classes.dir");; } + return retVal; + } public FileObject getBuildDirectory() { return getFileObject(AppClientProjectProperties.BUILD_DIR); *************** *** 205,215 **** } public File getContentDirectoryAsFile() { ! return getFile(AppClientProjectProperties.BUILD_CLASSES_DIR); } public RootInterface getDeploymentDescriptor(String location) { --- 209,220 ---- } public File getContentDirectoryAsFile() { ! File retVal = getFile(AppClientProjectProperties.BUILD_CLASSES_DIR); ! if (null == retVal) { ! retVal = getFile("build.ear.classes.dir");; } + return retVal; + } public RootInterface getDeploymentDescriptor(String location) { if (J2eeModule.CLIENT_XML.equals(location)){ Index: serverplugins/sun/appsrvbridge/nbproject/genfiles.properties *** /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/nbproject/genfiles.properties Base (1.9) --- /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/nbproject/genfiles.properties Locally Modified (Based On 1.9) *************** *** 4,8 **** # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. nbproject/build-impl.xml.data.CRC32=afdbb147 ! nbproject/build-impl.xml.script.CRC32=499b32c8 ! nbproject/build-impl.xml.stylesheet.CRC32=61d6088b --- 4,8 ---- # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. nbproject/build-impl.xml.data.CRC32=afdbb147 ! nbproject/build-impl.xml.script.CRC32=92085bd7 ! nbproject/build-impl.xml.stylesheet.CRC32=2093e0f1 Index: j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/TargetServer.java *** /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/TargetServer.java Base (1.50) --- /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/TargetServer.java Locally Modified (Based On 1.50) *************** *** 504,517 **** hasActivities = true; if (incremental != null && hasDirectory && canFileDeploy(redeployTargetModules, deployable)) { AppChangeDescriptor acd = distributeChanges(redeployTargetModules[0], ui); ! if (anyChanged(acd)) { ui.progress(NbBundle.getMessage(TargetServer.class, "MSG_IncrementalDeploying", redeployTargetModules[0])); po = incremental.incrementalDeploy(redeployTargetModules[0].delegate(), acd); trackDeployProgressObject(ui, po, true); ! } else { // return original target modules ! return dtarget.getTargetModules(); ! } } else { // standard redeploy if (getApplication() == null) throw new IllegalArgumentException(NbBundle.getMessage(TargetServer.class, "MSG_NoArchive")); --- 504,519 ---- hasActivities = true; if (incremental != null && hasDirectory && canFileDeploy(redeployTargetModules, deployable)) { AppChangeDescriptor acd = distributeChanges(redeployTargetModules[0], ui); ! // if there are no changes, the nbbrowse method doesn't get a valid URL ! // that is a bug somewhere that needs more examination ! //if (anyChanged(acd)) { ui.progress(NbBundle.getMessage(TargetServer.class, "MSG_IncrementalDeploying", redeployTargetModules[0])); po = incremental.incrementalDeploy(redeployTargetModules[0].delegate(), acd); trackDeployProgressObject(ui, po, true); ! // } else { // return original target modules ! // return dtarget.getTargetModules(); ! // } } else { // standard redeploy if (getApplication() == null) throw new IllegalArgumentException(NbBundle.getMessage(TargetServer.class, "MSG_NoArchive")); Index: j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProjectConstants.java *** /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProjectConstants.java Base (1.2) --- /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProjectConstants.java Locally Modified (Based On 1.2) *************** *** 13,19 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ --- 13,19 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ *************** *** 47,50 **** --- 47,57 ---- * Constant representing an j2ee jar artifact to be packaged as a part of an ear archive. */ public static final String ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE = "j2ee_ear_archive"; //NOI18N + + /** + * Constant representing the build directory of a j2ee jar artifact to be + * packaged as a part of an ear archive. Used directory deploy EAR projects. + * @see org.netbeans.api.project.ant.AntArtifact + */ + public static final String ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE = "j2ee_ear_builddir"; //NOI18N } Index: j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java *** /Volumes/300gb/nbtrunk6/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java Base (1.67) --- /Volumes/300gb/nbtrunk6/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java Locally Modified (Based On 1.67) *************** *** 901,907 **** return new AntArtifact[] { helper.createSimpleAntArtifact(JavaProjectConstants.ARTIFACT_TYPE_JAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N helper.createSimpleAntArtifact(EjbProjectConstants.ARTIFACT_TYPE_EJBJAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N ! helper.createSimpleAntArtifact(EjbProjectConstants.ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE, "dist.ear.jar", helper.getStandardPropertyEvaluator(), "dist-ear", "clean-ear") // NOI18N }; } } --- 901,909 ---- return new AntArtifact[] { helper.createSimpleAntArtifact(JavaProjectConstants.ARTIFACT_TYPE_JAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N helper.createSimpleAntArtifact(EjbProjectConstants.ARTIFACT_TYPE_EJBJAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N ! helper.createSimpleAntArtifact(EjbProjectConstants.ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE, "dist.ear.jar", helper.getStandardPropertyEvaluator(), "dist-ear", "clean-ear"), // NOI18N ! // ear project directory deployment needs to get this reference ! helper.createSimpleAntArtifact(EjbProjectConstants.ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE,"build.ear.classes.dir",evaluator(), "build-ear", "clean-ear"), }; } } Index: serverplugins/sun/appsrvbridge/src/org/netbeans/modules/j2ee/sun/bridge/DirectoryDeployment.java *** /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/src/org/netbeans/modules/j2ee/sun/bridge/DirectoryDeployment.java Base (1.11) --- /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/src/org/netbeans/modules/j2ee/sun/bridge/DirectoryDeployment.java Locally Modified (Based On 1.11) *************** *** 147,153 **** final public ProgressObject incrementalDeploy( final TargetModuleID tmid, AppChangeDescriptor aCD) { ProgressObject retVal = null; try { - dm.grabInnerDM(false); DirectoryDeploymentFacility ddf = new DirectoryDeploymentFacility(dm.getHost(),dm.getPort(), --- 147,152 ---- *************** *** 224,229 **** --- 223,231 ---- } if (null == moduleID) { moduleID = contextRoot.replace(' ','_'); + if (moduleID.startsWith("/")) { + moduleID = moduleID.substring(1); + } // This moduleID will be later used to construct file path, // replace the illegal characters in file name *************** *** 294,301 **** --- 296,317 ---- String moduleID= "FIXMEinitialDeploy"; try { if (null != crp) { + String crvalue = crp.getContextRoot(); + if (null != crvalue) { moduleID = getGoodDirNameFromContextRoot(crp.getContextRoot()); + } else { + // FIXME : this should not be hardcoded. + String name = dir.getName(); + if ("run".equals(name)) { + // we are directory deploying an ear file.. + name = dir.getParentFile().getName(); + } else { + // we are directory deploying something else... + name = dir.getParentFile().getParentFile().getName(); } + moduleID = getGoodDirNameFromContextRoot(name); + } + } } catch (ConfigurationException ex) { moduleID = "FIXMECEinitialDeploy"; } Index: j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java *** /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java Base (1.8) --- /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java Locally Modified (Based On 1.8) *************** *** 784,790 **** return new AntArtifact[] { helper.createSimpleAntArtifact(JavaProjectConstants.ARTIFACT_TYPE_JAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N //new CarAntArtifact(helper.createSimpleAntArtifact(AppClientProjectConstants.ARTIFACT_TYPE_CAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean")), // NOI18N ! new CarAntArtifact(helper.createSimpleAntArtifact(AppClientProjectConstants.ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE, "dist.ear.jar", helper.getStandardPropertyEvaluator(), "dist-ear", "clean-ear")) // NOI18N }; } --- 784,792 ---- return new AntArtifact[] { helper.createSimpleAntArtifact(JavaProjectConstants.ARTIFACT_TYPE_JAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean"), // NOI18N //new CarAntArtifact(helper.createSimpleAntArtifact(AppClientProjectConstants.ARTIFACT_TYPE_CAR, "dist.jar", helper.getStandardPropertyEvaluator(), "dist", "clean")), // NOI18N ! new CarAntArtifact(helper.createSimpleAntArtifact(AppClientProjectConstants.ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE, "dist.ear.jar", helper.getStandardPropertyEvaluator(), "dist-ear", "clean-ear")), // NOI18N ! // ear project directory deployment needs to get this reference ! new CarAntArtifact(helper.createSimpleAntArtifact(AppClientProjectConstants.ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE, "build.ear.classes.dir", helper.getStandardPropertyEvaluator(), "build-ear", "clean-ear")) // NOI18N }; } Index: serverplugins/sun/appsrv81/src/org/netbeans/modules/j2ee/sun/ide/j2ee/incrdeploy/DirectoryDeploymentFacade.java *** /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrv81/src/org/netbeans/modules/j2ee/sun/ide/j2ee/incrdeploy/DirectoryDeploymentFacade.java Base (1.10) --- /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrv81/src/org/netbeans/modules/j2ee/sun/ide/j2ee/incrdeploy/DirectoryDeploymentFacade.java Locally Modified (Based On 1.10) *************** *** 148,156 **** if (null == dm){ retVal = false; } ! if (null == target){ ! retVal = false; ! } if (null == module){ retVal = false; } else { --- 148,157 ---- if (null == dm){ retVal = false; } ! // Directory Dep[loyment for ears ! // if (null == target){ ! // retVal = false; ! // } if (null == module){ retVal = false; } else { *************** *** 158,164 **** resourceDirs = Utils.getResourceDirs(module); //so far only WAR are supported for Directory based deployment ! if ((module.getModuleType() != ModuleType.WAR)){ retVal = false; } if (retVal) { --- 159,165 ---- resourceDirs = Utils.getResourceDirs(module); //so far only WAR are supported for Directory based deployment ! if ((module.getModuleType() == ModuleType.CAR)){ retVal = false; } if (retVal) { Index: j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/ServerFileDistributor.java *** /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/ServerFileDistributor.java Base (1.24) --- /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/impl/ServerFileDistributor.java Locally Modified (Based On 1.24) *************** *** 13,27 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.j2ee.deployment.impl; import org.openide.filesystems.FileObject; import org.openide.filesystems.FileLock; --- 13,25 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.j2ee.deployment.impl; + import java.util.logging.Logger; import org.openide.filesystems.FileObject; import org.openide.filesystems.FileLock; import org.openide.filesystems.FileUtil; *************** *** 104,118 **** private AppChanges createModuleChangeDescriptor(TargetModuleID target) { J2eeModule module = getJ2eeModule(target); ! List descriptorRelativePaths = getDescriptorPath(module); ! ! ModuleType moduleType = (ModuleType) module.getModuleType (); ! List serverDescriptorRelativePaths = Arrays.asList(instance.getServer().getDeploymentPlanFiles(moduleType)); ! return new AppChanges(descriptorRelativePaths, serverDescriptorRelativePaths, (ModuleType) dtarget.getModule ().getModuleType ()); } public AppChangeDescriptor distribute(TargetModule targetModule, ModuleChangeReporter mcr) throws IOException { --- 105,124 ---- private AppChanges createModuleChangeDescriptor(TargetModuleID target) { J2eeModule module = getJ2eeModule(target); ! List descriptorRelativePaths = new ArrayList(); ! List serverDescriptorRelativePaths = new ArrayList(); ! // this should not be happeneing... but it is anyway ! // need to investigate more ! if (null != module) { ! List tmpList = getDescriptorPath(module); ! descriptorRelativePaths.addAll(tmpList); ! ModuleType moduleType = (ModuleType) module.getModuleType(); ! serverDescriptorRelativePaths.addAll(Arrays.asList(instance.getServer().getDeploymentPlanFiles(moduleType))); ! } else { ! Logger.getLogger(this.getClass().getName()).finest("module was null for TMID: "+target); } + return new AppChanges(descriptorRelativePaths, serverDescriptorRelativePaths, (ModuleType) dtarget.getModule().getModuleType()); + } public AppChangeDescriptor distribute(TargetModule targetModule, ModuleChangeReporter mcr) throws IOException { long lastDeployTime = targetModule.getTimestamp(); *************** *** 153,176 **** setStatusDistributeRunning(NbBundle.getMessage( ServerFileDistributor.class, "MSG_RunningIncrementalDeploy", target)); ! Iterator content = getJ2eeModule(target).getArchiveContents (); Date lastDeployed = new Date(lastDeployTime); ! while (content.hasNext ()) { ! J2eeModule.RootedEntry re = (J2eeModule.RootedEntry) content.next (); ! FileObject file = re.getFileObject (); if (file.isFolder()) continue; //jar file are created externally and timestamp may not be refreshed ! file.refresh (); if (file.lastModified().after(lastDeployed)) { ! String relativePath = re.getRelativePath (); mc.record(relativePath); } } return mc; --- 162,188 ---- setStatusDistributeRunning(NbBundle.getMessage( ServerFileDistributor.class, "MSG_RunningIncrementalDeploy", target)); ! // this if may be covering a bug. needs more investgation. ! // ! J2eeModule mod = getJ2eeModule(target); ! if (mod != null) { + Iterator content = getJ2eeModule(target).getArchiveContents(); + Date lastDeployed = new Date(lastDeployTime); ! while (content.hasNext()) { ! J2eeModule.RootedEntry re = (J2eeModule.RootedEntry) content.next(); ! FileObject file = re.getFileObject(); if (file.isFolder()) continue; //jar file are created externally and timestamp may not be refreshed ! file.refresh(); if (file.lastModified().after(lastDeployed)) { ! String relativePath = re.getRelativePath(); mc.record(relativePath); } } + } return mc; } Index: web/project/src/org/netbeans/modules/web/project/resources/build-impl.xsl *** /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/resources/build-impl.xsl Base (1.134) --- /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/resources/build-impl.xsl Locally Modified (Based On 1.134) *************** *** 108,113 **** --- 108,116 ---- + + + *************** *** 193,198 **** --- 196,219 ---- + + + + + + + + + + + + + + + + + + *************** *** 1202,1207 **** --- 1223,1248 ---- + + + init,compile,compile-jsps,-pre-dist + + + + + + + + + init,compile,compile-jsps,-pre-dist + + + + + + + init,compile,compile-jsps,-pre-dist,-do-dist-with-manifest,-do-dist-without-manifest *************** *** 1394,1404 **** ! init,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest --- 1435,1449 ---- ! ! init,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest + + + + + init,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest + directory.deployment.supported *************** *** 1403,1408 **** --- 1451,1465 ---- + + + init,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest + directory.deployment.supported + + + + + Empty placeholder for easier customization. You can override this target in the ../build.xml file. *************** *** 1414,1420 **** ! init,compile,-pre-dist,do-ear-dist,-post-dist Build distribution (WAR) to be packaged into an EAR. --- 1471,1477 ---- ! init,compile,-pre-dist,do-ear-dist-directory,do-ear-dist-archive,-post-dist Build distribution (WAR) to be packaged into an EAR. *************** *** 1451,1458 **** Task to deploy to the Access Manager runtime. ! init,compile,compile-jsps,-do-compile-single-jsp,dist,-pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,-post-run-deploy --- 1508,1516 ---- Task to deploy to the Access Manager runtime. + ! init,compile,compile-jsps,-do-compile-single-jsp,-package-without-manifest,-package-with-manifest,-pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,-post-run-deploy Index: web/project/src/org/netbeans/modules/web/project/WebActionProvider.java *** /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/WebActionProvider.java Base (1.88) --- /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/WebActionProvider.java Locally Modified (Based On 1.88) *************** *** 13,19 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ --- 13,19 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ *************** *** 224,229 **** --- 224,231 ---- // RUN-SINGLE if (command.equals(COMMAND_RUN_SINGLE)) { + setDirectoryDeploymentProperty(p); + FileObject[] files = findTestSources(context, false); if (files != null) { targetNames = setupTestSingle(p, files); *************** *** 328,333 **** --- 330,337 ---- // RUN, REDEPLOY } else if (command.equals(COMMAND_RUN) || command.equals (WebProjectConstants.COMMAND_REDEPLOY)) { + setDirectoryDeploymentProperty(p); + FileObject[] files = findTestSources(context, false); if (files != null) { targetNames = setupTestSingle(p, files); *************** *** 354,359 **** --- 358,365 ---- // DEBUG-SINGLE } else if (command.equals(COMMAND_DEBUG_SINGLE)) { + setDirectoryDeploymentProperty(p); + FileObject[] files = findTestSources(context, false); if (files != null) { targetNames = setupDebugTestSingle(p, files); *************** *** 455,460 **** --- 461,468 ---- //DEBUG } else if (command.equals (COMMAND_DEBUG)) { + setDirectoryDeploymentProperty(p); + if (!isSelectedServer ()) { return null; } *************** *** 539,544 **** --- 547,554 ---- } } else if (command.equals(JavaProjectConstants.COMMAND_DEBUG_FIX)) { + setDirectoryDeploymentProperty(p); + FileObject[] files = findJavaSources(context); String path = null; if (files != null) { *************** *** 618,623 **** --- 628,634 ---- } catch(Exception ex) { ErrorManager.getDefault().notify(ErrorManager.INFORMATIONAL, ex); } + setDirectoryDeploymentProperty(p); } private String[] setupTestSingle(Properties p, FileObject[] files) { *************** *** 625,630 **** --- 636,642 ---- FileObject root = getRoot(testSrcPath, files[0]); p.setProperty("test.includes", ActionUtils.antIncludesList(files, root)); // NOI18N p.setProperty("javac.includes", ActionUtils.antIncludesList(files, root)); // NOI18N + setDirectoryDeploymentProperty(p); return new String[] {"test-single"}; // NOI18N } *************** *** 634,639 **** --- 646,652 ---- String path = FileUtil.getRelativePath(root, files[0]); // Convert foo/FooTest.java -> foo.FooTest p.setProperty("test.class", path.substring(0, path.length() - 5).replace('/', '.')); // NOI18N + setDirectoryDeploymentProperty(p); return new String[] {"debug-test"}; // NOI18N } *************** *** 1039,1044 **** --- 1052,1072 ---- return false; } + private void setDirectoryDeploymentProperty(Properties p) { + String instance = updateHelper.getAntProjectHelper().getStandardPropertyEvaluator ().getProperty (WebProjectProperties.J2EE_SERVER_INSTANCE); + if (instance != null) { + J2eeModuleProvider jmp = (J2eeModuleProvider)project.getLookup().lookup(J2eeModuleProvider.class); + String sdi = jmp.getServerInstanceID(); + J2eeModule mod = jmp.getJ2eeModule(); + if (sdi != null && mod != null) { + boolean cFD = Deployment.getDefault().canFileDeploy(instance, mod); + if (cFD) { + p.setProperty("directory.deployment.supported", ""+cFD); + } + } + } + } + private boolean isSelectedServer () { String instance = updateHelper.getAntProjectHelper().getStandardPropertyEvaluator ().getProperty (WebProjectProperties.J2EE_SERVER_INSTANCE); if (instance != null) { Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarActionProvider.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarActionProvider.java Base (1.12) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarActionProvider.java Locally Modified (Based On 1.12) *************** *** 13,19 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ --- 13,19 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ *************** *** 32,37 **** --- 32,38 ---- import org.netbeans.api.project.Project; import org.netbeans.modules.j2ee.api.ejbjar.EjbProjectConstants; import org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment; + import org.netbeans.modules.j2ee.deployment.devmodules.api.J2eeModule; import org.netbeans.modules.j2ee.deployment.devmodules.spi.J2eeModuleProvider; import org.netbeans.modules.j2ee.deployment.plugins.api.ServerDebugInfo; import org.netbeans.modules.j2ee.earproject.ui.customizer.EarProjectProperties; *************** *** 160,165 **** --- 161,168 ---- //EXECUTION PART if (command.equals (COMMAND_RUN) || command.equals (EjbProjectConstants.COMMAND_REDEPLOY)) { // || command.equals (COMMAND_DEBUG)) { + setDirectoryDeploymentProperty(p); + if (!isSelectedServer ()) { return null; } *************** *** 173,178 **** --- 176,183 ---- } //DEBUGGING PART } else if (command.equals (COMMAND_DEBUG)) { + setDirectoryDeploymentProperty(p); + if (!isSelectedServer ()) { return null; } *************** *** 298,304 **** --- 303,327 ---- DialogDisplayer.getDefault().notify(new NotifyDescriptor.Message(msg, NotifyDescriptor.WARNING_MESSAGE)); return false; } + + private void setDirectoryDeploymentProperty(Properties p) { + //p.setProperty("directory.deployment.supported", "false"); + String instance = updateHelper.getAntProjectHelper().getStandardPropertyEvaluator ().getProperty (EarProjectProperties.J2EE_SERVER_INSTANCE); + if (instance != null) { + J2eeModuleProvider jmp = (J2eeModuleProvider)project.getLookup().lookup(J2eeModuleProvider.class); + String sdi = jmp.getServerInstanceID(); + J2eeModule mod = jmp.getJ2eeModule(); + if (sdi != null && mod != null) { + boolean cFD = Deployment.getDefault().canFileDeploy(instance, mod); + if (cFD) { + p.setProperty("directory.deployment.supported", ""+cFD); } + } + } + } + + } Index: j2ee/ejbapi/arch/apichanges.xml *** /Volumes/300gb/nbtrunk6/j2ee/ejbapi/arch/apichanges.xml Base (1.4) --- /Volumes/300gb/nbtrunk6/j2ee/ejbapi/arch/apichanges.xml Locally Modified (Based On 1.4) *************** *** 14,20 **** "Portions Copyrighted [year] [name of copyright owner]" The Original Software is NetBeans. The Initial Developer of the Original ! Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun Microsystems, Inc. All Rights Reserved. --> --- 14,20 ---- "Portions Copyrighted [year] [name of copyright owner]" The Original Software is NetBeans. The Initial Developer of the Original ! Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. --> *************** *** 80,85 **** --- 80,101 ---- + + + Add Ant Atrifact type + + + + + +

+ Added a new AntArtifact identifier to support directory deployment of + EAR projects +

+
+ +
+ Added API method to add application client (car) module into the Ear Index: j2ee/ejbapi/src/org/netbeans/modules/j2ee/api/ejbjar/EjbProjectConstants.java *** /Volumes/300gb/nbtrunk6/j2ee/ejbapi/src/org/netbeans/modules/j2ee/api/ejbjar/EjbProjectConstants.java Base (1.9) --- /Volumes/300gb/nbtrunk6/j2ee/ejbapi/src/org/netbeans/modules/j2ee/api/ejbjar/EjbProjectConstants.java Locally Modified (Based On 1.9) *************** *** 50,53 **** --- 50,61 ---- * Constant representing an j2ee jar artifact to be packaged as a part of an ear archive. */ public static final String ARTIFACT_TYPE_J2EE_MODULE_IN_EAR_ARCHIVE = "j2ee_ear_archive"; //NOI18N + + /** + * Constant representing the build directory of a j2ee jar artifact to be + * packaged as a part of an ear archive. Used directory deploy EAR projects. + * @see org.netbeans.api.project.ant.AntArtifact + * @since 1.8 + */ + public static final String ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE = "j2ee_ear_builddir"; // NOI18N } Index: web/project/src/org/netbeans/modules/web/project/WebProject.java *** /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/WebProject.java Base (1.120) --- /Volumes/300gb/nbtrunk6/web/project/src/org/netbeans/modules/web/project/WebProject.java Locally Modified (Based On 1.120) *************** *** 845,852 **** public AntArtifact[] getBuildArtifacts() { return new AntArtifact[] { ! helper.createSimpleAntArtifact(WebProjectConstants.ARTIFACT_TYPE_WAR, "dist.war", evaluator(), "dist", "clean"), // NOI18N ! helper.createSimpleAntArtifact(WebProjectConstants.ARTIFACT_TYPE_WAR_EAR_ARCHIVE, "dist.ear.war", evaluator(), "dist-ear", "clean-ear") // NOI18N }; } --- 845,853 ---- public AntArtifact[] getBuildArtifacts() { return new AntArtifact[] { ! helper.createSimpleAntArtifact(WebProjectConstants.ARTIFACT_TYPE_WAR, WebProjectProperties.DIST_WAR, evaluator(), "dist", "clean"), // NOI18N ! helper.createSimpleAntArtifact(WebProjectConstants.ARTIFACT_TYPE_WAR_EAR_ARCHIVE, WebProjectProperties.DIST_WAR_EAR, evaluator(), "dist-ear", "clean-ear"), // NOI18N ! helper.createSimpleAntArtifact(WebProjectConstants.ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE,"build.ear.web.dir",evaluator(), "build-ear", "clean-ear"), }; } Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarProjectGenerator.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarProjectGenerator.java Base (1.27) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarProjectGenerator.java Locally Modified (Based On 1.27) *************** *** 58,64 **** import org.openide.ErrorManager; import org.openide.NotifyDescriptor; import org.openide.filesystems.FileObject; - import org.openide.filesystems.FileStateInvalidException; import org.openide.filesystems.FileUtil; import org.openide.filesystems.Repository; import org.openide.modules.SpecificationVersion; --- 58,63 ---- *************** *** 76,81 **** --- 75,82 ---- private static final String DEFAULT_DOC_BASE_FOLDER = "src/conf"; //NOI18N private static final String DEFAULT_BUILD_DIR = "build"; //NOI18N + // directory deployment support + private static final String DEFAULT_RUN_DIR = "run"; //NOI18N private static final String DEFAULT_RESOURCE_FOLDER = "setup"; //NOI18N private static final String SOURCE_ROOT_REF = "${" + EarProjectProperties.SOURCE_ROOT + "}"; //NOI18N *************** *** 510,515 **** --- 511,518 ---- ep.setProperty(EarProjectProperties.JAVAC_TARGET, srcLevel); //NOI18N ep.setProperty(EarProjectProperties.BUILD_DIR, DEFAULT_BUILD_DIR); + // directory deployment support + ep.setProperty(EarProjectProperties.RUN_DIR, DEFAULT_RUN_DIR); ep.setProperty(EarProjectProperties.BUILD_GENERATED_DIR, "${"+EarProjectProperties.BUILD_DIR+"}/generated"); // NOI18N ep.setProperty(EarProjectProperties.BUILD_CLASSES_EXCLUDES, "**/*.java,**/*.form,**/.nbattrs"); // NOI18N ep.setProperty(EarProjectProperties.NO_DEPENDENCIES, "false"); // NOI18N Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/customizer/EarProjectProperties.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/customizer/EarProjectProperties.java Base (1.28) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/ui/customizer/EarProjectProperties.java Locally Modified (Based On 1.28) *************** *** 145,150 **** --- 145,151 ---- public static final String RESOURCE_DIR = "resource.dir"; //NOI18N public static final String WEB_DOCBASE_DIR = "web.docbase.dir"; //NOI18N public static final String BUILD_DIR = "build.dir"; //NOI18N + public static final String RUN_DIR = "run.dir"; //NOI18N public static final String BUILD_GENERATED_DIR = "build.generated.dir"; //NOI18N public static final String BUILD_CLASSES_EXCLUDES = "build.classes.excludes"; //NOI18N public static final String DIST_JAVADOC_DIR = "dist.javadoc.dir"; //NOI18N *************** *** 596,601 **** --- 597,615 ---- return vcpis; } + @SuppressWarnings("unchecked") + public List getJavacClasspath() { + List vcpis = Collections.emptyList(); + Object o = properties.get(JAVAC_CLASSPATH); + if (o instanceof PropertyInfo) { + PropertyInfo pi = (PropertyInfo) o; + Object value = pi.getValue(); + assert value instanceof List : JAVAC_CLASSPATH + " is not a List: " + value.getClass(); + vcpis = (List) value; + } + return vcpis; + } + /** * Acquires modules form the earproject's metadata (properties files). */ *************** *** 645,650 **** --- 659,688 ---- List vcpis = getJarContentAdditional(); newVCPIs.addAll(vcpis); put(EarProjectProperties.JAR_CONTENT_ADDITIONAL, newVCPIs); + artifactList = new ArrayList(); + for (int i = 0; i < moduleProjects.length; i++) { + AntArtifact artifacts[] = AntArtifactQuery.findArtifactsByType( + moduleProjects[i], + EjbProjectConstants.ARTIFACT_TYPE_BUILD_DIR_EAR_ARCHIVE); //the artifact type is the some for both ejb and war projects + if (null == artifacts) { + + } + if (null != artifacts) { + artifactList.addAll(Arrays.asList(artifacts)); + } + } + // create the vcpis + newVCPIs = new ArrayList(); + //bps = (BrokenProjectSupport) earProject.getLookup().lookup(BrokenProjectSupport.class); + for (AntArtifact art : artifactList) { + VisualClassPathItem vcpi = VisualClassPathItem.createArtifact(art); + vcpi.setRaw(EarProjectProperties.JAVAC_CLASSPATH); + newVCPIs.add(vcpi); + //bps.watchAntArtifact(art); + } + vcpis = getJavacClasspath(); + newVCPIs.addAll(vcpis); + put(EarProjectProperties.JAVAC_CLASSPATH, newVCPIs); store(); } Index: j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/resources/build-impl.xsl *** /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/resources/build-impl.xsl Base (1.13) --- /Volumes/300gb/nbtrunk6/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/resources/build-impl.xsl Locally Modified (Based On 1.13) *************** *** 14,20 **** "Portions Copyrighted [year] [name of copyright owner]" The Original Software is NetBeans. The Initial Developer of the Original ! Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun Microsystems, Inc. All Rights Reserved. --> + + + + + + + + + + + + + + + + + + +
*************** *** 1064,1069 **** --- 1083,1111 ---- + + + init,compile,-pre-dist + + + + + + + + + init,compile,-pre-dist + + + + + + + + + + init,compile,-pre-dist has.custom.manifest *************** *** 1089,1094 **** --- 1131,1141 ---- + + + init,compile,-pre-dist,library-inclusion-in-manifest + + init,compile,-pre-dist,library-inclusion-in-manifest,-do-ear-dist-without-manifest,-do-ear-dist-with-manifest *************** *** 1115,1121 **** ! dist,run-deploy,run-tool,run-jar,run-display-browser Run a main class. --- 1162,1168 ---- ! run-deploy,run-tool,run-jar,run-display-browser Run a main class. *************** *** 1201,1207 **** ! init,compile,dist,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy --- 1248,1254 ---- ! init,compile,-package-without-manifest,-package-with-manifest,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy Index: j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/BrokenProjectSupport.java *** /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/BrokenProjectSupport.java Base (1.3) --- /Volumes/300gb/nbtrunk6/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/BrokenProjectSupport.java Locally Modified (Based On 1.3) *************** *** 13,19 **** * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun * Microsystems, Inc. All Rights Reserved. */ --- 13,19 ---- * "Portions Copyrighted [year] [name of copyright owner]" * * The Original Software is NetBeans. The Initial Developer of the Original ! * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun * Microsystems, Inc. All Rights Reserved. */ *************** *** 118,124 **** --- 118,140 ---- } } } + // directory deployment of ear projects gets references to the build + // directories. These need to get adjusted, too. + // + for (VisualClassPathItem vcpi : project.getProjectProperties().getJavacClasspath()) { + if (vcpi.getObject() instanceof AntArtifact) { + String raw = vcpi.getRaw(); + if (raw.matches("^\\$\\{reference\\..*\\}")) { // NOI18N + String currEvaluated = project.evaluator().evaluate(raw); + FileObject currEvaluatedFO = project.getAntProjectHelper().resolveFileObject(currEvaluated); + if (currEvaluatedFO == null) { + String referenceKey = raw.substring(2, raw.length() - 1); // without $ and curly brackets // NOI18N + adjustReference(vcpi, referenceKey); } + } + } + } + } }); } Index: web/webapi/manifest.mf *** /Volumes/300gb/nbtrunk6/web/webapi/manifest.mf Base (1.11) --- /Volumes/300gb/nbtrunk6/web/webapi/manifest.mf Locally Modified (Based On 1.11) *************** *** 1,5 **** Manifest-Version: 1.0 OpenIDE-Module: org.netbeans.api.web.webmodule ! OpenIDE-Module-Specification-Version: 1.8 OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/web/webmodule/Bundle.properties --- 1,5 ---- Manifest-Version: 1.0 OpenIDE-Module: org.netbeans.api.web.webmodule ! OpenIDE-Module-Specification-Version: 1.9 OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/web/webmodule/Bundle.properties Index: serverplugins/sun/appsrvbridge/nbproject/build-impl.xml *** /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/nbproject/build-impl.xml Base (1.7) --- /Volumes/300gb/nbtrunk6/serverplugins/sun/appsrvbridge/nbproject/build-impl.xml Locally Modified (Based On 1.7) *************** *** 19,25 **** - cleanup --> ! ! + + + Add Ant Atrifact type + + + + + +

+ Added constant for a new AntArtifact type to support directory + deployment of ear projects. +

+
+ +
Adding getServletPath method for framework providers Index: j2eeserver/src/org/netbeans/modules/j2ee/deployment/config/ConfigSupportImpl.java *** /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/config/ConfigSupportImpl.java Base (1.50) --- /Volumes/300gb/nbtrunk6/j2eeserver/src/org/netbeans/modules/j2ee/deployment/config/ConfigSupportImpl.java Locally Modified (Based On 1.50) *************** *** 723,728 **** --- 723,729 ---- public J2eeModule getJ2eeModule(String moduleUri) { if (j2eeModule instanceof J2eeApplication) { + if (null != moduleUri) { for (J2eeModule childModule : ((J2eeApplication) j2eeModule).getModules()) { if (childModule.getUrl().equals(moduleUri)) { return childModule; *************** *** 730,736 **** --- 731,741 ---- } // TODO child module was not found return null; + } else { + // TODO child module was not found + return j2eeModule; } + } return j2eeModule; }