Avatar billede snowflake7 Nybegynder
15. juli 2002 - 12:16 Der er 13 kommentarer og
1 løsning

Web-side vil ikke genkende parametre fra java-klasse?

selvom jeg har importeret mine java-klasse og det burde virke så giver det stadig fejl. Når jeg kompilere siderne kommer den hele tiden med at den ikke kender Brugernavn,picture og Connection +ResultSet.
Hvad kan der være galt?
Synes ellers jeg skulle have skrevet det rigtige!?!
<%@page language ="java" import="usingjsp.Butik.*,java.sql.*,java.util.*,java.text.*" %>
<html>
<HEAD>
<TITLE>Web wheels</TITLE>
<LINK rel='stylesheet' type='text/css' href='Dokumenter/Skole/style.css'>
<style type="text/css">
<% // hent attributter fra sessionen
    String Brugernavn = (String) session.getAttribute("Brugernavn");
    String bruger = (String) session.getAttribute("bruger"); %>
<jsp:include page="BilledJSP.jsp" flush="true"/>

<%
if(session.getAttribute("picture")!=null)
{ %>
background: url("<%= (String) session.getAttribute("picture") %>");
<%} else { %>
background: url("167.gif");
<% } %>
</style>
</HEAD>
<body>


<h1>Indkøbskurv System</h1>
<p>
Du er lige nu logget in som <%= Brugernavn%>.
<p>
Vær sød at vælg et link:
<ul>
    <li><a href='SoegEfterVarerJSP.jsp'>
        Vis varer tilhørende <%= Brugernavn %></a>
    <li><a href='AddNewVarer.jsp'>
            Tilføj varer til kurv </a>
    <li><a href='EnterSpeditionOplys.jsp'</a>
    <li><a href='Order.html'>
            Udskriv regning</a>

</ul>   



</body>
</html>

<PRE>
<%!
int anderscount = 0; int idacount = 0;int  markcount = 0;int rufuscount = 0;int sissecount = 0;int steencount = 0;


String getPicture(String un,int number) {
  // Connection conn = null;
    //IConnectionPool pool = (IConnectionPool) application.getAttribute("connectionPool");
    try {
    //conn = pool.getConnection();
Class.forName("jdbc.odbc.JdbcDriver"); // indsæt din klasse
    Connection con = DriverManager.getConnection("jdbc:odbc:Pictures","","");// indsæt din URL, handle og
   

 
ResultSet rs = con.createStatement().executeQuery("SELECT pic FROM pictures WHERE user='"+un+"';");
  int i = 0;
    while (rs.next() && i != number) { i++; }
    String out = rs.getString("pic");
    rs.close(); con.close();
    return out;
    } catch (Exception e) { return "";}
}
%>
 
     
<%
if (Brugernavn.equals("anders")) {
anderscount++;
String picture = getPicture(Brugernavn,anderscount);
} else if (Brugernavn.equals("ida")) {
idacount++;
String picture = getPicture(Brugernavn,idacount);
} else if (Brugernavn.equals("mark")) {
markcount++;
String picture = getPicture(Brugernavn,markcount);
} else if (Brugernavn.equals("rufus")) {
rufuscount++;
String picture = getPicture(Brugernavn,rufuscount);
} else if (Brugernavn.equals("sisse")) {
sissecount++;
String picture = getPicture(Brugernavn,sissecount);
} else if (Brugernavn.equals("steen")) {
steencount++;
String picture = getPicture(Brugernavn,steencount);
}if (!picture.equals(""))
session.setAttribute( "picture", picture);
%>



</PRE>
Avatar billede disky Nybegynder
15. juli 2002 - 12:32 #1
post fejlen.

Du skulle virkeligt ryde op i dit html.

</html>

<PRE>

Nej efter </html> må der IKKE komme nyt html.
Din java kode skulle du også flytte ud i java klasser istedet, blanding af funktionalitet og design er en MEGET dum ting
Avatar billede snowflake7 Nybegynder
15. juli 2002 - 14:25 #2
<%@page language ="java" import="usingjsp.Butik.*,java.sql.*,java.util.*,java.text.*" %>
<html>
<HEAD>
<TITLE>Web wheels</TITLE>
<LINK rel='stylesheet' type='text/css' href='Dokumenter/Skole/style.css'>
<style type="text/css">
<% // hent attributter fra sessionen
    String Brugernavn = (String) session.getAttribute("Brugernavn");
    String bruger = (String) session.getAttribute("bruger"); %>
<jsp:include page="BilledJSP.jsp" flush="true"/>

<%
if(session.getAttribute("picture")!=null)
{ %>
background: url("<%= (String) session.getAttribute("picture") %>");
<%} else { %>
background: url("167.gif");
<% } %>
</style>
</HEAD>
<body>


