|
|
Dynamic dabase rounting not working properly
mons.dbcp.BasicDataSourcequot; abstract=quot;truequot;gt; lt;property name=quot;driverClassNamequot; value=quot;${database.driverClassName}quot;/gt; lt;property name=quot;usernamequot; value=quot;${database.username}quot;/gt; lt;property name=quot;passwordquot; value=quot;${database.password}quot;/gt; lt;property name=quot;defaultAutoCommitquot; value=quot;${database.defaultAutoCommit}quot;/gt; lt;property name=quot;maxActivequot; value=quot;${database.maxActive}quot;/gt;
lt;property name=quot;validationQueryquot; value=quot;${database.validationQuery}quot;/gt;
lt;property name=quot;initialSizequot; value=quot;${database.initialSize}quot;/gt;
lt;property name=quot;poolPreparedStatementsquot; value=quot;${database.poolPreparedStatements}quot;/gt;
lt;/beangt;
lt;bean id=quot;goldDataSourcequot; parent=quot;parentDataSourcequot;gt; lt;property name=quot;uclquot; value=quot;${database.ucl}quot;/gt;
lt;/beangt;
lt;bean id=quot;silverDataSourcequot; parent=quot;parentDataSourcequot;gt; lt;property name=quot;uclquot; value=quot;${database.ucl_two}quot;/gt;
lt;/beangt;
lt;bean id=quot;bronzeDataSourcequot; parent=quot;parentDataSourcequot;gt; lt;property name=quot;uclquot; value=quot;${database.ucl_three}quot;/gt;
lt;/beangt;
lt;bean id=quot;dummy_datasorcequot; parent=quot;parentDataSourcequot;gt; lt;property name=quot;uclquot; value=quot;${database.ucl_dummy}quot;/gt;
lt;/beangt;
lt;bean id=quot;dataSourcequot; class=quot;com.ontrac.helperclasses.RoutingDataSourcquot; gt; lt;property name=quot;targetDataSourcesquot;gt; lt;map key-type=quot;com.ontrac.helperclasses.CompanyEnumquot;gt; lt;entry key=quot;COM_ONEquot; value-ref=quot;goldDataSourcequot;/gt; lt;entry key=quot;COM_TWOquot; value-ref=quot;silverDataSourcequot;/gt; lt;entry key=quot;COM_THREEquot; value-ref=quot;bronzeDataSourcequot;/gt; lt;entry key=quot;COM_DEFAULTquot; value-ref=quot;dummy_datasorcequot;/gt; lt;/mapgt; lt;/propertygt; lt;property name=quot;defaultTargetDataSourcequot; ref=quot;dummy_datasorcequot;/gt;
lt;/beangt;
It is my Enum
public enum CompanyEnum { COM_ONE, COM_TWO, COM_THREE,COM_DEFAULT
}
i am calling it after login in my controller
if(name.equals(quot;adminquot;)){ CustomerContextHolder.setCompanyType(CompanyEnum.C OM_ONE); System.out.println(quot;first database--------------------------------quot;); }else if (name.equals(quot;admin_com_twoquot;)){ CustomerContextHolder.setCompanyType(CompanyEnum.C OM_TWO); System.out.println(quot;Second database--------------------------------quot;); }else if(name.equals(quot;admin_com_threequot;)){ CustomerContextHolder.setCompanyType(CompanyEnum.C OM_THREE); System.out.println(quot;Third database--------------------------------quot;); }else{ CustomerContextHolder.setCompanyType(CompanyEnum.C OM_DEFAULT); System.out.println(quot;Default Database --------------------------------quot;); }rest of the things are same as in blog
can anybody help me i am stuck here
Thanx in advance |
|