java:comp/env is the default namespace defined by JNDI. The call to lookup() with this as an argument is returning an instance of a context corresponding to that namespace, which you need to do a further lookup for your specific resource.

On a related note, I'm pretty sure you could condense all the code you have to just one line, something like:

DataSource ds = (DateSource)new InitialContext().lookup("java:comp/env/jdbc/wms")

I'm fairly certain that works.  That might be clearer to you.

--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com

Eric Wulff wrote:
helpful somewhat...  at least in helping me narrow my question.  So
what is this "java:comp/env"?  What exactly is being returned based on
this string passed to lookup()?

Eric


On Sat, 06 Nov 2004 23:35:34 -0500, Frank W. Zammetti <[EMAIL PROTECTED]> wrote:

I'll give it a shot...

All JNDI resource lookups occur relative to some context.  The code you
posted first gets the default initial context, then looks for a resource
named "java:comp/env" relative to that default context.  It then gets a
reference to a DataSource that exists within the context "jdbc/wms"
relative to "java:comp/env"

You can ROUGHLY think of this the same way you do URLs... in a sense,
the "java:comp/env" might be something like www.apache.org.  That gives
you a starting context.  Then if you want to retrieve a particular file
in that domain, you look it up relative to the domain (i.e.,
www.apache.org/tomcat.htm).

Same thing here... There is a hierarchy of JNDI resources, a tree
structure, that has an initial context as the root.  You then are in a
sense constructing a path to your DataSource, and it might look
something like /initial_context/java:comp/env/jdbc/wms (not exactly, but
you get the idea).

Does that help any?

--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com



Eric Wulff wrote:

I just returned from working on a tutorial at sun which I was inspired
to go over based on my lack of understanding of the code snippet
below.  I'm trying to fully understand what's going on.  Docs state
that the code...

initialContext.lookup("java:comp/env")

returns a named object.  Best I can tell is that this is a reference
to a starting point in my directory... or something like that.  Is
anyone willing to explain what initialContext.lookup() fundamentally
takes care of when called?

Context initialContext = new InitialContext();
Context context = (Context) initialContext.lookup("java:comp/env");
DataSource dataSource = (DataSource) context.lookup("jdbc/wms");

thx
Eric

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




.


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]










--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to