I seem to be having an issue :)

I tried the code you provided and did this.

I am getting a null pointer when I ask for service.  Also if I do
server.findServices() to get a list of all of them I get nothing back.
 This is from withing a Servlet to test getting these objects.

    //See if we can get the container object
    Server server = ServerFactory.getServer();
    Service service = server.findService("Catalina");
    //Next line gets NULL Pointer, because service is not found
    Engine engine = (Engine) service.getContainer();
    Host host = (Host) engine.findChild(engine.getDefaultHost());
    Container[] containers = host.findChildren();
    for (int i = 0; i < containers.length; i++) {
      Container container = containers[i];
      out.println("<!-- Found Container::"+container.getName());
    }



On Thu, 14 Oct 2004 11:14:31 -0400, Shapira, Yoav <[EMAIL PROTECTED]> wrote:
> 
> Hi,
> I've posted this a number of times in the past on the list, so you can
> STFA.  To summarize, you'd do something like this (most of these classes
> are in the org.apache.catalina package):
> 
> Server server = ServerFactory.getServer();
> Service service = server.findService("Catalina");
> Engine engine = (Engine) service.getContainer();
> Host host = (Host) engine.findChild(engine.getDefaultHost());
> Context context = (Context) host.findChild("myContext");
> Realm realm = context.getRealm();
> 
> I'm using the default service name of "Catalina" above: it should match
> what's in your server.xml.  I'm also using "myContext" as a dummy:
> obviously that should match your webapp name.  And finally, I'm getting
> the Realm from the context, because that's what you asked for, but in
> reality the Realm (or another realm) may be associated with the Host or
> Engine as well.  So take the above code and modify it to your needs.
> 
> As always, I caution you and everyone else to not use Tomcat-specific
> (or container-specific in general) code unless absolutely necessary.
> Make your app as portable as possible.  There's almost no conceivable
> good use-case for needing the actual Realm object in your webapp.
> 
> Yoav Shapira http://www.yoavshapira.com
> 
> 
> 
> 
> >-----Original Message-----
> >From: Chris Forbis [mailto:[EMAIL PROTECTED]
> >Sent: Thursday, October 14, 2004 11:02 AM
> >To: Tomcat Developers List
> >Subject: Re: How to get context realm from servlet and filter.
> >
> >Quick follow-up to your post.
> >
> >I understand what you are saying.  But I am not sure how to get access
> >to the Container, can you point me in the correct direction?
> >
> >Thanks!
> >
> >
> >On Thu, 14 Oct 2004 08:43:23 -0400, Shapira, Yoav
> <[EMAIL PROTECTED]>
> >wrote:
> >>
> >> Hi,
> >> A Realm is associated with a Container, not necessarily a Context, so
> >> the method is appropriately placed in the Container interface, a
> parent
> >> of the Context interface.  Obviously all this is not part of the
> Servlet
> >> API, so you'll have to write Tomcat-specific code to get it.
> >>
> >> Yoav Shapira http://www.yoavshapira.com
> >>
> >>
> >> >-----Original Message-----
> >> >From: Chris Forbis [mailto:[EMAIL PROTECTED]
> >> >Sent: Wednesday, October 13, 2004 6:24 PM
> >> >To: tomcat-dev
> >> >Subject: How to get context realm from servlet and filter.
> >> >
> >> >I am trying to get the current contexts realms from a servlet (and
> >> >maybe a filter).  I do not see a getContext().getRealm() method.  So
> I
> >> >am guessing there is another way to get to this, but I do not see
> it.
> >> >
> >> >Can any one provide some quick direction to me on this.  Thank you!
> >> >
> >> >Chris
> >> >
> >>
> >---------------------------------------------------------------------
> >> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >> This e-mail, including any attachments, is a confidential business
> >communication, and may contain information that is confidential,
> >proprietary and/or privileged.  This e-mail is intended only for the
> >individual(s) to whom it is addressed, and may not be saved, copied,
> >printed, disclosed or used by anyone else.  If you are not the(an)
> intended
> >recipient, please immediately delete this e-mail from your computer
> system
> >and notify the sender.  Thank you.
> >>
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> 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]
> 
> This e-mail, including any attachments, is a confidential business communication, 
> and may contain information that is confidential, proprietary and/or privileged.  
> This e-mail is intended only for the individual(s) to whom it is addressed, and may 
> not be saved, copied, printed, disclosed or used by anyone else.  If you are not 
> the(an) intended recipient, please immediately delete this e-mail from your computer 
> system and notify the sender.  Thank you.
> 
>

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

Reply via email to