public class ClassLoaderHelper { public static Class forName(String name) throws ClassNotFoundException {
ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); return contextClassLoader == null ? Class.forName(name) : Class.forName(name, true, contextClassLoader); } } ----- Original Message ----- From: "Mike Dunbar" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, June 04, 2002 6:47 AM Subject: Re: Uniform Environment/Property Access for EJBs and Non-EJBs > Now, *this* solution I really like. Can you point me to any sample code > or other documents for this? > > Thanks, > Mike > > --- Johan Eltes <[EMAIL PROTECTED]> wrote: > > If you are happy with the functionality/service provided by env > > entries, > > then I would use property files or xml files. The files could be > > loaded > > using the thread context class loader and packaged into the jar > > containing > > your business logic classes (also if that is actually the ejb-jar). > > Some > > none-j2ee-environments (like tomcat) do not set up a thread context > > class > > loader in a way that you can load resources the "j2ee"-way. A > > possible > > work-around is to implement a classloader helper-class that tries to > > load > > the resource from the thread context classloader (which would work > > for j2ee > > application servers and main classes started as a standard runnable > > jar by > > Suns VM). If the resource is not found, the class loader helper could > > try > > the application classloader (which would work for Tomcat). > > > > /johan > > > > Den 02-06-03 17.44, skrev "Mike Dunbar" <[EMAIL PROTECTED]>: > > > > > Hello, > > > I am wondering if some of you have already fought this battle and > > could > > > help me out before I do my own brainstorming. Basically, we don't > > want > > > to "hard-code" our business logic components into the EJB model. We > > > would like to develop the core components in plain ol' Java and > > > "wrap"/deploy them as EJBs when it makes sense. Basically, the EJB > > > would just delegate to the "wrapped" Java component. Sounds simply > > > enough, right? > > > > > > The part I need help with is: how to give the components access to > > > configurable properties in a way that works both when they are > > deployed > > > as an EJB, and when they are not deployed as an EJB? The most > > straight > > > forward way would seem to be putting such properties a Java > > properties > > > file, but I believe EJBs are not allowed to do file I/O - right? I > > > think EJBs usually get such information from JNDI entries specified > > > in the EJB's deployment descriptor as <env-entry>'s. Is there a > > uniform > > > mechanism that will work both when the components are deploy as > > EJBs > > > and when they are not? For example, maybe the components could > > always > > > access the properties via JNDI. Sometimes an application server > > would > > > have put them there (when deployed as an EJB), sometimes they > > would've > > > got there via another mechanism (when they are not deployed as an > > EJB). > > > But, I've heard that JNDI lookup's give pretty bad performance. > > This > > > would also require a naming server to present whenever they are > > > Deployed, which I think is more demanding than something like a > > simple > > > properties file. > > > > > > Has anyone else tried to do this? Could you point me in the right > > > dirction? This seems like a common approach people would want to > > use - > > > not tying your code to a given component model so it could be used > > > outside of that model also. > > > > > > Much Thanks for Your Help! > > > Mike > > > > > > __________________________________________________ > > > Do You Yahoo!? > > > Yahoo! - Official partner of 2002 FIFA World Cup > > > http://fifaworldcup.yahoo.com > > > > > > > > > ======================================================================== === > > > To unsubscribe, send email to [EMAIL PROTECTED] and include in > > the body > > > of the message "signoff EJB-INTEREST". For general help, send > > email to > > > [EMAIL PROTECTED] and include in the body of the message > > "help". > > > > > > > > __________________________________________________ > Do You Yahoo!? > Yahoo! - Official partner of 2002 FIFA World Cup > http://fifaworldcup.yahoo.com > > ======================================================================== === > To unsubscribe, send email to [EMAIL PROTECTED] and include in the body > of the message "signoff EJB-INTEREST". For general help, send email to > [EMAIL PROTECTED] and include in the body of the message "help". > > =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff EJB-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".