# Frameset durch Tabelle ersetzten - Probleme mit jsp:include



## hrbaer (14. Nov 2012)

Hi,

ich versuche mich gerade daran in einer gewachsenen Anwendung ein Frameset durch eine Tabelle zu ersetzen. Mein Problem dabei ist, dass ich die dynamischen Frameinhalte nicht analog zur bestehenden Frame-Mechanik nachladen kann.

*Konkret*:

<frameset rows="100,*" framespacing="0" border="0" frameborder="0">
	<frame name="head" src="<%=response.encodeURL(kopfURL)%>" scrolling="no" marginwidth="0" marginheight="0" noresize=""/>
	<frameset cols="199,*" framespacing="0" border="0" frameborder="0">
		    <frame name="nav" src="<%=response.encodeURL(naviURL)%>" scrolling="no" marginwidth="0" marginheight="0" noresize=""/>
		<frame name="main" src="<%=response.encodeURL(inhaltURL)%>" scrolling="auto" marginwidth="0" marginheight="0" noresize=""/>
	</frameset> 
</frameset>

Würde ich dieses Konstrukt 1zu1 übernehmen ergibt sich daraus:
<table border="1" height="100%" width="100%" cellpadding="0" cellspacing="0">
<colgroup>
	<col width="100">
	<col width="4*">
</colgroup>
<tr height="100px">
	<td colspan="2"><jsp:include page="<%=response.encodeURL(kopfURL)%>" /></td>
</tr>
<tr>
	<td width="199px"><jsp:include page="<%=response.encodeURL( naviURL)%>" /></td>
	<td><jsp:include page="<%=response.encodeURL( inhaltURL)%>" /></td>
<tr>
</table>

Das Problem: Die zu inkludierenden Pages werden zwar noch ermittelt, werden aber nicht gefunden, da versucht wird relativ zum aktuellen Verzeichnis die Inhalte zu suchen. Beim Frameset war das "komischerweiße" egal?!

Wenn ich die zu inkludierenden Inhalte durch z.B. eine statische Seite ersetze welche im gleichen Verzeichnis liegt und einfach mit <jsp:include page="test.jsp" /> referenziere funktioniert das grundsätzlich.

Kann mir hier jemand auf die Sprünge helfen was ich falsch mache, bzw. wie ich die Inhalte analog zum Frameset eingebunden bekomme?!

Danke im Voraus.


----------



## JimPanse (14. Nov 2012)

inclusion mechanism


----------



## hrbaer (14. Nov 2012)

Danke dafür. Eine Frage hätte ich aber noch:
Wenn der zu ersetzende Content-Frame nicht mittels einer Page (jsp/html) befüllt wird, sondern über eine action (z.B. ../action/usecase1) aufgerufen wird und der in der struts-config definierte Forward über die Zielseite entscheidet, kann ich das auch über ein jsp:include abbilden? Soweit ich das bis dato verstanden habe geht das nämlich nicht mehr, oder?

Danke im Voraus.


----------



## JimPanse (15. Nov 2012)

JSP + Struts na da kramst du ja echt die Dinosaurier der Java Webentwicklung raus... Mein erstes Projekt war mit Struts aber das ist schon x Jahr her...

Wenn ich mich soweit richtig erinnern kann, sind dynamische Includes mit JSP nicht möglich weil zu kompilier Zeit die Information für den include benötigt wird - sonst steht ein leerer String in der URL. 

Vielleicht hilft das:  jspcontrols-struts

Ansonsten bin ich raus - ist einfach zu lange her bzw. habe ich in späteren Projekten lieber (wenn möglich) Stripes als ActionBean-Framework verwendet statt Struts.


----------