<h1>Indkøbskurv System</h1>
<p>
Du er lige nu logget in som <%= Brugernavn%>.
<p>
Vær sød at vælg et link:
<ul>
    <li><a href='SoegEfterVarerJSP.jsp'>
        Vis varer tilhørende <%= Brugernavn %></a>
    <li><a href='AddNewVarer.jsp'>
            Tilføj varer til kurv </a>
    <li><a href='EnterSpeditionOplys.jsp'</a>
    <li><a href='Order.html'>
            Udskriv regning</a>

</ul>   



</body>
</html>
Det her er en jsp-side for sig selv, dvs. det andet kodet står ikke sammen med dette.
For øvrigt hvad mener du med: Din java kode skulle du også flytte ud i java klasser istedet, blanding af funktionalitet og design er en MEGET dum ting.
Hvor er der Java klasser?
Er lidt ny i Java-sproget!?!
Avatar billede disky Nybegynder
15. juli 2002 - 14:54 #3
alt den java kode du har i din jsp side skal du flytte ud i java klasser.
Her importerer du en eller flere klasser, som ikke er SUN standard:
usingjsp.Butik.*

ligeledes skal alt andet java kode ud af JSP'en og ind i java klasser.

hele fordelen ved java frem for asp,php osv er netop at man kan gøre det objektorienteret.

Hvis det her og alt efter:
<PRE>
<%!
int anderscount = 0; int idacount = 0;int  markcount = 0;int rufuscount = 0;int sissecount = 0;int steencount = 0;


String getPicture(String un,int number) {
  // Connection conn

kommer fra en anden jsp fil end det ovenover skal du have
<%@page language ="java" import="usingjsp.Butik.*,java.sql.*,java.util.*,java.text.*" %>

med igen.

imports gælder KUN den fil de er nævnt i, også selvom du includer osv.
Avatar billede snowflake7 Nybegynder
15. juli 2002 - 20:30 #4
Kan du ikke give mig et hint til hvordan de java klasser skal se ud?
Avatar billede r9 Nybegynder
17. juli 2002 - 19:46 #5
d00d7-35:

Det er bare en helt almindelig java klasse.
F.eks:

public class Hello {

    public String getTekst() {

        return "hello world";

    }
}





og den kan du så bruge sådan i din JSP side:

<jsp:useBean id="Hello" class="Hello" scope="session"/>

<html>
<head>
</head>
<body>

<%
String var = Hello.getTekst();
%>

<%=var%>

</body>
</html>


På den måde er design og buiness-logic pænt adskilt.
Avatar billede disky Nybegynder
17. juli 2002 - 20:04 #6
for at være lidt nøjeregnende

Så starter klasse objekter altid med lille navn:

altså
<jsp:useBean id="hello" class="Hello" scope="session"/>
og
String var = hello.getTekst();

:-)

Sorry kunne ikke nære mig
Avatar billede r9 Nybegynder
17. juli 2002 - 20:14 #7
dahm...

:-)
Avatar billede snowflake7 Nybegynder
17. juli 2002 - 21:24 #8
ØMMM, hey nu har jeg prøvet lidt selv. Er der mere der skal fjernes disky??

-------min jsp-side---------------------------------------------

<%@page language="java"  import="usingjsp.Butik.*,java.sql.*,java.util.*,java.text.*" %>
<PRE>
<jsp:useBean id="picture" class="Picture" scope="session"/>


<%!
int anderscount = 0; int idacount = 0;int  markcount = 0;int rufuscount = 0;int sissecount = 0;int steencount = 0;


String getPicture(String un,int number) {
  // Connection conn = null;
    //IConnectionPool pool = (IConnectionPool) application.getAttribute("connectionPool");
    try {
    //conn = pool.getConnection();
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // indsæt din klasse
      Connection con = DriverManager.getConnection("jdbc:odbc:Pictures","","");// indsæt din URL, handle og
   

 
      ResultSet rs = con.createStatement().executeQuery("SELECT pic FROM pictures WHERE user='"+un+"';");
    int i = 0;
    while (rs.next() && i != number) { i++; }
    String out = rs.getString("pic");
    rs.close(); con.close();
    return out;
    } catch (Exception e) { return "";}
}
%>
 
     
<%
if (Brugernavn.equals("anders")) {
anderscount++;
String var = picture.getPicture(Brugernavn,anderscount);
} else if (Brugernavn.equals("ida")) {
idacount++;
String var = picture.getPicture(Brugernavn,idacount);
} else if (Brugernavn.equals("mark")) {
markcount++;
String picture = getPicture(Brugernavn,markcount);
} else if (Brugernavn.equals("rufus")) {
rufuscount++;
String var = picture.getPicture(Brugernavn,rufuscount);
} else if (Brugernavn.equals("sisse")) {
sissecount++;
String var = picture.getPicture(Brugernavn,sissecount);
} else if (Brugernavn.equals("steen")) {
steencount++;
String var = picture.getPicture(Brugernavn,steencount);
}if (!picture.equals(""))
session.setAttribute( "picture", picture);
%>



