diff --git a/j2ee.jboss4/src/org/netbeans/modules/j2ee/jboss4/ide/JBStopRunnable.java b/j2ee.jboss4/src/org/netbeans/modules/j2ee/jboss4/ide/JBStopRunnable.java --- a/j2ee.jboss4/src/org/netbeans/modules/j2ee/jboss4/ide/JBStopRunnable.java +++ b/j2ee.jboss4/src/org/netbeans/modules/j2ee/jboss4/ide/JBStopRunnable.java @@ -53,6 +53,7 @@ import org.netbeans.modules.j2ee.deployment.plugins.api.InstanceProperties; import org.netbeans.modules.j2ee.jboss4.JBDeploymentManager; import org.netbeans.modules.j2ee.jboss4.ide.ui.JBPluginProperties; +import org.netbeans.modules.j2ee.jboss4.ide.ui.JBPluginUtils; import org.netbeans.modules.j2ee.jboss4.util.JBProperties; import org.openide.execution.NbProcessDescriptor; import org.openide.filesystems.FileObject; @@ -119,6 +120,22 @@ startServer.fireHandleProgressEvent(null, new JBDeploymentStatus(ActionType.EXECUTE, CommandType.STOP, StateType.FAILED, NbBundle.getMessage(JBStopRunnable.class, "MSG_STOP_SERVER_FAILED_FNF", serverName)));//NOI18N return; } + + String jnpPort = JBPluginUtils.getJnpPort(ip.getProperty(JBPluginProperties.PROPERTY_SERVER_DIR)); + String jnpPortParam = ""; + if(jnpPort != null && (jnpPort = jnpPort.trim()).length() >= 1) { + int jnpPortValue; + try { + jnpPortValue = Integer.parseInt(jnpPort); + } catch(NumberFormatException e) { + jnpPortValue = -1; + } + + if(jnpPortValue > 0 && jnpPortValue < 65536) { + jnpPortParam = + " -s jnp://localhost:" + Integer.toString(jnpPortValue).trim() + " "; + } + } JBProperties properties = dm.getProperties(); StringBuilder credentialsParams = new StringBuilder(32); @@ -131,7 +148,8 @@ /* 2008-09-10 The usage of --halt doesn't solve the problem on Windows; it even creates another problem of NB Profiler not being notified about the fact that the server was stopped */ - NbProcessDescriptor pd = new NbProcessDescriptor(serverStopFileName, "--shutdown " + credentialsParams); // NOI18N + NbProcessDescriptor pd = new NbProcessDescriptor(serverStopFileName, + "--shutdown " + jnpPortParam + credentialsParams); // NOI18N Process stoppingProcess = null; try {