Avatar billede mik28 Seniormester
21. maj 2004 - 11:01 Der er 12 kommentarer og
1 løsning

Hvorfor virker det ikke under Linux (tomcat)

Jeg fatter hat af det her. Det virker under Windows, men ikke under Linux som jeg gerne vil have det til. Koden er identisk og Tomcat versionerne er identiske. Jeg må jo have gjort noget forkert.

    vi.addElement(index_id);
       
                ResultSet rsmb2  = d.select("SELECT navn,adresse,telefonnr,klubnr,faxnr,hjemmeside,beskrivelse,billederef FROM baner WHERE ID=?", vi);
                ResultSet rsmb21 = d.select("SELECT p.byen,b.postnr FROM postnr p, baner b WHERE p.postnr=b.postnr AND b.ID=?", vi);
           
                if(rsmb21.next())
                {
               
                }
               
                if(rsmb2.next())
                {
               
                buffer.append("<table class=\"golfbane_tabel\">\n");
                buffer.append("<tr>\n");
                buffer.append("<td><img src=\"./images/"+rsmb2.getString("billederef")+"\" class=\"golfbane_billede\"></td>\n");
                buffer.append("<td>\n");
                buffer.append("    <table>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>"+rsmb2.getString("navn")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>"+rsmb2.getString("adresse")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>"+rsmb21.getString("postnr")+" "+rsmb21.getString("byen")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>Telefon "+rsmb2.getString("telefonnr")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td> Telefax "+rsmb2.getString("faxnr")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>"+rsmb2.getString("hjemmeside")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    <tr>\n");
                buffer.append("    <td>"+rsmb2.getString("beskrivelse")+"</td>\n");
                buffer.append("    </tr>\n");
                buffer.append("    </table>\n");                   
                buffer.append("</td>\n");
                buffer.append("</tr>\n");
                buffer.append("<tr>\n");
                buffer.append("<td colspan=\"2\">Nivå Golf har en 18 huller bane<br />\n");
                buffer.append("X3 par 3 huller<br />\n");
                buffer.append("X4 par 4 huller <br />\n");
                buffer.append("X5 par 5 huller</td>\n");
                buffer.append("</tr>\n");
                buffer.append("</table>\n");
                }
                else
                {
                buffer.append("Klubben fandtes ikke");
                }

Linux: http://web-oasen.dk/golf/

Windows: http://web-oasen.dk:8080/golf/

Tryk på baner
Fejlen opstår hvis

if(rsmb21.next())
{
}

kikser, fx. Smørum Golfcenter, som ikke har et validt postnr
Avatar billede mik28 Seniormester
21. maj 2004 - 11:02 #1
ideen er at jeg ikke vil kræve at der er et validt postnr :-)
Avatar billede mik28 Seniormester
21. maj 2004 - 11:05 #2
det er sikkert noget rod, men jeg kan ikke se hvordan jeg ellers skal slippe afsted med det
Avatar billede vedikkebedre Nybegynder
21. maj 2004 - 12:26 #3
Jeg kan ikke forstå hvorfor du gennemløber rsmb21.next() uden at gøre noget ved en ??

Men jeg vil nok prøve at instatierer dine variabler inden du tildele dem værdier. F.eks.:
ResultSet rsmb2;
ResultSet rsmb21;

rsmb2 = d.select("SELECT
rsmb21 = d.select("SELECT .....

og så inden jeg begynder på next() - cheke om der er resultater i mit resultset.

mvh
vedikkebedre
Avatar billede mik28 Seniormester
21. maj 2004 - 12:52 #4
Det gør jeg fordi jeg er nød til det, for at afgøre om der en en række i. Hvis jeg ikke gør det virker det slet ikke :-) Jeg vil lige prøve dit forslag
Avatar billede mik28 Seniormester
21. maj 2004 - 12:59 #5
Det hjalp ikke
Avatar billede mik28 Seniormester
21. maj 2004 - 13:01 #6
ResultSet rsmb2; 
                ResultSet rsmb21;
               
                rsmb2 = d.select("SELECT navn,adresse,telefonnr,klubnr,faxnr,hjemmeside,beskrivelse,billederef FROM baner WHERE ID=?", vi);
                rsmb21 = d.select("SELECT p.byen,b.postnr FROM postnr p, baner b WHERE p.postnr=b.postnr AND b.ID=?", vi);
                rsmb21.next();           
               
                if(rsmb2.next())
                {
Avatar billede mik28 Seniormester
21. maj 2004 - 13:03 #7
Problemet er jo at der ikke er noget i rsmb21 Resultsettet så jeg kan ikke kører next(); på det
Avatar billede mik28 Seniormester
21. maj 2004 - 13:04 #8
i windows får jeg bare null, null tilbage
Avatar billede mik28 Seniormester
21. maj 2004 - 13:04 #9
som jeg jo så bare kan lave om til whatever
Avatar billede mik28 Seniormester
21. maj 2004 - 13:16 #10
Det her virke :-)

ResultSet rsmb2; 
                ResultSet rsmb21;
               
                rsmb2 = d.select("SELECT navn,adresse,telefonnr,klubnr,faxnr,hjemmeside,beskrivelse,billederef FROM baner WHERE ID=?", vi);
                rsmb21 = d.select("SELECT p.byen,b.postnr FROM postnr p, baner b WHERE p.postnr=b.postnr AND b.ID=?", vi);
               
                String postnr;
                String by;
                    if(!rsmb21.next())
                    {
                    postnr = "ikke angivet";
                    by    = "ikke angivet";
                    }           
                    else
                    {
                    postnr = rsmb21.getString("postnr");
                    by    = rsmb21.getString("byen");
                    }
Avatar billede vedikkebedre Nybegynder
21. maj 2004 - 13:17 #11
Min pointe var nemlig at du ikke evt. ikke har noget i rsmb21 - så ville det ikke være bedre om du brugte first() ??

Det håndtere bedre om der ingen rows skulle være.

Mvh
vedikkebedre
Avatar billede mik28 Seniormester
21. maj 2004 - 13:19 #12
okay, tak for hjælpen. Ligger du et svar?
Avatar billede vedikkebedre Nybegynder
21. maj 2004 - 13:41 #13
svar
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