Upgrade to 2.7
From MapbenderWiki
Contents |
Upgrade to 2.7
english
deutsch
Erfahrungen beim Upgrade eines produktiven Mapbender (2.5.2) auf 2.7.0 und 2.7.1
Aus der Sicht eines Admin (nicht Entwickler, nicht User).
Notwendige Anpassungen
SQL-Scripte
Anpassungen an den Scripten im Ordner '/resources/db/pgsql/UTF-8/update/'.
update_2.6.2_to_2.7rc1_pgsql_UTF-8.sql
gefixt in /branches/2.7 und trunk
Die Anweisung in Zeile 2688 (missing foreign key in layer_load_count) funktioniert nur, wenn vorher die Tabelle 'layer_load_count' bereinigt wird. Die Einträge zu Layern, die nicht mehr existieren, müssen entfernt werden, bevor der foreign key eingerichtet wird:
DELETE FROM layer_load_count WHERE not exists ( SELECT layer.layer_id FROM layer WHERE layer_load_count.fkey_layer_id = layer.layer_id );
Siehe Ticket 813 - update_2.6.2_to_2.7rc1_pgsql_UTF-8.sql wurde gefixt in --astroid 12:54, 30 May 2011 (UTC)
update_2.7rc1_to_2.7rc2_pgsql_UTF-8.sql
gefixt in /branches/2.7 und trunk
Zeile 459:
INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type)
VALUES('Administration_DE', 'gui_owner', 'file css', '../css/administration_alloc.css', 'file css' ,'file/css');
Ändern von 'Administration_DE' auf 'Administration'. Siehe Ticket 812
initWmc
Symtome:
- PopUp-Meldung beim Laden der GUI.
- Eintrag im PG-log: 'Spalte "mb_meetingpoint_id" existiert nicht ..'
Siehe Ticket 782
Als Workarround das Element in der GUI deaktivieren:
UPDATE gui_element
SET e_public = 0
WHERE e_id = 'initWmc';
toggleModule
Target für toggleModule wird nicht umgestellt.
Gui lädt nicht. Fehlermeldung im FireBug:
"init_selArea1 is not defined" oder "init_featureInfo1 is not defined".
Die genannten Adressen sind Funktionen die im toggleModule im Target eingetragen sind. Diese Adressen nicht nicht mehr gültig, werden aber von den Update.SQL nicht umgestellt.
Als Notlösung das Modul vorübergehend daaktivieren:
UPDATE gui_element
SET e_public = 0
WHERE e_id = 'toggleModule';
Siehe Ticket 795
Ticket gelöst.
Das Modul ist überarbeitet worden. Man muss nun die ID des "zu aktivierenden" Moduls im "Target Feld" eintragen.
Zum verschieben also "pan1".
siehe den kompletten Änderungssatz im trunk hier
mb_myPOI
Trenner zwischen Text und Koordinatenwerten ist nicht mehr "|" (Pipe) sondern "___" (3 Tiefstriche).
Wird weiter das alte Link-Format verwendet, dann wird der POI in der linken oberen Ecke des Mapframe angezeigt.
savewmc / loadwmc
Symtome:
- GUI lädt nicht vollständig
- Meldung im FireBug: "$(savewmcHtml).dialog is not a function"
Lösung siehe Ticket 786
Neue Funktionen
tabs
tabs: Volle Höhe nutzen.
Die neue element-var 'expandable=1' nutzt die volle Höhe der GUI wenn ein Register aufgeklappt wird.
Zeilenumbruch in Metadaten
Im Eintrag "WMS_ABSTRACT" des Mapfile konnte man bisher den html-Tag '<br>' verwenden. Dies wurde über die Capabilities übermittelt und führte dann auch zu einem Zeilenumbruch bei der Darstellung der Metadaten im Mapbender.
Nun wird "br" (ohne spitze Klammern) in den Metadaten angezeigt. Er erfolgt kein Zeilenumbruch.
UpdateWMC
Das Update Script nach 2.7 wirft einige Fehler falls Dateneinträge in der Tabelle mb_user_wmc vorhanden sind:
Als Folgefehler werden weitere WMC Tabellen nicht erzeugt:
Eine genauere Beschreibung und eine Lösung befindet sich im trac unter:
ticket 819:
LoadWMC
Damit ein Anwender die in der Datenbank gespeicherten WMC auch wieder löschen kann, muss in den Element-Vars zum LoadWMC die Variable "deleteWmc" auf 1 gesetzt werden. Diese steht nach dem Update auf 0.
UPDATE gui_element_vars
SET var_value = '1'
WHERE fkey_e_id = 'loadwmc'
AND var_name = 'deleteWmc'
AND fkey_gui_id
IN ( SELECT DISTINCT fkey_gui_id
FROM gui_gui_category
WHERE fkey_gui_category_id in (4,5,6,7) -- eigene Liste
);
Analog zum Veröffentlichen des WMC: publishWmc=1
Das Laden von WMC, die mit Mapbender 2.5 gespeichert wurden funktioniert nur teilweise, der TreeGDE bleibt leer.
Schöne neue Bilder
Die Standard-Bilder auf den Schaltflächen stammen seit Jahren aus dem Verzeichnis '../img/button_blink_red/'. Die Bilder haben einen grauen Hintergrund und sind 24x24 Pixel groß. Sie sind auch noch enthalten in den meisten Muster-GUIs.
Für die Digitalisierung (Muster: gui_digitize) wird eine Gruppe von Schaltflächen im Tab 'Digitalisierung' angezeigt. Eine weitere Gruppe von Schaltflächen (zum Selektieren der Objekte) werden aus '/conf/digitize_default.conf' gesteuert. Beide Gruppen von Schaltflächen stammen aus dem Ordner '../img/button_blue_red/'.
Um keinen Stil-Mix in einer GUI oder GUIs mit verschiedenen Stilen zu haben, bietet es sich an, für alle anderen Schaltflächen ebenfalls den Pfad zu ändern.
Dabei ist zu beachten, dass die Bilder aus diesem Verzeichnis eine Größe von 28x28 Pixeln haben. Die Angaben 'width' und 'height' müssen daher ebenfalls angepasst werden, sonst werden die Bilder im Browser verkleinert und sehen nicht mehr so gut aus. Durch die neue Breite kann es notwendig werden, auch die Positionen (left) neu zu arrangieren, damit sich die Schaltflächen nicht überlappen.
ungelöste Probleme
Die noch nicht als Bug im Trac eingetragen wurden, weil noch nicht klar ist, ob es sich um Bugs oder falsche Konfiguration handelt.
enlargetreewidth
Elemente in tabs sollen sich bei MouseOver verbreitern. enlargetreewidth funktioniert nicht.
Sanduhr
Wenn das Laden eine WMS abbricht, dann bleibt in der Mitte des Mapfrage eine Sanduhr kleben. Die bekommt man nicht mehr weg. Tritt auf, wenn der WMS mal nicht verfügbar ist. Man kann das simulieren mit der esc-Taste währen des Ladens des WMS.
log
Einträge in /mapbender/log/mb_error_jjjj_mm_tt.log:
,ERROR: exists(): The session variable: addwms_showWMS is not set!' ,ERROR: exists(): The session variable: addwms_zoomToExtent is not set!' ,ERROR: exists(): The session variable: WMC is not set!' ,ERROR: exists(): The session variable: WMS is not set!' ,ERROR: exists(): The session variable: LAYER is not set!' ,ERROR: exists(): The session variable: FEATURETYPE is not set!' ,ERROR: exists(): The session variable: GEORSS is not set!' ,ERROR: app AAAA idstr
Wiederholt sich ständig.
