Avatar billede roo104 Nybegynder
11. marts 2004 - 13:59 Der er 50 kommentarer og
1 løsning

Tomcat connection pooling

Jeg har læst arne_v's artikel om connection pooling men der er noget der driller, jeg får denne fejl:
exception

javax.servlet.ServletException: Name TestMySQL is not bound in this Context
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
    org.apache.jsp.test1_jsp._jspService(test1_jsp.java:66)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


root cause

javax.naming.NameNotFoundException: Name TestMySQL is not bound in this Context
    org.apache.naming.NamingContext.lookup(NamingContext.java:815)
    org.apache.naming.NamingContext.lookup(NamingContext.java:185)
    org.apache.naming.NamingContext.lookup(NamingContext.java:826)
    org.apache.naming.NamingContext.lookup(NamingContext.java:198)
    org.apache.jsp.test1_jsp._jspService(test1_jsp.java:52)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)



Efter at have tilføjet dette til web.xml får jeg:
  <resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/TestMySQL</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
  </resource-ref>


exception

javax.servlet.ServletException: Cannot create JDBC driver of class '' for connect URL 'null', cause: No suitable driver
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
    org.apache.jsp.test1_jsp._jspService(test1_jsp.java:66)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


root cause

org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null', cause: No suitable driver
    org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:750)
    org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:518)
    org.apache.jsp.test1_jsp._jspService(test1_jsp.java:53)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)



jeg har taget arnes server.xml og kopieret ind mellem <GlobalNamingResources> og </GlobalNamingResources>

Hvad hulan gør jeg galt ???
Avatar billede arne_v Ekspert
11. marts 2004 - 14:04 #1
Den sidste fejl lyder som at du ikke har fået kopieret MySQL JDBC driver jar
filen ind i webapps\xxxx\WEB-INF\lib
Avatar billede arne_v Ekspert
11. marts 2004 - 14:05 #2
Den første fejl tror jeg skyldes at fragmentet er lagt ind et forkert sted.
Avatar billede arne_v Ekspert
11. marts 2004 - 14:09 #3
Jeg har ikke lagt den ind i GlobalNamingResources men ind i Context.
Avatar billede roo104 Nybegynder
11. marts 2004 - 14:27 #4
har du et eksempel på en server.xml som jeg lige kan copy pate ind, jeg bruger Tomcat 5
Avatar billede roo104 Nybegynder
11. marts 2004 - 17:23 #5
så tror jeg har fundet ud af det nu, fandt en andet eksempel i en tomcat bog fra wrox
Avatar billede arne_v Ekspert
11. marts 2004 - 17:31 #6
Det burde være helt simpelt: lav en context for din web app, put linierne
i den context.
Avatar billede roo104 Nybegynder
13. marts 2004 - 18:25 #7
Brugte <DefaultContext> i stedet for <Context docBase="pooltest" path="/pooltest" reloadable="true"> i server.xml, så virkede det.
Ellers en rigtig god artikel, du har skrevet.
Avatar billede samuelsen Nybegynder
24. marts 2004 - 16:00 #8
Hej Arne!
Jeg prøvede at benytte defaultcontext, men så fik jeg flg. fejl:
javax.servlet.ServletException: Cannot create PoolableConnectionFactory, cause: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
Hvor ligger jdbc jar driveren som standard? Jeg er fuldstændig grøn i opsætning af en tomcat.
Avatar billede roo104 Nybegynder
24. marts 2004 - 17:40 #9
Min jdbc driver ligger under %Tomcat%/common/lib. Hvilket i mit tilfælde er C:\Tomcat\common\lib. Hvis det er kan jeg poste min server.xml
Avatar billede roo104 Nybegynder
24. marts 2004 - 17:41 #10
btw der ligger ikke nogen driver som standard, man skal selv hente den. som oftest fra database udbyderens side
Avatar billede arne_v Ekspert
24. marts 2004 - 22:42 #11
Fejlen er med JDBC ODBC bridgen, og den ligger der default (fordi den er
i selve Java SDK).

Det lyder snarere som om der ikke er defineret den DSN der henvises til.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 08:36 #12
hej roo104, du må meget gerne poste din server.xml fil,
På forhånd tak for hjælpen.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 08:42 #13
Hej Arne!

Hvad mener du med at definere DSN? Den er oprettet i ODBC-forbindelser under kontrolpanelet i Windows, på samme maskine som kører tomcat-serveren. Er det ikke i orden? Eller skal det også sættes på i server.xml? i så fald hvor?
Avatar billede arne_v Ekspert
25. marts 2004 - 08:48 #14
Det er i orden.

