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.

Bug 61638 - unable to start appserver 8
Summary: unable to start appserver 8
Status: CLOSED FIXED
Alias: None
Product: serverplugins
Classification: Unclassified
Component: Infrastructure (show other bugs)
Version: 5.x
Hardware: All All
: P1 blocker (vote)
Assignee: Pavel Buzek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-08-02 09:37 UTC by Jan Horvath
Modified: 2006-05-10 06:57 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Horvath 2005-08-02 09:37:11 UTC
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
Comment 1 Jan Horvath 2005-08-02 11:58:04 UTC
tested with Sun Java System Application Server Platform Edition 8.1_02 (build b08-fcs)
Comment 2 _ ludo 2005-08-02 12:43:13 UTC
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.
Comment 3 _ ludo 2005-08-02 12:55:07 UTC
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)


Comment 4 Sherold Dev 2005-08-02 13:13:26 UTC
Ludo, can't you just pick the username and password from the InstanceProperties?
Comment 5 Pavel Buzek 2005-08-02 13:51:04 UTC
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.
Comment 6 _ ludo 2005-08-02 15:02:18 UTC
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)
Comment 7 Pavel Buzek 2005-08-02 15:43:38 UTC
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.
Comment 8 _ ludo 2005-08-02 15:47:11 UTC
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?

Comment 9 Jan Horvath 2005-11-04 14:41:30 UTC
v.
Comment 10 pcmreddy 2006-05-10 06:57:11 UTC
This is appserver 9 specific problem.
not appserver 8.1 issue. Will file another issue.