views:

116

answers:

0

We have the a whole lot of spring bean defined in our project which we deploy in Websphere ^. One example being the following:

<bean id="oasJdbcData" class="oracle.jdbc.pool.OracleConnectionCacheImpl">
        <property name="driverType">
            <value>oracle.jdbc.driver.OracleDriver</value>
        </property>
        <property name="URL">
            <value>jdbc:oracle:thin:@oracle:1521:OASIS</value>
        </property>
        <property name="user">
            <value>oasis_owner</value>
        </property>
        <property name="password">
            <value>o3ngin33r</value>
        </property>
    </bean>

Now we have a service locator class like following

private static ServiceLocator serviceLocator = new ServiceLocator();

private static ApplicationContext beanFactory = new ClassPathXmlApplicationContext(APPLICATION_CONTEXT_LOCATION);

protected ServiceLocator() { 
}

public ApplicationContext getBeanFactory() {
    return beanFactory;
}

public static ServiceLocator getInstance() {
    return serviceLocator;

Now when I am trying to do this from my jUnit

ServiceLocator.getInstance().getBean("oasJdbcData";

getting the following exception

Caused by: javax.naming.ServiceUnavailableException: Could not obtain an initial context due to a communication failure. Since no provider URL was specified, the default provider URL of "corbaloc:iiop:[email protected]:2809/NameService" was used.  Make sure that any bootstrap address information in the URL is correct and that the target name server is running.  Possible causes other than an incorrect bootstrap address or unavailable name server include the network environment and workstation network configuration. [Root exception is org.omg.CORBA.TRANSIENT: java.net.ConnectException: Connection refused: connect:host=192.168.255.1,port=2809  vmcid: IBM  minor code: E02  completed: No]
    at com.ibm.ws.naming.util.WsnInitCtxFactory.mapInitialReferenceFailure(WsnInitCtxFactory.java:1968)
    at com.ibm.ws.naming.util.WsnInitCtxFactory.mergeWsnNSProperties(WsnInitCtxFactory.java:1172)
    at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootContextFromServer(WsnInitCtxFactory.java:720)
    at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootJndiContext(WsnInitCtxFactory.java:643)
    at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:489)
    at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:113)
    at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:428)
    at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144)
    at javax.naming.InitialContext.lookup(InitialContext.java:361)
    at org.springframework.jndi.JndiTemplate$1.doInContext(JndiTemplate.java:155)
    at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:88)
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:153)
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:178)
    at org.springframework.jndi.JndiLocatorSupport.lookup(JndiLocatorSupport.java:104)
    at org.springframework.jndi.JndiObjectLocator.lookup(JndiObjectLocator.java:105)
    at org.springframework.jndi.JndiObjectFactoryBean.lookupWithFallback(JndiObjectFactoryBean.java:200)
    at org.springframework.jndi.JndiObjectFactoryBean.afterPropertiesSet(JndiObjectFactoryBean.java:186)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1368)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334)
    ... 33 more

which clearly shows it is looking for IntialContext of Websphere which I dont want Any body can tell me what I am doing wrong?