Hej hej Hej! Nej tyvärr. Tja! Tack för hjälpen Andreas, det har iofs löst sig på annat sätt ändå. Appletproblem
Det är så att jag har skrivit ett litet testprogram som kopplar upp sig mot en SQL-databas - det fungerar fin-fint. Kan skriva SQL-satser och exekvera dem och får upp svaret i en textarea. Problemet kommer när jag gör om mitt program till en applet. Jag använder samma kod men helt plötsligt fungerar det inte. Den har äntligen börjat instansiera drivern, men efter att den gjort det hoppar den över resten av satserna och kopplar därför aldrig upp sig mot databasen. Inte heller öppnas det fönster som ska öppnas efter att inloggning skett.
Finns det någon som vet vad detta kan bero på. Jag skickar gärna koden om det underlättar (den är lite för lång att klistra in här... försöker med några korta passager ändå - få se om det gör er klokare...)
}else
if (e.getSource() == bLoggaIn){
//Läser in värdena som behövs i inloggningen
sID = tID.getText();
sPW = tPW.getText();
sDB = cDB.getItem(cDB.getSelectedIndex());
db = new Databas();
koppling = db.loggaIn(sID, sPW, sDB);
dolj(wLogin);
oppnaDatabasFonster();
skrivUtFelen(koppling);
//lasInDBListor();
//visaInformation();
}
public Connection loggaIn(String id, String pw, String odbcVal){
Connection con = null;
//loggar in på sql-server med den givna informationen
try{
//sökvägen till drivern anges inom paranteserna
//man måste skapa en ny instans av drivern - därav .newInstance()
Class.forName(minDriver);
//Skapar uppkopplingen
//minURL = jdbc:odbc:
//odbcVal = namnet på min odbcuppkoppling som definierar min databas
con = DriverManager.getConnection(minURL + odbcVal, id, pw);
//ser om det finns några varningar
}catch (Exception e){}
return con;
}
Mvh EmmaSv: Appletproblem
I egenskap av moderator så har jag verkligen försökt att hitta ett svar på ditt problem.. Men.. Har tyvärr inte hittat något, och har inte någon lösning själv heller.. =(
Lyckades du få ordning på det till slut?
MvH
BennySv: Appletproblem
Har kommit förbi ett av problemen men min connection fungerar fortfarande inte.
Felmeddelandet är något i stil med att det är fel driver, vilket jag tycker är konstigt så jag har:
1. Använt samma driver (och program) fristående och det har fungerat
2. Tom registrerat en extra classpath till drivern inne i VJ++ (detta då den inte verkade hitta Windows classpth def.
//EmmaSv: Appletproblem
Problemet är att Applets har stora säkerhetsrestriktioner omkring sig. Detta för att skydda användaren mot att ngn obehörig kan komma åt användarens data bla, bla bla.
En applet körs ifrån ngt kallas en "sandbox". Inuti denna sandlåda finns det inte mkt en applet kan göra, tyvärr!
För att kringå problemet kan man antingen köra med trusted applets eller editera säkerhets policyn för varje klinet som skall accessa denna databas.
Mitt råd är att kanske låta appleten kommunicera genom en servlet till databasen!
/AndreasSv: Appletproblem
Behövde inte ha det som applet.
//Emma