Frank, Yeah, that was the one hack that came to mind yesterday. It would definitely work. If there is no alternative that is what I will have to do. But I am hoping that the Struts gurus have a better answer in their pocket.
Thanks. --Marty --- [EMAIL PROTECTED] wrote: > Just thinking out loud here, but... > > What if from your plug-in you spawn a thread that will: > > (1) Wait a few second, to allow the app to otherwise initialize > completely > (2) Make a request to a special Action that will do the rest of the > initialization that requires the URL (should be able to do > http://localhost/myapp) > (3) Die > > I do something similar for database initialization... I spaw a thread > from the plug-in, wait a few seconds, then make a call to my database > connection manager class, which has the effect of creating the > connection pool. This way I know it's done before the first request > comes in. Similar kind of idea. > > -- > Frank W. Zammetti > Founder and Chief Software Architect > Omnytex Technologies > http://www.omnytex.com > > On Wed, January 26, 2005 10:12 am, Martin Wegner said: > > David, > > > > My Struts app contains an Axis-based SOAP service. The Struts app > > initializes the call dispatcher for the SOAP service. This dispatcher > > needs to know the URL of itself. This is a requirement of the > semantics > > of the SOAP service (outside of my control). So a Listener or a Plug > In > > appear to be the only way to try to determine the URL before the SOAP > > service is open for business. > > > > Thanks. > > > > > > --Marty > > > > --- David Suarez <[EMAIL PROTECTED]> wrote: > > > >> Is your plug-in a 3rd party type component? What is the purpose of > >> obtaining the URL? Maybe there's a suitable alternative depending on > >> your requirements (ie. A Filter that would instantiate the objects > you > >> need to populate on the first request? A base action that lazy loads > >> your config stuff?) > >> > >> Just a thought...djsuarez > >> > >> -----Original Message----- > >> From: Martin Wegner [mailto:[EMAIL PROTECTED] > >> Sent: Wednesday, January 26, 2005 12:18 AM > >> To: Struts Users Mailing List; Dakota Jack > >> Subject: Re: PlugIn and the base URL > >> > >> > >> I am looking for the: > >> > >> http://blahblahblah.com:8080/AppName/ > >> > >> As Craig said I can get that if I have a Request object. But from a > >> PlugIn I don't have that. I can think of some ugly hacks but nothing > >> clean. > >> > >> > >> --Marty > >> > >> --- Dakota Jack <[EMAIL PROTECTED]> wrote: > >> > >> > Do you want the URL or the Internet Protocol address? I have some > >> > ideas on the latter. > >> > > >> > Jack > >> > > >> > > >> > On Tue, 25 Jan 2005 21:05:30 -0800 (PST), Martin Wegner > >> > <[EMAIL PROTECTED]> wrote: > >> > > Jack, > >> > > > >> > > That tells me where the JAR files are stored which is cool. But > >> what > >> > I am > >> > > looking for a valid URL (of which there may be many) to access my > >> > given > >> > > web application. This info has to come from the container which > may > >> > be > >> > > the problem. I don't see anything in the container standard > which > >> > > provides this info. > >> > > > >> > > Any other ideas? > >> > > > >> > > --Marty > >> > > > >> > > --- Dakota Jack <[EMAIL PROTECTED]> wrote: > >> > > > >> > > > Not sure what you want. Does this help? > >> > > > > >> > > > package whatever; > >> > > > > >> > > > import java.io.File; > >> > > > import java.net.URL; > >> > > > > >> > > > public final class Classpath { > >> > > > public static final String SLASH = File.separator; > >> > > > public static final String HERE = > >> > > > Classpath.class.getClassLoader().getResource("whatever" + SLASH > + > >> > > > > >> > > > "Classpath.class").getFile(); > >> > > > } > >> > > > > >> > > > > >> > > > On Tue, 25 Jan 2005 19:25:21 -0800 (PST), Martin Wegner > >> > > > <[EMAIL PROTECTED]> wrote: > >> > > > > > >> > > > > As far as I can tell the attributes offer no insight. I have > >> yet > >> > to > >> > > > find > >> > > > > a way to get to the container from within a PlugIn. But I > will > >> > keep > >> > > > > looking. Using an initParam is not an option in this > >> application. > >> > > > > > >> > > > > --Marty > >> > > > > > >> > > > > --- "Frank W. Zammetti" <[EMAIL PROTECTED]> wrote: > >> > > > > > >> > > > > > The OP was looking for a way to construct the entire path. > I > >> > too > >> > > > got as > >> > > > > > > >> > > > > > far as ServletContext, but I'm not sure what in it would > give > >> > you > >> > > > that, > >> > > > > > or even all the pieces to constuct it... Maybe > getAttribute()? > >> > >> > I'm > >> > > > not > >> > > > > > sure what it will return, although you can use > >> > getAttributeNames() > >> > > > to > >> > > > > > see. The Javadocs indicates the attributes are > >> > container-specific > >> > > > > > though, so I'm not sure he'd want to use that anyway. > >> > > > > > > >> > > > > > This is just a matter of curiosity for me at this point, I > >> long > >> > ago > >> > > > > > solved this problem another way. I'd like to know how to > do > >> it > >> > > > though. > >> > > > > > > >> > > > > > -- > >> > > > > > Frank W. Zammetti > >> > > > > > Founder and Chief Software Architect > >> > > > > > Omnytex Technologies > >> > > > > > http://www.omnytex.com > >> > > > > > > >> > > > > > > >> > > > > > Jim Barrows wrote: > >> > > > > > > On Tue, 25 Jan 2005 18:37:29 -0500, Frank W. Zammetti > >> > > > > > > <[EMAIL PROTECTED]> wrote: > >> > > > > > > > >> > > > > > >>I seem to remember trying to solve this problem myself > and > >> > coming > >> > > > to > >> > > > > > the > >> > > > > > >>conclusion that there was no way to do it independent of > a > >> > > > request. I > >> > > > > > >>wound up just sticking it in my application config file > that > >> > gets > >> > > > read > >> > > > > > >>in the plugin anyway. Can anyone prove me wrong? :) > >> > > > > > > > >> > > > > > > > >> > > > > > > Your looking for the application context correct? > >> > > > > > > In the init you are passed the ActionServlet, which > inherits > >> > from > >> > > > > > > HttpServlet, which will give you the ServletContext. > IIRC > >> you > >> > can > >> > > > get > >> > > > > > > the context from there. > >> > > > > > > > >> > > > > > > > >> > > > > > >>-- > >> > > > > > >>Frank W. Zammetti > >> > > > > > >>Founder and Chief Software Architect > >> > > > > > >>Omnytex Technologies > >> > > > > > >>http://www.omnytex.com > >> > > > > > >> > >> > > > > > >>Martin Wegner wrote: > >> > > > > > >> > >> > > > > > >>>In have a Struts PlugIn that needs to determine the URL > for > >> > the > >> > > > > > containing > >> > > > > > >>>web application (http://localhost:8080/BlahBlahBlah/). > I > >> am > >> > > > unable > >> > > > > > to > >> > > > > > >>>find a way to determine this information. Any ideas? > >> > > > > > >>> > >> > > > > > >>>Thanks. > >> > > > > > >>> > >> > > > > > >>> > >> > > > > > >>>--Marty > >> > > > > > >>> > >> > > > > > >>> > >> > > > > > > >> > > > > >> > > >> > >>>--------------------------------------------------------------------- > >> > > > > > >>>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] > >> > > > > > >> > >> > > > > > >> > >> > > > > > > > >> > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > -- > >> > > > > > Frank W. Zammetti > >> > > > > > Founder and Chief Software Architect > >> > > > > > Omnytex Technologies > >> > > > > > http://www.omnytex.com > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > >> > > --------------------------------------------------------------------- > >> > > > > > 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] > >> > > > > > >> > > > > > >> > > > > >> > > > > >> > > > -- > >> > > > ------------------------------ > >> > > > > >> > > > "You can lead a horse to water but you cannot make it float on > its > >> > > > back." > >> > > > > >> > > > ~Dakota Jack~ > >> > > > > >> > > > "You can't wake a person who is pretending to be asleep." > >> > > > > >> > > > ~Native Proverb~ > >> > > > > >> > > > "Each man is good in His sight. It is not necessary for eagles > to > >> be > >> > > > crows." > >> > > > > >> > > > ~Hunkesni (Sitting Bull), Hunkpapa Sioux~ > >> > > > > >> > > > ----------------------------------------------- > >> > > > > >> > > > "This message may contain confidential and/or privileged > >> > information. > >> > > > If you are not the addressee or authorized to receive this for > the > >> > > > addressee, you must not use, copy, disclose, or take any action > >> > based > >> > > > on this message or any information herein. If you have received > >> this > >> > > > message in error, please advise the sender immediately by reply > >> > e-mail > >> > > > and delete this message. Thank you for your cooperation." > >> > > > > >> > > > > >> > > --------------------------------------------------------------------- > >> > > > 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] > >> > > > >> > > > >> > > >> > > >> > -- > >> > ------------------------------ > >> > > >> > "You can lead a horse to water but you cannot make it float on its > >> > back." > >> > > >> > ~Dakota Jack~ > >> > > >> > "You can't wake a person who is pretending to be asleep." > >> > > >> > ~Native Proverb~ > >> > > >> > "Each man is good in His sight. It is not necessary for eagles to > be > >> > crows." > >> > > >> > ~Hunkesni (Sitting Bull), Hunkpapa Sioux~ > >> > > >> > ----------------------------------------------- > >> > > >> > "This message may contain confidential and/or privileged > information. > >> > If you are not the addressee or authorized to receive this for the > >> > addressee, you must not use, copy, disclose, or take any action > based > >> > on this message or any information herein. If you have received > this > >> > message in error, please advise the sender immediately by reply > e-mail > >> > and delete this message. Thank you for your cooperation." > >> > > >> > > --------------------------------------------------------------------- > >> > 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]