Men connectionURL skal indeholde den rigtige DSN.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:04 #15
Den defineres vel i
<parameter>
  <name>url</name>
    <value>jdbc:odbc://localhost</value>
  </parameter>
Hvad skal jeg skrive i stedet? i valuefeltet... Navnet på min DSN er ODBCTEST
Avatar billede arne_v Ekspert
25. marts 2004 - 09:12 #16
jdbc:odbc:ODBCTEST
Avatar billede roo104 Nybegynder
25. marts 2004 - 09:14 #17
Her er den komplette server.xml. Jeg bruger mysql og dsn less forbindelse

<?xml version='1.0' encoding='utf-8'?>
<Server>
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <GlobalNamingResources>
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
    <Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
    <ResourceParams name="UserDatabase">
      <parameter>
        <name>factory</name>
        <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
      </parameter>
      <parameter>
        <name>pathname</name>
        <value>conf/tomcat-users.xml</value>
      </parameter>
    </ResourceParams>
  </GlobalNamingResources>
  <Service name="Catalina">
    <Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443">
    </Connector>
    <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
    </Connector>
    <Engine defaultHost="localhost" name="Catalina">
      <Host appBase="webapps" name="localhost">
     
    <DefaultContext>
    <Resource name="jdbc/inet" auth="Container" type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/inet">
      <parameter>
        <name>driverClassName</name>
        <value>org.gjt.mm.mysql.Driver</value>
      </parameter>
      <parameter>
        <name>url</name>
        <value>jdbc:mysql://localhost/inet</value>
      </parameter>
      <parameter>
        <name>username</name>
        <value>xxxxx</value>
      </parameter>
      <parameter>
        <name>password</name>
        <value>xxxxx</value></parameter>
      <parameter>
        <name>maxActive</name>
        <value>20</value></parameter>
      <parameter>
        <name>maxIdle</name>
        <value>30000</value></parameter>
      <parameter>
        <name>maxWait</name>
        <value>100</value>
      </parameter>
    </ResourceParams>
  </DefaultContext>

    <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
      </Host>
      <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
    </Engine>
  </Service>
</Server>
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:15 #18
Hej arnev! Jeg fatter ikke en bjælde af det hele...det virker stadig ikke, og stadig med samme fejl, jeg har postet mit afsnit JDBC fra server.xml, som jeg har indsat tilsidst i server.xml, håber på din hjælp.
- <DefaultContext>
  <Resource auth="Container" name="jdbc/C5GRAF" type="javax.sql.DataSource" />
- <ResourceParams name="jdbc/C5GRAF">
- <parameter>
  <name>factory</name>
  <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
  </parameter>
- <parameter>
  <name>maxActive</name>
  <value>100</value>
  </parameter>
- <parameter>
  <name>maxIdle</name>
  <value>30</value>
  </parameter>
- <parameter>
  <name>maxWait</name>
  <value>10000</value>
  </parameter>
- <parameter>
  <name>username</name>
  <value>supervisor</value>
  </parameter>
- <parameter>
  <name>password</name>
  <value />
  </parameter>
- <parameter>
  <name>driverClassName</name>
  <value>sun.jdbc.odbc.JdbcOdbcDriver</value>
  </parameter>
- <parameter>
  <name>url</name>
  <value>jdbc:odbc:C5GRAF</value>
  </parameter>
  </ResourceParams>
  </DefaultContext>
  </Host>
  </Engine>
  </Service>
  </Server>
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:16 #19
ups - glemte lidt at sige at min DSN hedder C5GRAF og ikke ODBCTEST som jeg skrev sidst :-)
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:36 #20
hej, jeg har fundet ud af det - nu virker det! Tak for hjælpen Arne...
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:37 #21
men min server brager stadig ned, ved for mange uafsluttede databasekald....såå, jeg er ikke rigtig kommet videre...har ellers dat min maxActive og MaxIdle rimelig højt(100, 30000) så jeg forstår det ikke....
Avatar billede roo104 Nybegynder
25. marts 2004 - 09:39 #22
husk at lukke dine connections, ellers går den hurtigt tør
Avatar billede roo104 Nybegynder
25. marts 2004 - 09:39 #23
og som standard er 100 connections max i mysql
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:41 #24
jeg lukker dem også i koden, men hvis der er en utålmodig bruger, som hele tiden klikker på linket til siden som skal hente data fra databasen, bliver siden aldrig loadet færdig, og derfor bliver linien med db.close() aldrig kørt. og derfor bliver mine connections ikke lukkede....det er mit problem, nogle som har et svar ??
Avatar billede samuelsen Nybegynder
25. marts 2004 - 09:52 #25
Jeg har også prøvet at sætte maxActive til 0, maxIdle til -1 og maxWait til -1, som burde betyde ubegrænset antal, men desværre uden held.
Avatar billede arne_v Ekspert
25. marts 2004 - 10:26 #26
SUN JDBC ODBC bridge er ikke for god.

