It's being called twice because, since you defined it as scope=singleton, Spring is creating a singleton instance for you automatically on start-up. Then your code is creating another instance in your getStartupService() method. You don't need to explicitly instantiate one, just let Spring inject it where you need it. (*Chris*)
On Tue, Jul 13, 2010 at 11:42 AM, hisameer <cool_sameer_fo...@yahoo.com>wrote: > > Thanks for the suggestion. I have implemented it, but the issue is that the > bean is called twice.I am using websphere server 6.1. Do you have any idea > why its happening? > > Here is the code in ApplicationContext.xml > > <bean id="initBean" class="com.singleton.startup.service.StartUPService" > scope="singleton" init-method="init"> > <property name="flag" value="true" /> > <property name="days" value="15" /> > </bean> > > > and StartUPService.java class looks like this: > public class StartUPService implements ApplicationContextAware { > > private static StartUPService ref; > > private ApplicationContext ctx; > > private static Logger logger = > Logger.getLogger(StartUPService.class); > > private boolean flag= true; > > private ServiceDAO dao; > > private int days= 15; > > private StartUPService() { > // no code req'd > } > > public static StartUPService getStartUPService() { > > if (ref == null) { > // it's ok, we can call this constructor > ref = new StartUPService(); > } > return ref; > } > > public void init() { > > if (ref == null) { > // it's ok, we can call this constructor > ref = new StartUPService(); > long startTime = System.currentTimeMillis(); > loadRequiredObject(); > long endTime = System.currentTimeMillis(); > logger.info("The Total time taken is: " + (endTime > - startTime) > + " ms"); > } > > } > > private void loadRequiredObject(){ > if (dao== null) { > dao= (ServiceDAO) ctx.getBean("daoBean"); > } > //here I will do some processing using the database access using dao > service layer > } > > > satyanarayana katta wrote: > > > > Using the application level spring container would be sufficient with > init > > method set. > > > > Sent from my iPhone > > > > On Jun 25, 2010, at 11:36 AM, hisameer <cool_sameer_fo...@yahoo.com> > > wrote: > > > >> > >> Hi, > >> > >> I am using Struts2.1.6+Spring2.5.6+Hibernate+JPA in my web application. > >> The > >> application server is JBOSS5. I have to implement a logic so that when > >> the > >> server starts I can execute some database scripts using my DAO service > >> layer. And this class is responsible loading some required variables > from > >> the database. The class should execute only one on the start up. > >> > >> Please give me some suggestions how to do this. If possible write some > >> sample code. > >> > >> Thanks, > >> Sameer > >> -- > >> View this message in context: > >> > http://old.nabble.com/How-to-modify-Struts2-start-up-process.-tp28995322p28995322.html > >> Sent from the Struts - User mailing list archive at Nabble.com. > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > >> For additional commands, e-mail: user-h...@struts.apache.org > >> > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > > For additional commands, e-mail: user-h...@struts.apache.org > > > > > > > > -- > View this message in context: > http://old.nabble.com/How-to-modify-Struts2-start-up-process.-tp28995322p29154226.html > Sent from the Struts - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > For additional commands, e-mail: user-h...@struts.apache.org > >