import java.io.*;
import java.sql.*;
import java.lang.*;
import javax.naming.*;
import javax.sql.*;
import javax.servlet.http.*;
import javax.servlet.*;
import java.util.*;

public class ExampleDB extends HttpServlet
{
private final String name="";
public static DataSource dataSource;
public static String m_name="";
public String risultati="";
static Connection con;
static Statement statement;
static ResultSet rs;

static
{
try{
Context jndictx=new InitialContext();
Context envContext=(Context) jndictx.lookup("java:comp/env");
DataSource datasource=(DataSource) envContext.lookup("jdbc/db");
if(datasource==null){
System.out.println("DATASOURCE: "+datasource);
throw new SQLException();

}
con=datasource.getConnection();
if(con==null){
System.out.println("Connection REFUSED: "+con);
throw new SQLException();
}
statement=con.createStatement();
if(statement==null){
System.out.println("STATEMENT: "+statement);
throw new SQLException();
}
String query ="select codice from categoria";

rs = statement.executeQuery(query);
while (rs.next())
{
m_name= rs.getString(1);
System.err.println("The string is:"+m_name);
}
}catch(SQLException se){
se.printStackTrace();

}catch(NamingException ne){
ne.printStackTrace();
}
finally{
try{
if(rs!=null)rs.close();
if(statement!=null)statement.close();
if(con!=null)con.close();
}catch(SQLException se){
System.err.println("SQLException"+se.getMessage()) ;
}
}
}
public Connection getConnection() throws SQLException {
Connection connection = dataSource.getConnection();
connection.setAutoCommit(false);
return connection;
}

public void service(HttpServletRequest request,HttpServletResponse response)throws IOException
{
try{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
risultati=request.getQueryString();
out.println("<HTML><Head><Title>Connection DB</Title></Head>");
out.println("<Body><H1>Servlet</H1>");
out.println("<table border=1>");
out.println("<tr>"+"<td>"+"The query string is:"+"
"+risultati+"</td>"+"</tr>");
out.println("</table></body></html>");
}catch (IOException ex){
System.err.println("IOException"+ex.getMessage());
}
}

}