Win a copy of Microservices Testing (Live Project) this week in the Spring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Liutauras Vilda
  • Henry Wong
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Al Hobbs
  • Carey Brown
Bartenders:
  • Piet Souris
  • Mikalai Zaikin
  • Himai Minh

cannot connect from servlet

 
Greenhorn
Posts: 27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
I'm facing a strange behaviour on my tomcat webserver with a servlet. I'm using Oracle 10g as the database and try to access it with my servlet.
The doPost-method throws the following exception while trying to establish the connection to the RDBMS:

"SQLException:
Connecting not possible:
Listener refused the connection with the following error:
ORA-12519, TNS:no appropriate service handler found The Connection descriptor used by the client was: localhost:1521 BTEN"

After starting my servlet, the connection to the database for other applications blocks with the same error message
for a few minutes. After these few minutes connecting to the database is possible again!!! Restarting the database and the listener also helps...



public void doPost( HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException {

Connection conn = null;

response.setContentType( "text/html" );
PrintWriter out = response.getWriter();

String connStr = "jdbc racle:thin:@localhost:1521 BTEN";
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}catch( ClassNotFoundException cnf ){
out.println( "CNFException: "+cnf.getMessage() );
}

//retrieve Connection
try{
conn = DriverManager.getConnection( connStr, "scott", "tiger" );
}catch( SQLException sqle ){
out.println( "SQLException: <BR> Connecting not possible: <BR> "+sqle.getMessage()+"<BR>" );
}

.....

}



When I put that part in a 'normal' main program everything is ok. I can connect to the database and access tables with select statements and everything is ok.



public static void main(String[] args) {

Connection conn = null;
//retrieve Connection
try{
String connStr = "jdbc racle:thin:@localhost:1521 BTEN";

try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}catch(ClassNotFoundException cnf){
System.out.println( "CNFException: "+cnf.getMessage() );
}

conn = DriverManager.getConnection( connStr, "scott", "tiger" );

}catch( SQLException sqle ){
System.out.println( "SQLException:"+sqle.getMessage() );
}

.....

}


Does anyone have an idea what the problem is in this case?
I will also post in the Oracle forum
Regards,
Lars
reply
    Bookmark Topic Watch Topic
  • New Topic