File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Tomcat and the fly likes MBean InitialContext() Tomcat query- what is the relation Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Products » Tomcat
Bookmark "MBean InitialContext() Tomcat query- what is the relation" Watch "MBean InitialContext() Tomcat query- what is the relation" New topic
Author

MBean InitialContext() Tomcat query- what is the relation

Ravi Gupt
Greenhorn

Joined: Oct 16, 2007
Posts: 17
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
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 16303
    
  21

MBeans are not intended to contain application logic, so I'm not surprised that their classpath doesn't include all the resource you want.

MBeans are expected to be paired with actual functional beans, and that is where things like database logic and JNDI referencing should be happening.

MBeans are the interface for monitoring and control of the functional beans.

BTW, HOW did you manage to create 4 copies of your question in under 2 minutes? Is there a bug in out software?


Customer surveys are for companies who didn't pay proper attention to begin with.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: MBean InitialContext() Tomcat query- what is the relation