phun-ky Skrevet 4. mars 2005 Del Skrevet 4. mars 2005 (endret) hei, får denne feilmeldingen HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Invoker service() exception org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:477) org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:133) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) root cause java.lang.NoClassDefFoundError java.lang.Class.forName0(Native Method) java.lang.Class.forName(Class.java:141) java.awt.Toolkit$2.run(Toolkit.java:748) java.security.AccessController.doPrivileged(Native Method) java.awt.Toolkit.getDefaultToolkit(Toolkit.java:739) javax.swing.ImageIcon.<init>(ImageIcon.java:205) javax.swing.LookAndFeel$1.createValue(LookAndFeel.java:274) javax.swing.UIDefaults.getFromHashtable(UIDefaults.java:184) javax.swing.UIDefaults.get(UIDefaults.java:129) javax.swing.MultiUIDefaults.get(MultiUIDefaults.java:44) javax.swing.UIDefaults.getIcon(UIDefaults.java:410) javax.swing.UIManager.getIcon(UIManager.java:537) javax.swing.plaf.basic.BasicOptionPaneUI.getIconForType(BasicOptionPaneUI.java:555) javax.swing.plaf.basic.BasicOptionPaneUI.getIcon(BasicOptionPaneUI.java:543) javax.swing.plaf.basic.BasicOptionPaneUI.createMessageArea(BasicOptionPaneUI.java:313) javax.swing.plaf.basic.BasicOptionPaneUI.installComponents(BasicOptionPaneUI.java:154) javax.swing.plaf.basic.BasicOptionPaneUI.installUI(BasicOptionPaneUI.java:122) javax.swing.JComponent.setUI(JComponent.java:449) javax.swing.JOptionPane.setUI(JOptionPane.java:1693) javax.swing.JOptionPane.updateUI(JOptionPane.java:1715) javax.swing.JOptionPane.<init>(JOptionPane.java:1678) javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:828) javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:642) javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:613) examina.eCon_ServletDatabase.doGet(eCon_ServletDatabase.java:42) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:419) org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:133) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) note The full stack trace of the root cause is available in the Apache Tomcat/5.5.4 logs. Apache Tomcat/5.5.4 på denne url'en: http://tomcat.oslo.nith.no/rynale/servlet/...ServletDatabase filen: (web-inf, web.xml er korrekte) package examina; /*Denne klassen oppretter forbindelse til oracle serveren *og utfører øsnkede sql setninger. */ import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import javax.swing.*; import java.util.*; public class eCon_ServletDatabase extends HttpServlet { private Connection forbindelse; private int status = -1; private String svar=""; private String student; public void doGet(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { String bruker = "3123"; String passord = "123"; try { Class.forName("oracle.jdbc.driver.OracleDriver"); forbindelse = DriverManager.getConnection( "jdbc:oracle:thin:@oracle.nith.no:1521:STUD", bruker, passord); status = 1; } catch ( ClassNotFoundException cnfex) { JOptionPane.showMessageDialog(null,"Feilet med å laste driveren: " + cnfex.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); //System.exit(1); status = -1; } catch ( SQLException sqlex) { JOptionPane.showMessageDialog(null,"Tilkobling ikke mulig: " + sqlex.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); //System.exit(1); status = -1; } } public void lukkForbindelse() { try { forbindelse.close(); } catch ( SQLException sqlex ) { JOptionPane.showMessageDialog(null,"Klarte ikke å koble fra.","Feil!", JOptionPane.ERROR_MESSAGE ); } } public void avslutt() { lukkForbindelse(); System.out.println("Lukker forbindelsen."); } public Connection getConnection() { return forbindelse; } public int visStatus() { return status; } public void VisAlleFag(DefaultListModel x) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "select * from prosjekt.fag"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getString("ID") +" "+ resultat.getString("NAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void VisEtFag(DefaultListModel x, String id) { //id.toUpperCase(); svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "select * from prosjekt.fag WHERE fag.id='"+id+"'"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getString("ID") +" "+ resultat.getString("NAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void VisEnStudent(DefaultListModel x, String id) { student = "Du har tastet inn et ugyldig ID"; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT student.id, fornavn, etternavn, klassenavn " + "FROM prosjekt.student, prosjekt.klasse " + "WHERE student.klasseid = klasse.klasseid AND student.id = "+id+""; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { student = resultat.getInt("ID") +" " + resultat.getString("FORNAVN")+ " " + resultat.getString("ETTERNAVN")+" " + resultat.getString("KLASSENAVN"); x.addElement( student ); } stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void VisAlleKlasser(DefaultListModel x) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "select * from prosjekt.klasse"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getInt("KLASSEID") +" "+ resultat.getString("KLASSENAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void VisAlleStudenterIKlassen(DefaultListModel x, String id) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT student.id, fornavn, etternavn, klassenavn " + "FROM prosjekt.student, prosjekt.klasse " + "WHERE student.klasseid = klasse.klasseid AND klasse.klasseid = "+id+""; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getInt("ID") +" "+ resultat.getString("FORNAVN") +" "+ resultat.getString("ETTERNAVN") +" "+ resultat.getString("KLASSENAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void RegistrerEksamen(DefaultListModel x,String eksid, String dato,String fagkode) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "INSERT INTO EXAM_EKSAMEN VALUES("+eksid+",TO_DATE('"+dato+"','DD-MM-YYYY'),'"+fagkode+"') "; int antall = stmt.executeUpdate(sporring); String a ="Antall rader lagt til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre oppdateringen\n\n"+e.getMessage() ); } } public void VisAlleEksamner(DefaultListModel x) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT EKSID, DATO, NAVN"+" "+ "FROM EXAM_EKSAMEN, prosjekt.fag"+" "+ "WHERE EXAM_EKSAMEN.id = prosjekt.fag.id"+" "+ "ORDER BY EKSID"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getInt("EKSID") +" "+ resultat.getDate("DATO") +" "+ resultat.getString("NAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { x.removeAllElements(); JOptionPane.showMessageDialog(null,"Klarer ikke å utføre oppdateringen "+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void MeldOppStudent(DefaultListModel x, String eksamensid, String studid) { svar =""; String b = "null"; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "INSERT INTO EXAM_UTFORELSE VALUES("+eksamensid+","+studid+","+b+")"; int antall = stmt.executeUpdate(sporring); String a ="Antall rader lagt til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre registreringen\n\n"+e.getMessage() ); } } public void MeldOppKlasse(DefaultListModel x, String eksamensid, String[] studnr) { svar =""; int sum = 0; String karakter = "null"; PreparedStatement prepStmt; try { forbindelse.setAutoCommit(false); String sqlSetning = "INSERT INTO EXAM_UTFORELSE VALUES("+eksamensid+",?,"+karakter+")"; prepStmt = forbindelse.prepareStatement(sqlSetning); for (int i = 0; i < studnr.length; i++) { prepStmt.setString(1, studnr[i]); int n = prepStmt.executeUpdate(); } forbindelse.commit(); prepStmt.close(); } catch (SQLException e) { //x.removeAllElements(); x.addElement("Klarer ikke å utføre registreringen\n\n"+e.getMessage()); } } public void VisOppmeldteStudenter(DefaultListModel x) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT EXAM_UTFORELSE.eksid,EXAM_UTFORELSE.id, NAVN, DATO, FORNAVN, ETTERNAVN"+" "+ "FROM EXAM_EKSAMEN, EXAM_UTFORELSE, prosjekt.fag, prosjekt.student"+" "+ "WHERE EXAM_EKSAMEN.id = prosjekt.fag.id AND"+" "+ "EXAM_EKSAMEN.eksid = EXAM_UTFORELSE.eksid AND"+" "+ "EXAM_UTFORELSE.id = prosjekt.student.id"+" "+ "ORDER BY NAVN"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getString("EKSID") +" "+ resultat.getString("ID") +" "+ resultat.getString("NAVN") +" "+ resultat.getDate("DATO") +" "+ resultat.getString("FORNAVN") +" "+ resultat.getString("ETTERNAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { x.removeAllElements(); JOptionPane.showMessageDialog(null,"Klarer ikke å vise listen"+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void VisOppmeldteStudenterTilEnEks(DefaultListModel x, String eksid) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT EXAM_UTFORELSE.eksid,EXAM_UTFORELSE.id, NAVN, DATO, FORNAVN, ETTERNAVN"+" "+ "FROM EXAM_EKSAMEN, EXAM_UTFORELSE, prosjekt.fag, prosjekt.student"+" "+ "WHERE EXAM_EKSAMEN.id = prosjekt.fag.id AND"+" "+ "EXAM_EKSAMEN.eksid = EXAM_UTFORELSE.eksid AND"+" "+ "EXAM_EKSAMEN.eksid = "+eksid+" AND"+" "+ "EXAM_UTFORELSE.id = prosjekt.student.id"+" "+ "ORDER BY NAVN"; ResultSet resultat = stmt.executeQuery(sporring); while (resultat.next()) { svar = resultat.getString("EKSID") +" "+ resultat.getString("ID") +" "+ resultat.getString("NAVN") +" "+ resultat.getDate("DATO") +" "+ resultat.getString("FORNAVN") +" "+ resultat.getString("ETTERNAVN"); x.addElement( svar ); } stmt.close(); } catch (SQLException e) { x.removeAllElements(); JOptionPane.showMessageDialog(null,"Klarer ikke å vise listen"+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void EndreEksamen(DefaultListModel x, String gammelid, String nyeksid, String studnr) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "UPDATE EXAM_UTFORELSE SET EKSID="+nyeksid+"WHERE EKSID="+gammelid+" AND ID="+studnr; int antall = stmt.executeUpdate(sporring); String a ="Antall rader endret til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre oppdateringen\n\n"+e.getMessage() ); } } public void SlettOppmelding(DefaultListModel x,String studnr,String eksid) { svar =""; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "DELETE FROM EXAM_UTFORELSE WHERE EKSID="+eksid+" AND ID="+studnr; int antall = stmt.executeUpdate(sporring); String a ="Antall rader slettet til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre slettingen\n\n"+e.getMessage() ); } } public void SlettAlleOppmeldinger(DefaultListModel x, String eksid) { Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "DELETE FROM EXAM_UTFORELSE WHERE EKSID="+eksid; int antall = stmt.executeUpdate(sporring); String a ="Antall rader slettet til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre slettingen\n\n"+e.getMessage() ); } } public void SlettEnEksamen(DefaultListModel x,String eksid) { Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "DELETE FROM EXAM_EKSAMEN WHERE EKSID="+eksid; int antall = stmt.executeUpdate(sporring); String a ="Antall rader slettet til: "+ Integer.toString(antall); x.removeAllElements(); x.addElement(a); stmt.close(); } catch (SQLException e) { x.removeAllElements(); x.addElement("Klarer ikke å utføre slettingen\n\n"+e.getMessage() ); } } public void SlettKlasseOppmelding(DefaultListModel x,String[] studnr,String eksid) { PreparedStatement prepStmt; try { forbindelse.setAutoCommit(false); String sqlSetning = "DELETE FROM EXAM_UTFORELSE WHERE EKSID="+eksid+" AND ID= ?"; prepStmt = forbindelse.prepareStatement(sqlSetning); for (int i = 0; i < studnr.length; i++) { prepStmt.setString(1, studnr[i]); int n = prepStmt.executeUpdate(); } forbindelse.commit(); prepStmt.close(); } catch(SQLException e) { x.addElement("Klarer ikke å utføre slettingen\n\n"+e.getMessage()); } } public void StoreQuestions(ArrayList aList) { eDom_ExamQuestion temp; PreparedStatement prepStmt; try { String sqlSetning = "INSERT INTO EXAM_SPM VALUES(?,?,?,?,?,?,?,?,?)"; prepStmt = forbindelse.prepareStatement(sqlSetning); for(int i=0; i<aList.size(); i++) { temp = (eDom_ExamQuestion)aList.get(i); prepStmt.setString(1,temp.finnQID()); prepStmt.setString(2,temp.finnQuestion()); prepStmt.setString(3,temp.finnCorrect() ); prepStmt.setString(4,temp.finnAns1()); prepStmt.setString(5,temp.finnAns2()); prepStmt.setString(6,temp.finnAns3()); prepStmt.setString(7,temp.finnAns4()); prepStmt.setString(8,temp.finnAns5()); prepStmt.setString(9,temp.finnEksId()); int n = prepStmt.executeUpdate(); } forbindelse.commit(); prepStmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre registreringen\n\n"+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public void TomTabell() { Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "DELETE FROM EXAM_SPM WHERE eksid >= 0"; int antall = stmt.executeUpdate(sporring); stmt.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre slettingen\n\n"+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } } public ArrayList getQuestions(ArrayList AList) { eDom_ExamQuestion kladd; Statement stmt; try { stmt = forbindelse.createStatement(); String sporring = "SELECT * FROM EXAM_SPM"; ResultSet rs = stmt.executeQuery(sporring); while (rs.next()) { kladd = new eDom_ExamQuestion( rs.getString("SPMID"), rs.getString("SPM"), rs.getString("RIKTIG"), rs.getString("A"), rs.getString("B"), rs.getString("C"), rs.getString("D"), rs.getString("E"), rs.getString("EKSID")); AList.add(kladd); } rs.close(); } catch (SQLException e) { JOptionPane.showMessageDialog(null,"Klarer ikke å utføre hentingen\n\n"+e.getMessage(),"Feil!", JOptionPane.ERROR_MESSAGE ); } return AList; } } hva kan være galt? Endret 4. mars 2005 av phun-ky Lenke til kommentar
HighTower Skrevet 4. mars 2005 Del Skrevet 4. mars 2005 Hvis jeg ikke er helt på bær tur så tror jeg ikke programmet finner oracle driveren. Hvis det er riktig så har du kanskje oppgitt feil i classpath'en. du kan også legge driver .jar fila i Java_Home/lib tror jeg Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå