RE: still confuse; no suitable driver
От | Joe Shevland |
---|---|
Тема | RE: still confuse; no suitable driver |
Дата | |
Msg-id | MJEMLFCFPOPOFFFLIIDGEEGJCAAA.shevlandj@kpi.com.au обсуждение исходный текст |
Ответ на | RE: still confuse; no suitable driver (Peter Mount <petermount@it.maidstone.gov.uk>) |
Список | pgsql-interfaces |
Involving a DataSource and the JDBC standard extension? >-----Original Message----- >From: pgsql-interfaces-owner@hub.org >[mailto:pgsql-interfaces-owner@hub.org]On Behalf Of Peter Mount >Sent: Thursday, 29 June 2000 1:14 AM >To: 'Joe Shevland'; pgsql-interfaces@postgresql.org >Subject: RE: [INTERFACES] still confuse; no suitable driver > > >There is an alternative fix for IE that bypasses DriverManager completely >(for some installations DriverManager doesn't work at all). > >-- >Peter Mount >Enterprise Support >Maidstone Borough Council >Any views stated are my own, and not those of Maidstone Borough Council > > >-----Original Message----- >From: Joe Shevland [mailto:shevlandj@kpi.com.au] >Sent: Wednesday, June 28, 2000 4:06 PM >To: pgsql-interfaces@postgresql.org >Subject: RE: [INTERFACES] still confuse; no suitable driver > > >A few things to be aware of: > >i) you're attempting to make the connection from the applet >(client browser) >to your host database on 'graphium.xxx.ac.jp', which will throw a security >exception unless you use signed applets because of the applet's security >sandbox (appletviewer can be told to ignore these). Applets are generally >only allowed to make socket connections back to the place they were served >from. > >ii) IE has a buggy JVM which requires this workaround: > > Class.forName("org.postgresql.Driver").newInstance(); > >to properly register the driver. I've never encountered this but I've heard >it reported a bit, it may be a red herring. > >Regards, >Joe > >>-----Original Message----- >>From: pgsql-interfaces-owner@hub.org >>[mailto:pgsql-interfaces-owner@hub.org]On Behalf Of radifan karami >>Sent: Wednesday, 28 June 2000 11:08 PM >>To: pgsql-interfaces@postgresql.org >>Subject: [INTERFACES] still confuse; no suitable driver >> >> >>I'm sory if may question is covered in mailing-list >>archive. >>I found many same questions ( and solutions ) in that >>archive about driver problem when running jdbc-applet >>from browser. >> >>I use Linux, Postgresql 7 and Java 1.2.2. >> >>I'm new commer in Java, and try to make the first >>jdbc-applet code following the tutorial in >>java.sun.com. >> >>It's working perfectly by appletviewer. >> >>I put my applet code ( .class ) and postgresql.jar >>file in the web server ( in my home page ), separate >>from my database in may host. >>For example my homepage is http://www.xxx.ac.jp/~radif >>and my host name is graphium.xxx.ac.jp. >> >>There is an error "Javalang.ClassNotFoudException: No >>suitable driver ", when I run applet from browser. >> >>I read many solutions in archive, but still not >>understand. Please give a simple and clear solution. >> >>** The html code is : >><HTML> >><HEAD> >><TITLE> Query Output </TITLE> >></HEAD> >><BODY> >>Output from query >>select NAME, PRICE from COFFEES >><APPLET CODE="myapplet" ARCHIVE="postgresql.jar" >>width=600 height=300> >></APPLET> >></BODY> >></HTML> >> >> >>** The applet code is : >>import java.applet.Applet; >>import java.awt.Graphics; >>import java.util.Vector; >>import java.sql.*; >> >>public class myapplet extends Applet implements >>Runnable { >> private Thread worker; >> private Vector queryResults; >> private String message = "Initializing"; >> >> public synchronized void start() { >> // Every time "start" is called we create a worker >>thread to >> // re-evaluate the database query. >> if (worker == null) { >> message = "Connecting to database"; >> worker = new Thread(this); >> worker.start(); >> } >> } >> >> /** >> * The "run" method is called from the worker >>thread. Notice that >> * because this method is doing potentially slow >>databases accesses >> * we avoid making it a synchronized method. >> */ >> >> public void run() { >> String url = >>"jdbc:postgresql://graphium.xxx.ac.jp/coffeebreak"; >> String query = "select COF_NAME, PRICE from COFFEES"; >> >> try { >> Class.forName("org.postgresql.Driver"); >> } catch(java.lang.ClassNotFoundException ex) { >> setError("Masalah pada driver: " + ex); >> return; >> } >> >> try { >> Vector results = new Vector(); >> Connection con = >>DriverManager.getConnection(url,"my", ""); >> Statement stmt = con.createStatement(); >> ResultSet rs = stmt.executeQuery(query); >> while (rs.next()) { >> String s = rs.getString("COF_NAME"); >> float f = rs.getFloat("PRICE"); >> String text = s + " " + f; >> results.addElement(text); >> } >> >> stmt.close(); >> con.close(); >> >> setResults(results); >> >> } catch(SQLException ex) { >> setError("SQLException: " + ex); >> } >> } >> >> /** >> * The "paint" method is called by AWT when it >>wants us to >> * display our current state on the screen. >> */ >> >> public synchronized void paint(Graphics g) { >> // If there are no results available, display the >>current message. >> if (queryResults == null) { >> g.drawString(message, 5, 50); >> return; >> } >> >> // Display the results. >> g.drawString("Prices of coffee per pound: ", 5, 10); >> int y = 30; >> java.util.Enumeration enum = queryResults.elements(); >> while (enum.hasMoreElements()) { >> String text = (String)enum.nextElement(); >> g.drawString(text, 5, y); >> y = y + 15; >> } >> } >> >> /** >> * This private method is used to record an error >>message for >> * later display. >> */ >> >> private synchronized void setError(String mess) { >> queryResults = null; >> message = mess; >> worker = null; >> // And ask AWT to repaint this applet. >> repaint(); >> } >> >> /** >> * This private method is used to record the >>results of a query, for >> * later display. >> */ >> >> private synchronized void setResults(Vector >>results) { >> queryResults = results; >> worker = null; >> // And ask AWT to repaint this applet. >> repaint(); >> } >>} >> >> >>Thank you & regard, >> >>-Radifan- >> >> >>__________________________________________________ >>Do You Yahoo!? >>Get Yahoo! Mail - Free email you can access from anywhere! >>http://mail.yahoo.com/ >> >
В списке pgsql-interfaces по дате отправления: