Foros de discusión

Problem mit Oracle Maps

Rolf Buchholz, modificado hace 12 años.

Problem mit Oracle Maps

New Member Mensajes: 2 Fecha de incorporación: 21/01/11 Mensajes recientes
Hallo zusammen,

Ich nutze die Liferay -Community-Edition 5.2.3. um GIS-Daten anzuzeigen, die durch die Oracle-Fusion-Middleware 11g, den MapViewer, bereitgestellt werden.

Für die Client-Seite stellt Oracle dabei verschiedene APIs zur Verfügung, darunter eine Java-API und eine JavaScript API, auch bekannt als Oracle Maps. Mit der Java-API kann ich problemlos auf die Server URL, etwa http://localhost:7001/mapviewer zugreifen und die generierten Maps mittels JSF-Portlets darstellen.

Mit der JavaScript API klappt das leider nicht. Da diese API aber sehr viel leistungsstärker ist, würde ich sie gerne im Verbund mit Liferay einsetzen.
Dass es sich dabei um eine Liferay-Thematik handelt, schliesse ich aus der Tatsache, dass ich, wenn ich die Daten über einen bloßen Tomcat oder gar eine pure HTML-Seite abfrage, eine Map zurückgeliefert bekomme, sobald ich dasselbe aber aus dem Portlet heraus versuche, passiert nichts.

Das letzte, was ich sehen kann ist, dass ein XmlHttpRequest an den Applikation-Server, also den MapViewer, abgesetzt wird. Es gibt keine Antwort darauf, keine Fehlermeldung, nichts.

Kann jemand helfen? Gibt es vielleicht einen Liferay-Konfigurationschalter oder dergleichen, mit dem diese Kommunikation unterbunden wird? Ich nehme an, der XmlHttpRequest deutet auf Ajax hin.

Leider habe ich in den Foren dazu nichts gefunden.

Vielen Dank im Voraus.
thumbnail
Armin Cyrus Dahncke, modificado hace 12 años.

RE: Problem mit Oracle Maps

Junior Member Mensajes: 81 Fecha de incorporación: 12/08/08 Mensajes recientes
Hallo,

ich kenne mich zwar in Liferay 5.2.3 nicht mehr so richtig aus, ist schon ein paar releases her ;). Noch weniger mit JSF basierten Frameworks, aber da Ihrer Bescheibung nach eine normale Webapplikation die Map zurückliefern kann sollten Sie mal debuggen und sich die Response von dem Portlet im Debugger anschauen.
Wenn ich in einem Portlet zum Bespiel eine Resource (Bild, XML usw. ) zurückgeben möchte verwende ich eine spezielle ResourceURL, die ich direkt adressieren und aufrufen kann.
thumbnail
Olaf Kock, modificado hace 12 años.

RE: Problem mit Oracle Maps

Liferay Legend Mensajes: 6403 Fecha de incorporación: 23/09/08 Mensajes recientes
Könnte es an der Same Origin Policy liegen?

Die geschilderten Umstände reichen auf jeden Fall nicht zu einer detaillierten Analyse aus - ich wüsste nicht, was sonst gegen ein Funktionieren sprechen würde.

Ach so: Und zu einem Update würde ich auch raten. 5.2.3 ist inzwischen doch schon recht alt.
Rolf Buchholz, modificado hace 12 años.

RE: Problem mit Oracle Maps

New Member Mensajes: 2 Fecha de incorporación: 21/01/11 Mensajes recientes
Hallo zusammen,

danke schon mal für die Antworten.

Dass wir Liferay in der Version 5.2.3 benutzen, liegt an unserem Kunden. Wir haben schon mal die EE in der Version 6 empfohlen, aber das Samenkorn muss erst noch aufgehen.

Debuggen ist leichter gesagt als getan. Vielleicht fehlen mir auch die Kenntnisse. Aber ich führe JavaScriptCode aus:

<script language="Javascript" src="http://localhost:7001/mapviewer/fsmc/jslib/oraclemaps.js"></script>

<script language=javascript>
function showMap()
{
var baseURL = "http://localhost:7001/mapviewer";
var mapCenterLon = 53.635;
var mapCenterLat = 10.006;
var mapZoom = 3;
var mpoint = MVSdoGeometry.createPoint(mapCenterLon,mapCenterLat,8307);
var mapview = new MVMapView(document.getElementById("map"), baseURL);
mapview.addMapTileLayer(new MVMapTileLayer("hhairport.TL_HH_AIRPORT_GROUND"));
mapview.setCenter(mpoint);
mapview.setZoomLevel(mapZoom);
mapview.display();
}
</script>

Wenn das geschehen ist, positioniert oraclemaps.js das erzeugte Bild in einem <div id="map" style="left:0px; top:0px; width:100%; height:60%"></div>.

Theoretisch jedenfalls.

Ich kann das bis zum XmlHttpRequest im FireBug für Mozilla nachverfogen, aber dann hört es halt einfach auf.

Gruß Rolf
thumbnail
André Bunse, modificado hace 12 años.

RE: Problem mit Oracle Maps

Junior Member Mensajes: 85 Fecha de incorporación: 16/03/12 Mensajes recientes
Hallo Rolf,

bin zwar nicht mit Oracle Maps vertraut, dafür aber sehr gut mit JavaScript und OpenLayers.

Vorab eine kurze Info zu den Script-Tags:

Das Attribut "language" ist deprecated und führt im Strict-Mode zu Problemen.

Ich vermute mal, dass es beim zweiten Tag zu einem Copy&Paste-Problem gekommen ist oder?

Wie auch immer, ich würde vorab schon mal die Tags umstellen auf:

<script type="text/javascript" ..< code></pre><br /><br /><div class="quote-title">Rolf Buchholz:</div><blockquote><br />Debuggen ist leichter gesagt als getan. Vielleicht fehlen mir auch die Kenntnisse. Aber ich führe JavaScriptCode aus:<br /><br />&lt;script language=&#34;Javascript&#34; src=&#34;http://localhost:7001/mapviewer/fsmc/jslib/oraclemaps.js&#34;&gt;&lt;/script&gt;<br /><br />&lt;script language=javascript&gt;<br /></blockquote><br /><br />Punkt 2 wäre das Attribut &#34;id&#34; der Map. Ich meine gelesen zu haben, dass für eigene HTML-Elemente immer als<br />Prefix der Portlet-Namespace (&lt;portlet:namespace /&gt;) verwendet werden sollte.<br /><br />Keine Ahnung, ob das bereits zur Lösung beiträgt, aber vielleicht können wir uns dem eigentlichen Problem annähern.<br />Da ich ein OpenLayers-Portlet in Planung habe, werde ich bald in einer ähnlichen Situation sein.<br /><br /><br />Keep on coding<br />André</script>