02. januar 2007 - 21:40Der er
35 kommentarer og 2 løsninger
<bean:define> forståelsesproblem
Jeg sidder og bokser med at forstå hvordan bønner virker. Hvis jeg vil have en bønne på en side (index.jsp) som jeg vil give en værdi og bruge den værdi på en anden side (index2.jsp). Hvordan gør jeg så det?
Det er korrekt det du gør. Når du bruger <bean:define ....> definerer du en bønne, baseret på en variabel du kun har til stede i den sammen hæng hvor du definerer den, således at variablen er tilstede i hele session scope. Det du måske mangler på din bønne er property og value. Sagt på en anden måde; <bean:define ... > bruges til at afdække en variabel i et andet scope, end der hvor den er tilstede.
Det skal vist være sådan her i stedet: <jsp:useBean id="myfirstjavabean" scope="session" class="myfirstjava.myfirstjavabean" /> <-- test er fjernet! (din struktur har jo ikke noget test classe kun en myfirstjavabean klasse i pakken myfirstjava)
<% String name ="Mik"; myfirstjavabean.setvariable(name);<-- test ændret til myfirstjavabean (der skal henvises til id - ikke til klasse) %>
An error occurred at line: 18 in the jsp file: /index.jsp Generated servlet error: /opt/tomcat/jakarta-tomcat-5.0.28/work/Catalina/web-oasen.dk/org/apache/jsp/index_jsp.java:72: cannot resolve symbol symbol : variable minbonne location: class org.apache.jsp.index_jsp minbonne.setVariable(name);
Jeg er ikke så godt inde i brugen af jsp-bean tags, så jeg ved ikke om det er muligt at angive en parameter der, der laver et tjek. Men ellers kan du jo bare lave et tjek i toppen af index2.jsp: tjek om minejavabeans.getVariable() er null, og hvis den er det, så redirecte til index.jsp.
Du kan selvfølgelig selv lavet et tag som har den egenskab. Men ellers er en mulighed jo struts, hvor du har logic tags, og med disse kan tjekke om en værdi er sat. Derudover giver struts dig også MVC pattern, og derved en skøn adskilligelse.
Synes godt om
Ny brugerNybegynder
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.