Hallo allerseits, also ich hab` ein Problem mit dem Lebenszyklus von JSF. Sprich wenn ich mein XHTLM-File so anpasse wie ich es möchte bekomme ich entweder oben genannten Fehler soder mein JBoss sagt mir so etwas wie "Window output Stream is already in use" ... kann mir da jemand helfen?
Was ich machen möchte ist eine Page basteln, welche einmal eine Google-Map darstellt, danaben dann in einer Tabelle alle Pin-Objekte (also die Standpukte auf der Karte) aufgelistet werden, und in einer großen Tabelle unter diesen beiden sollen alle Informationen zum jeweils angeklickten Objekt auf der Map angezeigt werden. Soweit so gut, die Daten bekomme ich auch alle aus meinem zu Grunde liegenden Bean, nur eben mit der Darstellung klappt es nicht.
Ich poste mal meine bislang noch spartanische xhtml-Variante. und hoffe ihr könnt mir helfen.
... Wenn ich versuche das unten ganz unten im Code angeführte img einzubauen bekomme ich bereits die Fehlermeldung. Auch wenn ich versuche das Laden der Daten, welches bislang erst beim anklicken des Links durchgeführt wird, in den Quelltext einzubauen um es gleich beim Laden der Seite anzuzeigen, geht garnix mehr
Was ich machen möchte ist eine Page basteln, welche einmal eine Google-Map darstellt, danaben dann in einer Tabelle alle Pin-Objekte (also die Standpukte auf der Karte) aufgelistet werden, und in einer großen Tabelle unter diesen beiden sollen alle Informationen zum jeweils angeklickten Objekt auf der Map angezeigt werden. Soweit so gut, die Daten bekomme ich auch alle aus meinem zu Grunde liegenden Bean, nur eben mit der Darstellung klappt es nicht.
Ich poste mal meine bislang noch spartanische xhtml-Variante. und hoffe ihr könnt mir helfen.
... Wenn ich versuche das unten ganz unten im Code angeführte img einzubauen bekomme ich bereits die Fehlermeldung. Auch wenn ich versuche das Laden der Daten, welches bislang erst beim anklicken des Links durchgeführt wird, in den Quelltext einzubauen um es gleich beim Laden der Seite anzuzeigen, geht garnix mehr
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:rich="http://richfaces.org/rich"
xmlns:gmap="http://labs.jboss.com/jbossrichfaces/ui/gmap"
xmlns:a4j="http://richfaces.org/a4j">
<f:view>
<h:form>
<h:panelGrid columns="2">
<rich:gmap id="gm" lat="9.5391" lng="99.9405" zoom="11" gmapVar="map"
gmapKey="......."
style="width:500px;height:400px" />
<h:panelGroup>
Controls:<br />
<a href="javascript:void(0);" onclick="map.hideControls();return false;">Remove</a>
<a href="javascript:void(0);" onclick="map.showControls();return false;">Show</a>
<br /><br />
Type:<br/>
<a href="javascript:void(0);" onclick="map.setMapType(G_NORMAL_MAP);return false;">Normal</a>
<a href="javascript:void(0);" onclick="map.setMapType(G_SATELLITE_MAP);return false;">Satellite</a>
<a href="javascript:void(0);" onclick="map.setMapType(G_HYBRID_MAP);return false;">Hybrid</a>
<br /><br />
Zoom:<br/>
<a href="javascript:void(0);" onclick="map.zoomIn();return false;">Zoom ++</a>
<a href="javascript:void(0);" onclick="map.zoomOut();return false;">Zoom --</a>
<br /><br />
<a href="javascript:void(0);" onclick="showSchlumsch();return false;">der Author</a>
<br /><br />
<a href="javascript:void(0);" onclick="zoomIt();return false;">zoom_von_Bean</a>
<br /><br />
<a href="javascript:void(0);" onclick="initializePoints();return false;">a4j-Test</a>
</h:panelGroup>
</h:panelGrid>
<script>
function zoomIt() {
map.setZoom(#{Bean.zoom});
}
function createMarker(point,html) {
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
function showSchlumsch() {
var point = new GLatLng(50.604977,10.710382);
map.setCenter(point);
var marker = createMarker(point,'turn2stone: <a target="_blank" href="http://www.schlumsch.eu">schlumsch</a>');
map.setZoom(16);
map.addOverlay(marker);
}
function setCenter(lag, lat, zoom) {
map.setCenter(new GLatLng(lag, lat), zoom);
var ulp = new GPoint(lag,lat);
var ul = G_NORMAL_MAP.getProjection().fromPixelToLatLng(ulp,zoom);
}
</script>
<script type="text/javascript">
//<![CDATA[
function createPoints(data) {
for (var i = 0; data.length; i++) {
var point = new GLatLng(data[i].latitude, data[i].longitude);
map.setCenter(point);
map.setZoom(6);
map.addOverlay(createMarkerWithIdentifier(point, data[i].beschreibung));
}
}
function createMarkerWithIdentifier(point, beschreibung) {
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(beschreibung);
});
return marker;
}
//]]>
</script>
<a4j:jsFunction name="initializePoints" data="#{Bean.hotels}"
oncomplete="createPoints(data)">
</a4j:jsFunction>
</h:form>
</f:view>
<!--
<h:form>
<h:graphicImage value="../WEB-INF/html/1.jpg" alt="turn2stone" width="32" height="32"/>
</h:form>
</f:view>
-->
</ui:composition>