This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
build 200508011800 -start ide with clean userdir -in runtime tab add appserver -start appserver --Error: The Sun Application Server 8.1 could not start... --Appserver is started, but ide doesn't recognize it tested on solaris and linux
tested with Sun Java System Application Server Platform Edition 8.1_02 (build b08-fcs)
Regression in j2eeserver. Now it seems it calls getdisconnectDeploymentmanager(). This api does not give our plugin the info about username and password. We we start the server, we need this info implement the isRunning() API because in it, we test the getTarget() to see if the server which is up is really a sun app server. Nobody in j2eeserver is calling again the plugin with a connectedDeploymentManager, so the plugin always returns false for isRunning.... Chicken/egg pb with a bad 88 spec... The life cycle calls between getdiconnectdM(), sttart server, test if server is running, and get a connectedDM is not good anymore. It was ok in AS plugin unitl Pavel changed 2 days ago the j2eeserver for JBoss needs, without testing with the AS plugin. So currently it's a regression. I would prefer to rollback to the old code unitl the lifle cycle nightmare is really specified and fiexe.
To be more precise, our current AS 8 impl of isRunning() needs the username/password info to make sure we talk to the correct server (ping on mchinename/port number is not enough, because if tomcat or jboss or oracle are running on this port, the AS plugin needs to know that: it does not mean the AS is running!!) This username value is available only on a connectedDM... I guess the logic of calls changed in j2eeserver. Currenlty, our isRunning() will always return false when we have only a disconnedDM... So more spec is needed or more info needs to be available by the plugin at anytime (i.e username, password, even in the case of a disconnected DM)
Ludo, can't you just pick the username and password from the InstanceProperties?
I am sorry I caused a regression, I will work on fixing it. On the other hand, disconnected DeploymentManager is in JSR88 for a reason and the fact we were using connected manager and hoping it will work is a bug in j2eeserver (issue 57166). If I cannot fix it immediately I will rollback the change temporarilly but ultimately it is sun app server plugin that needs to be fixed.
The AS 8 or 9 plugin could do a String user = (String)InstanceProperties.getInstanceProperties(uri).getProperty("username"); String password = (String)InstanceProperties.getInstanceProperties(uri).getProperty("password"); in the disconnectedManager call, but at this point of time, the registry is not completely initialized and the call to InstanceProperties.getInstanceProperties(uri) returns null... See the stack trace for AS9: INFORMATIONAL *********** Exception occurred ************ at 6:47 AM on Aug 2, 2 005 java.lang.NullPointerException at org.netbeans.modules.j2ee.sun.appsrv9.ide.dm.SunDeploymentFactory.get DisconnectedDeploymentManager(SunDeploymentFactory.java:93) at org.netbeans.modules.j2ee.sun.appsrv9.ide.Installer90$FacadeDeploymen tFactory.getDisconnectedDeploymentManager(Installer90.java:205) [catch] at org.netbeans.modules.j2ee.deployment.impl.Server.getDisconnectedDeplo ymentManager(Server.java:139) at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry.addInstanceI mpl(ServerRegistry.java:319) at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry.addInstance( ServerRegistry.java:345) at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry.init(ServerR egistry.java:91) at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry.instancesMap (ServerRegistry.java:101) at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry.getInstanceU RLs(ServerRegistry.java:177) at org.netbeans.modules.j2ee.deployment.plugins.api.InstanceProperties.g etInstanceList(InstanceProperties.java:145) at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.getSer verInstanceIDs(Deployment.java:183) at org.netbeans.modules.websvc.registry.netbeans.WebServiceModuleInstall er.updatesSecialLoader(WebServiceModuleInstaller.java:93) at org.netbeans.modules.websvc.registry.netbeans.WebServiceModuleInstall er.restoreds(WebServiceModuleInstaller.java:80) at org.netbeans.modules.websvc.registry.netbeans.WebServiceModuleInstall er.restored(WebServiceModuleInstaller.java:42) at org.netbeans.core.startup.NbInstaller.loadCode(NbInstaller.java:323) at org.netbeans.core.startup.NbInstaller.load(NbInstaller.java:239) at org.netbeans.ModuleManager.enable(ModuleManager.java:869) at org.netbeans.core.startup.ModuleList.installNew(ModuleList.java:383) at org.netbeans.core.startup.ModuleList.trigger(ModuleList.java:317) at org.netbeans.core.startup.ModuleSystem.restore(ModuleSystem.java:242) at org.netbeans.core.startup.Main.getModuleSystem(Main.java:212)
Ludo: yeah, I tried that too ;-) Anyway, I revereted the change in j2eeserver. Weblogic is broken again, but sun plugin works. We need to work on fixing sun plugin now so that isRunning would work on disconnected manager.
Well we really need to specify what can be called when... The registry should be fully initialized before the plugin can call it... Calling it when it is being constructed has nasty side effects... Chicken/egg as usual. Poor life cylce design (includng in 88 itself whcih does not deal with start/stop cycles). When/who is supposed to switch from a disconnect dm to a connected one?
v.
This is appserver 9 specific problem. not appserver 8.1 issue. Will file another issue.