# jsp und xhtml



## lehmo (15. Jan 2005)

Ich würde gern den html code einer jsp seite, in xhtml convertieren. Dabei habe ich folgendes Problem wie binde ich die java tag wie z.B. <jsp:include ... > oder sonstigen Javacode ein?

Lehmo


----------



## foobar (15. Jan 2005)

> <jsp:include page="bla.htm"/>


Das ist doch wohlgeformtes XML, also kannst du es auch in einer XHTML-Seite verwenden.


----------



## lehmo (16. Jan 2005)

Und was ist mit dem restlichen Javacode?
Wie zB.

<%
	Integer p_id = (Integer)pageContext.getAttribute("randomPicture");
	if(p_id.intValue() > -1)
	{
%>

??? Ich habe schon versucht den ganzen Html code Xhtml konform zu konvertieren aber am Ende wird in der Seite der Javacode ignoriert!


----------



## foobar (16. Jan 2005)

> Und was ist mit dem restlichen Javacode?


Scriptlets haben in einer JSP sowieso nichts verloren. Mach das doch über Customtags oder eine andere Taglibrary.



> ??? Ich habe schon versucht den ganzen Html code Xhtml konform zu konvertieren aber am Ende wird in der Seite der Javacode ignoriert!


Poste doch mal den Code deiner JSP.

Hast du den Content-type auch richtig gesetzt?


----------



## lehmo (16. Jan 2005)

```
<%@ taglib uri="/opaTLD" prefix="opaTag" %>
<html>
<head>
<link rel="stylesheet" type="text/css" href="layout.css">
<title>Opas Fotoalbum</title>
</head>
<body>
<table width="805" >
<tr>
<td><jsp:include page="header.jsp" flush="true"/></td>
</tr>
</table>
<table width="800" >
  
  <tr>
  <td valign="top">
  	<table>
		<tr>
    		<td><table class="login" width="250">
					<tr>
						<td><jsp:include page="login.jsp" flush="true"/></td>
					</tr>
				 </table>
			</td>			
		</tr>
		<tr>
    		<td><table class="login" width="250">
					<tr>
						<td><jsp:include page="menu.jsp" flush="true"/></td>
					</tr>
				 </table>
			</td>
  		</tr>
	</table>
  </td>
    <td colspan="4">&</td>
    <td valign="top"><table class="logintable" width="550"><tr>
	<td align="center"><p align="center"><h2 align="center">Welcome to Opas Fotoalbum</h2>
    					<p align="center">&</p><p align="center">&</p><p align="center">
    					<opaTag:OpaTag />

<%
	Integer p_id = (Integer)pageContext.getAttribute("randomPicture");
	if(p_id.intValue() > -1)
	{
%>
    <jsp:include page="votePicture.jsp" flush="true">
    <jsp:param name="P_Id" value="<%=p_id.intValue()%>" />
    <jsp:param name="included" value="true" />
    </jsp:include>

<%
	}
%>
    		©2004-2005 Fredrik Henricsson & Mike Lehmann</p>
	</td></tr></table></td>
    </td>
  </tr>
  <tr><td colspan="6" align="center" class="footer" ><jsp:include page="footer.jsp" flush="true" /></td></tr>
  
</table>

</body>

</html>
```
[/code]


----------



## foobar (16. Jan 2005)

Sieht nicht sehr nach XHTML aus. Der Kopf sollte ungefähr so aussehen:

```
<?xml version="1.0" encoding="ISO-8859-1"?>
<%@ page language="java"  contentType="application/xhtml+xml "%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr
<html xmlns="http://www.w3.org/1999/xhtml">
```


----------



## Bleiglanz (17. Jan 2005)

schau in die Examples

speziell dafür (xml erzeugen) gibts eigene Syntax

<jsp:scriptlet statt <%

die Seiten sollen dann die endung .jspx haben


----------

