Hi,

I created and deployed an MBean in my tomcat. It uses datasource to connect
to DB.

My questions is:

When I create InitialContext() inside MBean's constructor and pass the
envContext to DBManager class to lookup datasource it works fine. However
when I create InitialContext() in DBManager  class, it fails.

Is it necessary to create InitialContext() during loading of MBean (either
in ContextListener class  or inside MBean constructor).

When I did new InitialContext() in  my DBManager class which is called from
hello method of MBean it failed with below exception:

avax.naming.NoInitialContextException: Cannot instantiate class:
org.apache.naming.java.javaURLContextFactory [Root exception is
java.lang.ClassNotFoundException:
org.apache.naming.java.javaURLContextFactory]

I invoked hello method of MBean from JConsole.


Please let me know is it Tomcat specific? or same behavior is seen across
all app servers. Also, What difference does it make if I create
InitialContext inside MBean's constructor or in some other class at a later
point of time.

Thanks
Ravi

Reply via email to