</PRE>
--------------------------------------------------------------------------



min java klasse:
package usingjsp.Butik;



public class Picture
{   
    public String Brugernavn;
    public String Picture;
    int anderscount = 0; int idacount = 0;int  markcount = 0;int rufuscount = 0;int sissecount = 0;int steencount = 0; 
   
    public Picture()
    {
    }

 
     
   
 
       
    public String getPicture(String un,int number) { return Picture; }
    public void setPicture(String aPicture)
        { Picture= aPicture; }
       
}
Avatar billede disky Nybegynder
17. juli 2002 - 21:36 #9
skal det være rigtig find, skal tæt på alt java kode ud af jsp siden, så kun kald af get/set metoder er tilbage.

Deluxe løsningen er brug af custom tags men det er noget mere avanceret.
Avatar billede snowflake7 Nybegynder
18. juli 2002 - 21:23 #10
Kompileren skriver at: cannot resolve symbol
Brugernavn.
Men det burde den ikke skrive for i den Jsp-side,  hvor den bliver includeret hentes Brugernavn lige før den includeres:
String Brugernavn = (String) session.getAttribute("Brugernavn");
    String bruger = (String) session.getAttribute("bruger"); %>
<jsp:include page="BilledJSP.jsp" flush="true"/>





if (Brugernavn.equals("anders")) {
anderscount++;
String var = picture.getPicture(Brugernavn,anderscount);
} else if (Brugernavn.equals("ida")) {
idacount++;
String var = picture.getPicture(Brugernavn,idacount);
} else if (Brugernavn.equals("mark")) {
markcount++;
String picture = getPicture(Brugernavn,markcount);
} else if (Brugernavn.equals("rufus")) {
rufuscount++;
String var = picture.getPicture(Brugernavn,rufuscount);
} else if (Brugernavn.equals("sisse")) {
sissecount++;
String var = picture.getPicture(Brugernavn,sissecount);
} else if (Brugernavn.equals("steen")) {
steencount++;
String var = picture.getPicture(Brugernavn,steencount);
Avatar billede disky Nybegynder
18. juli 2002 - 21:38 #11
post hele den jsp side der laver balladen
Avatar billede snowflake7 Nybegynder
19. juli 2002 - 19:54 #12
<%@page language="java"  import="usingjsp.Butik.*,java.sql.*,java.util.*,java.text.*" %>
<PRE>
<jsp:useBean id="picture" class="Picture" scope="session"/>


<%!
int anderscount = 0; int idacount = 0;int  markcount = 0;int rufuscount = 0;int sissecount = 0;int steencount = 0;


String getPicture(String un,int number) {
  // Connection conn = null;
    //IConnectionPool pool = (IConnectionPool) application.getAttribute("connectionPool");
    try {
    //conn = pool.getConnection();
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // indsæt din klasse
      Connection con = DriverManager.getConnection("jdbc:odbc:Pictures","","");// indsæt din URL, handle og
   

 
      ResultSet rs = con.createStatement().executeQuery("SELECT pic FROM pictures WHERE user='"+un+"';");
    int i = 0;
    while (rs.next() && i != number) { i++; }
    String out = rs.getString("pic");
    rs.close(); con.close();
    return out;
    } catch (Exception e) { return "";}
}
%>
 
     
<%
if (Brugernavn.equals("anders")) {
anderscount++;
String var = picture.getPicture(Brugernavn,anderscount);
} else if (Brugernavn.equals("ida")) {
idacount++;
String var = picture.getPicture(Brugernavn,idacount);
} else if (Brugernavn.equals("mark")) {
markcount++;
String var =picture.getPicture(Brugernavn,markcount);
} else if (Brugernavn.equals("rufus")) {
rufuscount++;
String var = picture.getPicture(Brugernavn,rufuscount);
} else if (Brugernavn.equals("sisse")) {
sissecount++;
String var = picture.getPicture(Brugernavn,sissecount);
} else if (Brugernavn.equals("steen")) {
steencount++;
String var = picture.getPicture(Brugernavn,steencount);
}if (!picture.equals(""))
session.setAttribute( "picture", picture);
%>



</PRE>
Avatar billede snowflake7 Nybegynder
20. juli 2002 - 17:39 #13
disky>> her er den side der laver bøvl , håber du kan hjælpe mig.
Avatar billede snowflake7 Nybegynder
22. juli 2002 - 15:12 #14
disky hvor bliver du af?????????????
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