Używam kafelków Apache do szablonów, a część szablonu jest tekstem nagłówka. Ten tekst zależy od sekcji, do której należy strona. Każda strona zawiera komponent bean, a tekst nagłówka jest tworzony przy użyciu właściwości tego komponentu bean. Komponent bean będzie mieć inną nazwę dla każdej strony. Tak, w moim pliku JSP Chciałbym mieć coś takiego:Wyrażenia EL w definicji płytki Apache nie są przetwarzane
<div>${myBean.id} - ${myBean.name}</div>
chcę dostać ten wyraz w definicji płytek i próbowałem to:
<definition template="/WEB-INF/tiles/layout/mytemplate.jsp">
<put-attribute name="title" expression="${myBean.id} - ${myBean.name}" />
</definition>
I w szablonie zrobić:
<div class="title-header"><tiles:insertAttribute name="title" /></div>
Ale wynik jest nieprzetworzony wyrażenie EL:
<div>${myBean.id} - ${myBean.name}</div>
Kod został uproszczony, aby treść tego postu była zwięzła, ale jest to dokładnie to, co próbuję zrobić. Są również powody, dla których staram się to zrobić w ten sposób.
Dowolny pomysł, dlaczego wyrwanie EL nie jest przetwarzane?
Dzięki
UWAGA: Jestem całkiem nowy, JSP i Apache Tiles więc nie mogły stosować poprawną terminologię.
Czy zadaję głupie pytanie, czy jest tylko nikt, kto może mi pomóc? –
Wygląda dobrze, czy możesz przesłać swoją konfigurację płytek? Czy próbowałeś ocenić $ {myBean.id} bezpośrednio na stronie JSP, aby sprawdzić, czy rzeczywiście tam jest? Zajrzyj tutaj: http://tiles.apache.org/2.1/framework/tutorial/advanced/el-support.html, czy posiadasz tile-el.jar na swojej ścieżce klas? Aby włączyć obsługę EL, musisz ustawić parametr org.apache.tiles.evaluator.AttributeEvaluator, –