Jeg ville være tilbøjelig til at sætte maxActive til 1 for at undgå
problemer med den.

Den burde køre igennem til close selvom brugeren resubmitter før
svar.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 10:54 #27
tjo - man kan da sætte maxActive til 1, men så skal man jo vente indtil et antal sec, inden man kan lave næste databaseudtræk/næste klik på et link, hvad kan man ellers gøre? For når jeg sætter maxActive til 3 så går det fuldstændig galt(serveren går ned.).
Avatar billede roo104 Nybegynder
25. marts 2004 - 11:01 #28
Det lyder meget som om du glemmer at lukke en connection. Jeg sidder med et jsp projekt og der går ikke 5 min før jeg opdager hvis jeg har glemt at lukke en connection. Den løber lyn hurtig tør fo connections.
Avatar billede arne_v Ekspert
25. marts 2004 - 11:01 #29
Jeg har læst et sted at JDBC ODBC bridgen ikke er thread safe.

Det må betyde at ved parallelle kald, så kan man få problemer
p.g.a. den driver.

En pure Java JDBC driver eller en kommercial JDBC ODBC bridge ville
uden tvivl hjælpe.

Det problem en connection pool løser er:
  - hurtigere connect fordi der ikke skal laves en fysisk connection
  - undgår limit på max. antal fysiske connection stil databasen

Det eneste den kan hjælpe med ved Sun's JDBC ODBC bridge er vel at
at lave en nem blocking.
Avatar billede arne_v Ekspert
25. marts 2004 - 11:02 #30
Hvis du vil være sikker på at få kaldt close, så put den i en finally block !
Avatar billede samuelsen Nybegynder
25. marts 2004 - 11:07 #31
hej roo104, du har fuldstændig ret, jeg sidder med et jsp-projekt og får ikke kaldt close(). da siden ikke når at blive loadet inden brugeren allerede har fortrudt klikket, og klikker på et andet link...ved du hvordan jeg kommer dette problem til livs? Hvis brugeren ikke er utålmodig eller klikker helt vildt rundt, så er der ingen problemer, så laves udtrækkene helt rigtigt. Problemet opstår kun når siden ikke når at blive loadet (og close ligger sidst på mine jsp-sider) og den ikke bliver færdig med udtrækket før et nyt bliver kaldt.
Avatar billede roo104 Nybegynder
25. marts 2004 - 11:12 #32
Nu er jeg ikke verdens mester i web programmering, men så vidt jeg har forstået, at når en bruger først har sendt en forspørgsel til serveren er der ingen mulighed for fortryd. dvs, at selv om brugeren trykker stop eller et nyt link vil siden blive behandtlet 100% færdig på serversiden.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 11:14 #33
aha - det vidste jeg ikke....
Avatar billede roo104 Nybegynder
25. marts 2004 - 11:16 #34
Og som arne siger, det kan være siden kaster en exception undervejs, så hvis du vil være sikker på at kalde close, skal den i en finally block.
Jeg har en statisk metode i en klasse jeg kalder hver gang jeg vil have en connection fra poolen, den ser sådan her ud:

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

public class Forbindelse {
    private static Connection conn = null;
   
    private Forbindelse() {}
   
    public static Connection getConnection() throws NamingException, SQLException {
        Context initCtx = new InitialContext();
        Context envCtx = (Context)initCtx.lookup("java:comp/env");

        // Look up the data source
        DataSource ds = (DataSource)envCtx.lookup("jdbc/inet");

        // Allocate and use a connection from the pool
        initCtx.close();
        return conn = ds.getConnection();
    }
}

Jeg får en connection ved:
Connection conn = Forbindelse.getConnection()

Og ligge min connection tilbage i poolen ved:
conn.close()
Avatar billede samuelsen Nybegynder
25. marts 2004 - 11:16 #35
hvis det er rigtig, så aner jeg simpelthen ikke hvad mit problem er...
Avatar billede roo104 Nybegynder
25. marts 2004 - 11:19 #36
Nu må du ikke hænge mig op på det, er som sagt ikke 100% sikker, Arne ved det nok :)
Det er bare sådan jeg har forstået det.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 11:22 #37
Det er sikkert rigtigt - men lad os vente på svar fra arne, så bliver vi alle klogere :-) Jeg syntes ellers jeg opretter og lukker forbindelser ligesom dig...
Avatar billede arne_v Ekspert
25. marts 2004 - 11:35 #38
Jeg er ret sikker på at det er Sun JDBC ODBC bridge som driller dig.

