Avatar billede trp79 Nybegynder
14. juli 2005 - 18:02 Der er 11 kommentarer og
1 løsning

Hvordan behandler man normal date i en bønne?

Hejsa
Nu når egenskaber i en javabønne jo kan være af enhver type, men en webserver "kun" kan håndterer string, byte, short, integer, long, float, double, boolean og char, hvordan plejer man så at arbejde med fx en date. Plejer man bare at bruge string i bønnen eller er der andre muligheder?

  public void setFoedselsdato(Date fd)  {foedselsdato = fd;}
  public Date getFoedselsdato()        {return foedselsdato;}

Mvh
Torben
Avatar billede arne_v Ekspert
14. juli 2005 - 18:23 #1
Normalt vi jeg bare lade den være Date.

Men jeg formoder at du mener at setProperty tagget ikke kan sætte sådan en !?
Avatar billede trp79 Nybegynder
14. juli 2005 - 20:35 #2
jeps lige præcis, så man vil normalt læse den som en string og gemme den i db som date?
Avatar billede arne_v Ekspert
14. juli 2005 - 20:49 #3
måske - men jeg vil lige prøve et par ideer
Avatar billede arne_v Ekspert
14. juli 2005 - 21:09 #4
stjernen virker ikke

men

<%@ page import="java.text.*" %>
<%!
DateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
%>
...
<jsp:setProperty name="dinid" property="dinproperty" value="<%=df.parse(request.getParameter("ditfelt"))%>"/>

ser ud til at virke hos mig
Avatar billede trp79 Nybegynder
15. juli 2005 - 08:36 #5
Det ser super ud Arne. Jeg prøver det lige af imorgen :)
Avatar billede trp79 Nybegynder
16. juli 2005 - 15:04 #6
Så har jeg kigget lidt på det, men syntes ikke helt jeg kan få det til at spille. Den brokker sig over: Attribute: foeddselsdato"))% is not a valid attribute name

********ny_bruger.jsp********

<%@ page import="java.text.*" %>
<%!
DateFormat df = new SimpleDateFormat("dd-mm-yyyy");
%>
<jsp:useBean id="login" class="ausumnet.Login" scope="session"/>
<jsp:setProperty name="login" property="billede"/>
<jsp:setProperty name="login" property="brugernavn"/>
<jsp:setProperty name="login" property="efternavn"/>
<jsp:setProperty name="login" property="email"/>
<jsp:setProperty name="login" property="fastnet"/>
<jsp:setProperty name="login" property="foedselsdato" value="<%=df.parse(request.getParameter("foedselsdato"))%>"/>
<jsp:setProperty name="login" property="fornavn"/>
<jsp:setProperty name="login" property="mailBanan"/>
<jsp:setProperty name="login" property="mailForum"/>
<jsp:setProperty name="login" property="mobil"/>
<jsp:setProperty name="login" property="password"/>

<html>
  <head>
    <title>Ny bruger</title>
  </head>
  <body>
 
    <h1>Registrering af ny bruger</h1>
   
    <form action="ny_bruger.jsp" method="get">
    <table>
      <tr>
        <td>Ønsket brugernavn</td>
        <td><input type="TEXT" name="brugernavn" value="<%= login.getBrugernavn() %>"></td>
      </tr>
      <tr>
        <td>Email</td>
        <td><input type="TEXT" name="email" value="<%= login.getEmail() %>"></td>
      </tr>
      <tr>
        <td>Fornavn</td>
        <td><input type="TEXT" name="fornavn" value="<%= login.getFornavn() %>"></td>
      </tr>
      <tr>
        <td>Efternavn</td>
        <td><input type="TEXT" name="efternavn" value="<%= login.getEfternavn() %>"></td>
      </tr>
      <tr>
        <td>Mobil tlf.nr.</td>
        <td><input type="TEXT" name="mobil" value="<%= login.getMobil() %>"></td>
      </tr>
      <tr>
        <td>Fastnet tlf.nr.</td>
        <td><input type="TEXT" name="fastnet" value="<%= login.getFastnet() %>"></td>
      </tr>
      <tr>
        <td>Fødselsdato(dd-mm-åååå)</td>
        <td><input type="TEXT" name="foedselsdato" value="<%= login.getFoedselsdato() %>"></td>
      </tr>
      <tr>
        <td>Mail ved banan</td>
        <td><input type="CHECKBOX" name="mailBanan" value="<%= login.getMailBanan() %>"></td>
      </tr>
      <tr>
        <td>Mail ved forumindlæg</td>
        <td><input type="CHECKBOX" name="mailForum" value="<%= login.getMailForum()%>"></td>
      </tr>
      <tr>
        <td>Billede</td>
        <td><input type="FILE" name="billede" value="<%= login.getBillede() %>"></td>
      </tr>
      <tr>
        <td>Indtast sikkerhedskode</td>
        <td><input type="TEXT" name="sikkerhedskode"></td>
      </tr>
    </table>
    <% //Ekstra sikkerhedskode som bruger skla aflæse fra billede
      String sikkerhedskode = (String) session.getAttribute("sikkerhedskode");
      if (sikkerhedskode==null) {
        sikkerhedskode ="" + (int) (Math.random()*100000);
        session.setAttribute("sikkerhedskode", sikkerhedskode);
      }
      //Billedet henter sin text fra sessionsattribut "billedetekst".
      session.setAttribute("billedtekst", "    Sikkerhedskoden er: "+sikkerhedskode);
    %>
    <img src="billede_sikkerhedskode.jsp">
      <input type="SUBMIT" name="handling" value="opret bruger">
    </form>
   
    <font color="red">
    <%
    String handling = request.getParameter("handling");
    if ("opret bruger".equals(handling)) {
      if (!sikkerhedskode.equals(request.getParameter("sikkerhedskode"))) {
        %>Du har tastet en forkert sikkerhedskode. <%
        } else if (login.opretBruger()) {
        %><jsp:forward page="log_ind.jsp" /> <%
        } else {
          %>Bruger kunne ikke oprettes. Prøv med et andet brugernavn og tjek email.<%
          }
    }
    %>
    <%= login.getMeddelelse() %>
    </font>
   
    <br>
    <a href="log_ind.jsp">Gå til login</a>
     
  </body>
</html>


Er det iøvrigt grimt at udbygge get og set metoderne i bønnen således at der parse´s her istedet? Altså så man blot sender en streng som parameter og den så i fx setmetoden parses til en date...
Avatar billede arne_v Ekspert
16. juli 2005 - 23:08 #7
jeg tror at den brokker sig over at den ikke kan finde getFoedselsdato og setFoedselsdato
Avatar billede trp79 Nybegynder
17. juli 2005 - 21:34 #8
Jeg har disse i Login.java:
public void setFoedselsdato(Date fd)  {foedselsdato = fd;}
public Date getFoedselsdato()        {return foedselsdato;}

det er foedselsdato i request.getParameter den brokker sig over.
<jsp:setProperty name="login" property="foedselsdato" value="<%=df.parse(request.getParameter("foedselsdato"))%>"/>
Det forstår jeg ikke lige :(
Avatar billede arne_v Ekspert
17. juli 2005 - 21:39 #9
mystisk

det jeg postede virkede hos mig

måske skal du krybe til korset og bare bruge String
Avatar billede trp79 Nybegynder
18. juli 2005 - 09:55 #10
Ja det gør jeg bare, men det er da godt nok underligt. hvis jeg skrev...value="<%=df.parse(request.getParameter("TESTfoedselsdato"))% så fik jeg nemligfejl samme fejl, altså Attribute: TESTfoeddselsdato"))% is not a valid attribute name.

Nå, men smid du bare et svar Arne - du har trods alt fortalt mig, hvad du ville gøre :)
Tak for hjælpen, mvh
Torben
Avatar billede arne_v Ekspert
18. juli 2005 - 17:15 #11
meget mystisk

husker du at genstarte applikation når du har rettet i .class filer ?

og svar
Avatar billede trp79 Nybegynder
18. juli 2005 - 17:54 #12
Ja, jeg har sågar genstartet computeren et par gange. Desværre uden held.
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