[JBoss-dev] AbstractKernelController behavior inconsistent

Anil Saldhana anil.saldhana at jboss.com
Wed Aug 23 10:53:03 EDT 2006


http://www.jboss.com/index.html?module=bb&op=viewtopic&t=89066

What about getting the ServiceController to get out of the Error state
and undeploy the service when asked to?

I will take a look at the deployment tests.

-----Original Message-----
From: jboss-development-bounces at lists.jboss.org
[mailto:jboss-development-bounces at lists.jboss.org] On Behalf Of Adrian
Brock
Sent: Wednesday, August 23, 2006 7:34 AM
To: JBoss.org development list
Subject: Re: [JBoss-dev] AbstractKernelController behavior inconsistent

The behaviour is not "inconsistent".
In fact, it is more consistent now.

In the past, invoking "start" never actually guaranteed
the service started. It would only actually do the
start() if all the dependencies were satisfied.
Later you might actually get the start when the correct
dependency is added.

In fact, the code you show didn't even work properly
until less than 2 years ago when I made it redirect
through the service controller (under the hood 
in ServiceMBeanSupport).

Now with the introduction of the MC,
everything is done consistently.

Your code should be (and always should have been
if you want things to work properly)

ServiceController.start(ObjectName);

followed by

ServiceController.getServiceContext(ObjectName)

to check what state it is actually in,
i.e. dependencies satisfied, the error/problem, etc.

See the deployment tests, that I wrote when I was fixing
all this a while ago, if you want to see the correct
pattern in more detail.

On Sat, 2006-08-19 at 15:04 -0500, Anil Saldhana wrote:
> Hi,
>    There seems to be an inconsistent behavior in the
> AbstractKernelController.
> 
> My test case code:
> 
>
========================================================================
> =
> prepareTestDynamicLoginConfig(server, 
>             new ObjectName("jboss:service=TestDynamicLoginConfig"),
> null);
>       try
>       {
>          server.invoke(serviceOName,"create", new Object[0], new
> String[0]); 
>          server.invoke(serviceOName,"start", new Object[0], new
> String[0]);
>          fail("Service should not have started");
>       }
>       catch(Throwable t)
>       {
>          log.debug("Service has rightly disagreed to start",t); 
>       }
>
========================================================================
> Is failing now because the MC instead of throwing an exception(unable
to
> start a service), is only logging the error as follows:
> 
> ------------------------------------------------------------------
> 14:50:19,015 ERROR [AbstractKernelController] Error installing to
Start:
> name=jb
> oss:service=TestDynamicLoginConfig state=Create mode=Manual
> requiredState=Installed
> java.lang.IllegalStateException: AuthConfig is defaulting to
> conf/login-config.xml. Please check your archive.
>         at
> org.jboss.security.auth.login.DynamicLoginConfig.validateAuthConfigUR
> L(DynamicLoginConfig.java:271)
>         at
> org.jboss.security.auth.login.DynamicLoginConfig.startService(Dynamic
> LoginConfig.java:219)
>         at
> org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanS
> upport.java:289)
>         at
> org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMB
> eanSupport.java:245)
>         at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>         ...
> 
>
...org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
> java:264)
>         at
> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
>         at
> org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java
> :167)
>         at $Proxy0.start(Unknown Source)
>         at
> org.jboss.system.microcontainer.StartStopLifecycleAction.installActio
> n(StartStopLifecycleAction.java:42)
>         at
> org.jboss.system.microcontainer.ServiceControllerContextAction.instal
> l(ServiceControllerContextAction.java:46)
>         at
> org.jboss.dependency.plugins.AbstractControllerContextActions.install
> (AbstractControllerContextActions.java:51)
>         at
> org.jboss.dependency.plugins.AbstractControllerContext.install(Abstra
> ctControllerContext.java:226)
> -----------------------------------------------------------------
> 
> Please advice on this inconsistent behavior.
> 
> Regards,
> Anil
> 
> _______________________________________________
> jboss-development mailing list
> jboss-development at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-development
-- 
xxxxxxxxxxxxxxxxxxxxxxxxxxx
Adrian Brock
Chief Scientist
JBoss a division of Red Hat
xxxxxxxxxxxxxxxxxxxxxxxxxxx

_______________________________________________
jboss-development mailing list
jboss-development at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-development




More information about the jboss-development mailing list