close inde i finally og maxActive = 1 ville være midt bedste bud på noget
som virker (langsomt).
Avatar billede samuelsen Nybegynder
25. marts 2004 - 11:41 #39
Tak for hjælpen - jeg prøver mig lidt frem med de forskellige parametre...
Avatar billede samuelsen Nybegynder
25. marts 2004 - 12:13 #40
Hej igen! Så er jeg løbet på et andet problem - lidt i samme kaliber... Nemlig at den sidste postering som skal hentes fra databasen, bliver kun hentet halvt, og så stopper webserveren med at hente resten af siden. Det er utrolig underligt...Når jeg benytter den anden form for connect til databasen ved at skrive det hele i koden og intet i TomCat så er der intet problem, men det opstår først når jeg benytter

- <DefaultContext>
  <Resource auth="Container" name="jdbc/C5GRAF" type="javax.sql.DataSource" />
- <ResourceParams name="jdbc/C5GRAF">
.......

mv i tomcat - ikke når den fx. compileres almindeligt i fx. Jbuilder, kender I til problemet?
Avatar billede arne_v Ekspert
25. marts 2004 - 13:01 #41
Er der nogen exception i Tomcat's log-filer ?
Avatar billede samuelsen Nybegynder
25. marts 2004 - 13:07 #42
ikke umiddelbart, har lige postet logfilen, fra en forespørgsel:
...
2004-03-25 13:08:10 StandardContext[/balancer]org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
2004-03-25 13:08:11 StandardContext[/jsp-examples]ContextListener: contextInitialized()
2004-03-25 13:08:11 StandardContext[/jsp-examples]SessionListener: contextInitialized()
2004-03-25 13:08:13 StandardContext[/servlets-examples]ContextListener: contextInitialized()
2004-03-25 13:08:13 StandardContext[/servlets-examples]SessionListener: contextInitialized()
2004-03-25 13:08:31 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
java.sql.SQLException: ResultSet is closed
    at sun.jdbc.odbc.JdbcOdbcResultSet.checkOpen(JdbcOdbcResultSet.java:6502)
    at sun.jdbc.odbc.JdbcOdbcResultSet.clearWarnings(JdbcOdbcResultSet.java:1748)
    at sun.jdbc.odbc.JdbcOdbcResultSet.close(JdbcOdbcResultSet.java:1452)
    at org.apache.commons.dbcp.DelegatingResultSet.close(DelegatingResultSet.java:193)
    at org.apache.commons.dbcp.DelegatingStatement.passivate(DelegatingStatement.java:248)
    at org.apache.commons.dbcp.DelegatingStatement.close(DelegatingStatement.java:177)
    at org.apache.jsp.produkter_jsp._jspService(produkter_jsp.java:646)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:536)

----
Avatar billede samuelsen Nybegynder
25. marts 2004 - 13:08 #43
nå jo, der er et exeption....
Avatar billede arne_v Ekspert
25. marts 2004 - 13:17 #44
Den siger at du forsøger at kalde rs.next() eller rs.getXxx efter at du har
kaldt rs.close() eller måske con.close() !

Og det kan man ikke ...
Avatar billede samuelsen Nybegynder
25. marts 2004 - 13:32 #45
Det har jeg lidt svært ved at forestille mig, for det virker jo når jeg opretter forbindelse til databasen med flg. kode i min jsp fil:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection db = DriverManager.getConnection("jdbc:odbc:C5GRAF");
Avatar billede arne_v Ekspert
25. marts 2004 - 19:19 #46
Hm. Et eller andet går der galt.

Det kan være et SUN JDBC ODBC bridge problem.

Ihvertfald lyder det som om du skal droppe connection pool.
Avatar billede samuelsen Nybegynder
25. marts 2004 - 23:32 #47
ved du hvor det er muligt at downloade en ny JDBC-ODBC driver, det kan vel måske være problemer? eller hva tror du?
Avatar billede arne_v Ekspert
26. marts 2004 - 09:43 #48
Det kunne sagtens være et problem med SUN JDBC ODBC bridge.

Der er alternative JDBC ODBC bridge. Men jeg kender ingen gratis.
Avatar billede samuelsen Nybegynder
26. marts 2004 - 09:50 #49
Den behøver ikke være gratis, bare det afhjælper mit problem, hvor kan jeg få den fra? evt. en dansk virksomhed (så man kan brokke sig hvis det ikke virker ;-)) )
Avatar billede arne_v Ekspert
26. marts 2004 - 09:56 #50
Avatar billede arne_v Ekspert
26. marts 2004 - 09:58 #51
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester