# Parameterübergabe an die TagKlasse



## max_07 (9. Mai 2008)

In einem einfachen Beispiel möchte ich vom Benutzer die Seiten *a* und *b* für ein Rechteck abfragen und die Fläche berechnen bzw. in einer JSP anzeigen. Dazu benutze ich eine Tag-Klasse (CalcAreaTag). Diese Klasse hat nur die *doStartTag*-Methode. Für den Austausch von Daten habe ich eine einfache Bean definiert. Meine Frage ist: Wie kann ich die Parameter an die CalcAreaTag-Klasse übergeben, ohne dass ich auf die JSP-Ausdrücke zurückgreife. Ich möchte nämlich sehen, ob es wirklich möglich ist, eine JSP-Seite frei vom Javacode zu halten, wenn man mit Taglibs arbeitet. 

In der JSP-Seite nutze ich die Bean: 


```
<jsp:useBean id="b" name="beans.RechteckBean" scope="session"/>
<jsp:setProperty name="b" property="*" />
```


Der folgende Aufruf (hard codiert) funktioniert: 


```
<calc:area seiteA="10" seiteB="20" />
```

Ich möchte aber die Werte aus der Bean mit der Aktion jsp:getProperty auslesen: 



```
<calc:area seiteA="<jsp:getProperty name="b" property="seiteA">" seiteB="<jsp:getProperty name="b" property="seiteB" />" />
```

Dies geht leider nicht. Offenbar kann ich die Parameter nicht so übergeben (Syntaxfehler). 

Oder, könnte ich die ganze Bean als Parameter übergeben (natürlich mit allen Anpassungen in *.tld usw.)? Oder, wie macht man so was, wenn man auf die JSP-Ausdrücke verzichten möchte?

Danke


----------



## maki (9. Mai 2008)

Nutze die Expression Language.


----------



## Guest (9. Mai 2008)

maki hat gesagt.:
			
		

> Nutze die Expression Language.



Ich kenne es von JSF. Wie würde dies mit JSP aussehen?


----------



## maki (9. Mai 2008)

Genauso.

Die EL ist funzt auch mit der JSTL.


----------



## Ralf Ueberfuhr (14. Mai 2008)

Hinweis: Der EL-Syntax bei JSTL/Custom Tags ist ${...}, bei JSF #{...}. Erst ab Java EE Version 5 wurden beide zusammengeführt, da laufen die #{...} unter Deferred Expressions. Ich denke, du benötigst ${...}.


----------

