Como obter DataSource

0 respostas
cu_ringa

alguem sabe pq ta dando erro??? ai vao os arquivos web.xml, server.xml e a classe java. o nome do projeto e conexao.

web.xml

<web-app>
	<servlet>
		<servlet-name>hi</servlet-name>
		<servlet-class>app.Conexao</servlet-class>
	</servlet>	
	<servlet-mapping>
		<servlet-name>hi</servlet-name>
		<url-pattern>/hi</url-pattern>
	</servlet-mapping>
	<resource-ref>
		<res-ref-name>jdbc/conexao</res-ref-name>
		<res-type>javax.sql.DataSource</res-type>
		<res-auth>Container</res-auth>
	</resource-ref>	
</web-app>

parte q importa do server.xml

<Context path="/conexao" docBase="C:\Arquivos de programas\eclipse3.0\eclipse\workspace\conexao" debug="0"
     reloadable="true" >
	 		<ResourceParams name="jdbc/conexao">
	  		<parameter>
	   			<name>username</name>
	   			<value>sa</value>
	  		</parameter>
	  		<parameter>
	   			<name>driverClassName</name>
	   			<value>net.sourceforge.jtds.jdbcx.JtdsDataSource</value>
	  		</parameter>
	  		<parameter>
	   			<name>url</name>
	   			<value>jdbc:jtds:sqlserver://localhost:1433/Alunodb</value>
	  		</parameter>
	 		</ResourceParams>
</Context>

classe Conexao

package app;

/**
 * @author cu_ringa
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;

public class Conexao extends HttpServlet implements SingleThreadModel
{
Connection con;
PreparedStatement pstmt ;
public void init() throws ServletException
{
try {
	
		InitialContext ctxt = new InitialContext();
		Context ct = (Context)ctxt.lookup("conexao");
		DataSource ds = (DataSource)ct.lookup("jdbc/conexao");
		Connection con = ds.getConnection ();
			  
    System.out.println(con);
    System.out.println("bernardino");
	}
  catch (SQLException ex) {
    throw new ServletException("Cannot create database connection",ex);
  }
  catch (Exception ex) {
    throw new ServletException("Cannot create database connection",ex);
  }
  
	}
}

erro

exception

javax.servlet.ServletException: Cannot create database connection
	app.Conexao.init(Conexao.java:42)
	javax.servlet.GenericServlet.init(GenericServlet.java:211)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
	org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	java.lang.Thread.run(Thread.java:595)

root cause

javax.naming.NameNotFoundException: Name conexao is not bound in this Context
	org.apache.naming.NamingContext.lookup(NamingContext.java:768)
	org.apache.naming.NamingContext.lookup(NamingContext.java:151)
	org.apache.naming.SelectorContext.lookup(SelectorContext.java:136)
	javax.naming.InitialContext.lookup(InitialContext.java:351)
	app.Conexao.init(Conexao.java:31)
	javax.servlet.GenericServlet.init(GenericServlet.java:211)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
	org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	java.lang.Thread.run(Thread.java:595)
Criado 22 de abril de 2005
Respostas 0
Participantes 1