Tomas Hubalek napsal(a):
Ono je vubec otazka, proc to prochazeni je ve vieweru a ne v controlleru.
Spravne byste mel mit servlet, kde provedete tyto "vypocty" a do vieweru
poslete jen vysledek na zobrazeni.
V JSP se casto pouziva na prochazeni <c:forEach .../>
Mit v JSP strance scriptlety, to uz chce opravdu dobry duvod ;-)
Tom
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Jakub Příkazský
Sent: Thursday, October 16, 2008 1:47 PM
To: Java
Subject: JSP procházení kolekce
Dobrý den,
zde je fragment kódu pro procházení kolekce, používá syntaxi for cyklu
od Java 5 (Tomcat určitě používá Java 1.5, viz výpis pomocí parametru
version):
JVM Version: 1.5.0_16-b02
Server number: 5.5.20.0
JVM Vendor: Sun Microsystems Inc.
String parameters = "";
1. java.util.Map paramMap = request.getParameterMap();
2. if (!paramMap.isEmpty())
3. {
4. for(Object key : paramMap.keySet())
{
parameters =
parameters+"&"+key.toString()+"="+request.getParameter(key.toString());
}
}
na který dostanu následující chybu:
An error occurred at line: 4 in the jsp file: /index.jsp
Syntax error on token ":", ; expected
Pokud použiji pro procházení Iterátor, tak vše funguje *správně*:
java.util.Map paramMap = request.getParameterMap();
if (!paramMap.isEmpty())
{
java.util.Iterator iterator = paramMap.keySet().iterator();
while( iterator.hasNext() )
{
Object key = iterator.next();
parameters =
parameters+"&"+key.toString()+"="+request.getParameter(key.toString());
}
}
Nevíte v čem, je problém?
děkuji, Jakub
Děkuji za reakci.
URL přichází již escapované, takže to ošetřovat nemusím. Hned po složené
parametru se pošle redirect na určitou adresu a kontroler to řešit
nemusí. Asi to není úplně košer způsob a je možné řešit elegantněji také
JSTL tagem.
Na svou obhajobu podotýkám, že jsem to nepsal já :-)
děkuji, Jakub