I used this code for accessing database connection through jndi lookup.
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource datasource = (DataSource)envContext.lookup("TestDB");
Connection connection = datasource.getConnection();
It was working fine. Later I replaced this with annotation to do same thing with following code.
@Resource(name="TestDB")
DataSource datasource;
methodName(){
if(datasource!=null){
Connection connection = datasource.getConnection();}
else{
System.out.println("Datasource is null");
}
}
But I got "DataSource is null". I also tried with @Resource(lookup="TestDB") but still getting "DataSource is null". Why datasource is null?