PDA

View Full Version : [Tomcat] problemi di configurazione


Alan J
18-02-2007, 20:14
ciao a tutti, ho installato su un sistema WinXP, Apache Tomcat 5.5, PostgreSQL 8.2 e JDK1.6... ho il problema che nn riesco ad accedere al database, mi viene restituito un errore:


type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
rg.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "No suitable driver found for jdbc/prova"
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


ho effettuato le configurazioni necessarie (o almeno, penso di averlo fatto... :) ) come spiegato negli HOWTO di TOMCAT
http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
ho copiato il postgresql-8.2-504.jdbc3.jar in //common/lib
ci sto battendo il capino da qualche giorno, ma nn ne vengo a capo...
mi sapete dare qualche dritta?

grazie!

kingv
19-02-2007, 08:30
come definisci il datasource? riporta il frammento di file di config.

Alan J
19-02-2007, 17:22
allora... (ti prego di perdonare mie inesattezze o sciocchezze, sono un niubbo...:) )

la mia WebApp si chiama prov, ed è locata in:
$CATALINA_HOME/webapps/prov
il datasource, se intendo bene, leggendo quanto riportato nella documentazione di Tomcat, si chiama prov.xml ed è locato in $CATALINA_HOME/conf ed è:
<Context path="/prov" docBase="prov"
crossContext="true" reloadable="true" debug="1">

<Resource name="jdbc/prova" auth="Container"
type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
url="jdbc:_postgresql://127.0.0.1:5432/prova"
username="admin" password="****" maxActive="20" maxIdle="10"
maxWait="-1"/>
</Context>
nota: lo spazio "jdbc: postgres..." è voluto perchè sul forum mi esce uno emoticon... nel file nn c'è.

Il database in postgres si chiama prova.
Nn mi è chiaro la parte riguardante il file web.xml...

kingv
19-02-2007, 20:29
sembra tutto corretto.
guarda con il file .jar non sia corrotto:

jar tvf $CATALINA_HOME/common/lib/postgresql-8.2-504.jdbc3.jar

Alan J
19-02-2007, 21:18
'tvf' cos'è??
come controllo se il file .jar è corrotto?
l'ho riscaricato...


nella documentazione di Tomcat dicono:


3. web.xml configuration

<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/postgres</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>


ma questo và aggiunto così al web.xml?
e inoltre il file web.xml è quello in $CATALINA_HOME/conf oppure in $CATALINA_HOME/webapps/prov/WEB-INF ??

kingv
20-02-2007, 08:21
'tvf' cos'è??
come controllo se il file .jar è corrotto?
l'ho riscaricato...



con il comando che ti ho dato.




ma questo và aggiunto così al web.xml?
e inoltre il file web.xml è quello in $CATALINA_HOME/conf oppure in $CATALINA_HOME/webapps/prov/WEB-INF ??


i datasource li puoi definire globalmente (a livello di application server) o a livello di singola applicazione. nel secondo caso lo fai a livello di web.xml (dell'applicazione, quindi quello definito in $CATALINA_HOME/webapps/prova/WEB-INF )

Alan J
23-02-2007, 12:28
sembra tutto corretto.
guarda con il file .jar non sia corrotto:

jar tvf $CATALINA_HOME/common/lib/postgresql-8.2-504.jdbc3.jar

si, mi ha dato l'elenco di tutte le classi del postgresql-8.2-504.jdbc3.jar e nessun errore...