© Copyright International Business Machines Corporation 2006. Alle Rechte vorbehalten.
© Copyright IBM Deutschland GmbH 2000, 2006. Alle Rechte vorbehalten.
Folgendes ist veraltet und wird nicht weiter zur Verwendung empfohlen:
- Clientdaten und zugeordnete Tools (wie zum Beispiel die Ansicht 'Clientdaten')
- Komponenten von Faces Client
<odc:dataGrid>
(Datenraster)<odc:webService>
(Web-Service)<odc:clientData>
<odc:clientBinder>
Von der Baumstruktur
<odc:tree>
und der Grafik<odc:graphDraw>
können jetzt Serverdaten verwendet werden.
Wenn Sie eine JSF-Anwendung einer älteren Version als Version 7 importieren, ohne die JSF-JAR-Dateien zu migrieren, und mit der Entwicklung der Anwendung fortfahren, werden Tags, die in Version 7 neu sind, nicht in die Projekt-JARs aufgenommen und sind nicht zur Laufzeit verfügbar. Stellen Sie sicher, dass JARs älterer Versionen als Version 7 migriert werden.
Das Tag
<odc:treeNodeAttr>
für Baumstruktursteuerelemente verwendet unterschiedliche Werte für das Attribut 'className', wenn es nicht an WDO-Daten, sondern an SDO-Daten gebunden wird. Nach der Migration eines Projekts von einem Server, der WDO verwendet (wie zum Beispiel WebSphere® Application Server 5.1) zu einem, der SDO verwendet (wie zum Beispiel WebSphere Application Server 6.1) ist die einfachste Möglichkeit zur Behebung dieses Problems, alle Baumstruktursteuerelemente zu löschen und neu zu erstellen.
Wenn
<hx:commandExButton>
in Version 6.0 den Typ Übergeben besaß und über eine Bezeichnung und nur ein einziges Hintergrundbild verfügte (zum Beispielvalue="submit" image="button.gif"
), wurde nur das Bild dargestellt (nicht das Bild und die Bezeichnung). Dieses Problem wurde in Version 7.0 behoben. Die Korrektur hat zur Folge, dass Schaltflächen, die sowohl über eine Bezeichnung als auch über ein einzelnes Hintergrundbild verfügen, bei Verwendung von Version 7.0 anders dargestellt werden als bei Verwendung von Version 6.0.Wenn
<hx:commandExButton>
den TypZurücksetzen
besaß und nur über ein einziges Hintergrundbild (oder ein Hintergrundbild und eine Bezeichnung) verfügte, wurde analog nur das Bild dargestellt und die Schaltfläche als Übergabeschaltfläche behandelt (der Typ der Schaltfläche wurde ignoriert). Dieses Problem wurde in Version 7.0 behoben. Die Korrektur hat zur Folge, dass Schaltflächen, für die der TypZurücksetzen
eingestellt wurde, jetzt die Seite zurücksetzen anstatt sie zu übergeben.
Die Attribute
style
undstyleClass
des Tags<jspPanel>
sind nicht mehr verfügbar. Die Attribute werden zur Darstellung der JSP-Anzeigekomponente verwendet.Wenn Sie eine JSF-Anwendung importieren, die in einer früheren Version dieses Produkts erstellt wurde, verursachen Tags des Typs
<jspPanel>
Fehlermeldungen. Zur Behebung der Fehler bearbeiten Sie die JSP-Quelle in der Sicht 'Quelle', und entfernen dort die Attributestyle
undstyleClass
aus allen Tags des Typs<jspPanel>
im Projekt.
Wenn Sie Projekte in den Arbeitsbereich importieren, die unter Verwendung einer früheren Version des Produkts erstellt wurden, kann es vorkommen, dass ein Dialog angezeigt wird, in dem darauf hingewiesen wird, dass zwar eine Faces-Unterstützung installiert wurde, aber keine Ziellaufzeit für das Projekt ausgewählt wurde. In manchen Fällen ist diese Warnung nicht präzise, und eine Laufzeit wird ordnungsgemäß definiert, nachdem der Migrationsprozess abgeschlossen ist. Um zu überprüfen, ob eine Laufzeit eingestellt ist, klicken Sie mit der rechten Maustaste auf Projekt > Eigenschaften, und wählen Ziellaufzeiten aus. Wenn ein Markierungsfeld neben einem definierten Server angezeigt wird, ist keine weitere Aktion erforderlich. Andernfalls wählen Sie einen der Server aus.
Hinweis: Diese Problemumgehung ist nicht erforderlich, wenn Clientdatenmodelle von demselben Seitendatenknoten oder Seitendatenknoten mit demselben Namen erstellt werden.
Wenn sich in Version 7.0 mehrere Clientdatenmodelle auf der Seite befinden, die aus denselben Bean-Klassen erstellt wurden, wird fälschlicherweise eine zweite Ecore- und EMap-Datei für das zweite Modell bei Generierung oder Neugenerierung erstellt. Beim Migrieren von Clientdatenprojekten müssen die Clientdatenmodelle in Übereinstimmung mit dem Migrationshandbuch neu generiert werden. Dies kann Auswirkungen auf migrierte Projekte mit Seiten haben, auf denen mehrere Clientdatenmodelle enthalten sind. Ein einfaches Szenario würde folgendermaßen aussehen:
- Erstellen Sie zwei Seitendaten auf der Basis der Bean 'java.util.Date', zum Beispiel myDate1 und myDate2.
- Erstellen Sie für beide Seitendaten ein Clientdatenmodell mit demselben Namen in der folgenden Reihenfolge: zuerst myDate1 und anschließend myDate2.
Problemumgehung: Damit eine Seite mit beiden Modellen arbeitet, löschen Sie myDate2.ecore und myDate2.emap aus dem Paket 'com.ibm.dynwdo4jsmediators' und den entsprechenden Einträgen in der Datei 'OdysseyBrowserFramework.properties'.
Von Clientdaten wird eine große Anzahl an JavaScripts™ auf einer Seite ausgegeben. In früheren Releases wurde das JavaScript nicht codiert. Dies bedeutete, dass bei der Verwendung von Clientdaten in mehreren Portlets und bei Verwendung derselben Seitendatenquelle die JavaScript-Ausgabe auf der Seite für alle Portlets dieselbe war.
Dieses Verhalten, bei dem zwei Portlets an die Clientdaten gebunden sind, könnte auch eine Bindung an dasselbe Clientdatenobjekt zur Folge haben (da der zweite Abschnitt des JavaScript den ersten überschreibt). Dies ermöglicht den beiden Portlets eine Interaktion, wobei eine Änderung in einem der beiden sich auch im anderen niederschlagen würde.
Dies ist problematisch, wenn Sie mehrere Portlets auf einer Seite haben möchten, die Clientdaten verwenden, die unabhängig voneinander arbeiten. JavaScript-Fehler treten auf, wenn zwei Portlets Clientdaten auf derselben Seite mit unterschiedlichen Seitendatenquellen verwenden. Dies kann auch dazu führen, dass eines der Portlets nicht wiedergegeben wird.
Zum Beheben dieser Probleme und zum Ausführen von Client-Daten-Portlets über WSRP müssen die JavaScript-Variablen der Clientdaten so codiert werden, dass sie für jedes Portlet eindeutig sind. Auf diese Weise können die JavaScript-Abschnitte der Clientdaten unabhängig voneinander arbeiten.
In Version 7.0 sind alle Clientdaten codiert.
Wenn Sie möchten, dass die Clientdaten auf einer Seite von mehreren Portlets gemeinsam genutzt werden, müssen Sie die Datei 'web.xml' mit den folgenden Kontextparametern aktualisieren:
<context-param>
<param-name>com.ibm.faces.ENCODE_DATA</param-name>
<param-value>false</param-value>
<description></description>
</context-param>Wenn Sie für <param-value> den Wert 'false' einstellen, inaktivieren Sie die Codierung der Clientdaten.
Verwendung des Parameters 'Encode_Data' und seine Auswirkung auf die Komponenten 'Diagramm' und 'Datenbaumstruktur' unter Verwendung der Seitendaten
Die Komponenten 'Diagramm' und 'Datenbaumstruktur' verwenden Seitendaten durch Platzieren eines XML-Datenobjekts auf der Seite. Die Seitendaten für 'Diagramm' und 'Datenbaumstruktur' sind sehr eng mit den Clientdaten für diese Komponenten verknüpft. Diese Daten sind standardmäßig codiert. Wenn Sie den unten in der Datei 'web.xml' dargestellten Kontextparameter (<context-param>) einstellen, der normalerweise zum Inaktivieren der Codierung von Clientdaten verwendet wird, wird auch die Codierung für 'Diagramm' und 'Datenbaumstruktur' inaktiviert. Dies hat keine Auswirkungen auf andere Komponenten, die die Seitendaten verwenden. Wenn Sie die Codierung für die Seitendaten inaktivieren, befinden sich auf einer Seite zwei Portlets, von denen jedes ein Diagramm oder eine Datenbaumstruktur enthalten kann, was wiederum Probleme verursachen kann. Diese Probleme können JavaScript-Fehler sein, und/oder die Anzeige eines der Portlets kann nicht ordnungsgemäß funktionieren.
Wie auch beim Codieren der Clientdaten, was ein Ausführen von zwei Portlets auf einer Seite unabhängig voneinander und eine Aktivierung der WSRP-Unterstützung ermöglicht, müssen Sie den folgenden Kontextparameter (<context-param>) aus der Datei 'web.xml' entfernen oder für <param-value> den Wert 'true' einstellen:
<context-param>
<param-name>com.ibm.faces.ENCODE_DATA</param-name>
<param-value>true</param-value>
<description></description>
</context-param>
Ganz oben auf der Seite befindet sich Folgendes:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Dies hat zur Folge, dass Web-Browser in den Standardmodus wechseln. Im Standardmodus werden die Elemente
HTML
undbody
an ihrem Inhalt ausgerichtet und dienen nicht dem Ausfüllen des Fensters, wie dies im Modus 'PL' (dem Standard-HTML-Modus) üblich ist.Wenn sich eine Anzeige mit Registerkarten eigenständig auf der Seite befindet und für ihre Höhe ein Prozentsatz eingestellt ist, hat dies Anzeigeproblem im Zusammenhang mit der Fensterhöhe zur Folge.
Um dieses Problem zu beheben, platzieren Sie die Anzeige mit Registerkarten in einem Container mit einer eingestellten Höhe oder ändern den Dokumenttyp ganz oben auf der Seite folgendermaßen:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Es treten Anzeigeprobleme mit Registerkarten im Standardmodus auf, wenn folgender Dokumenttyp eingestellt ist:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Sie können dies korrigieren, indem Sie den Dokumenttyp folgendermaßen ändern:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Vom Tag
<hx:convertDateTime>
wird kein korrektes JavaScript generiert, wenn als Kalendertyp 'Arabisch' eingestellt ist. Als Folge hiervon funktionieren clientseitige Prüfung, Eingabeaufforderung, Helper für Datumauswahlfelder und Minikalender nicht ordnungsgemäß. Wenn das generierte JavaScript initialisiert wird, wird ein Fehler angezeigt (oder die Komponente arbeitet nicht ordnungsgemäß).Problemumgehung: Aktivieren Sie nicht die clientseitige Prüfung oder Bedienerführung. Aktivieren Sie nicht den Helper für Datumauswahlfelder, wenn der arabische Kalender mit dem Konverter verwendet wird.
Stellen Sie beim Zielen auf eine WebSphere®-Serverlaufzeit sicher, dass die Projektfacette von WebSphere Web (Koexistenz) für das Webprojekt ausgewählt ist.
Problemumgehung: Wählen Sie die Facette auf der zweiten Seite des Assistenten 'Dynamisches Webprojekt' bei der Erstellung des Projekts oder auf der Seite 'Projektfacetten' des Projekteigenschaftendialogs aus, wenn das Projekt bereits vorhanden ist. Wenn Sie ein Webprojekt erstellen, das auf einen WebSphere-Server zielt, und falls Sie "Faces-Projekt" oder "Dynamisches Webprojekt mit XDoclet" in der Dropdown-Liste 'Konfigurationen' auf der ersten Seite des Projektassistenten auswählen, wird die Facette von WebSphere Web (Koexistenz) nicht automatisch ausgewählt. Sie können auf der nächsten Seite des Assistenten fortfahren, um diese Facette auszuwählen. Wenn Sie "<custom>" in der Liste 'Konfigurationen' auswählen, wird die Facette ordnungsgemäß ausgewählt, wenn auf eine WebSphere-Laufzeit gezielt wird.
Wenn
<hx:columnEx>
in<hx:dataTableEx>
verwendet wird und das vertikale Blättern aktiviert ist ('scrollSize' ist eingestellt), und wenn mindestens für eine Spalte in der Tabelle eine auf einem Prozentsatz basierende Breite eingestellt ist, kann es vorkommen, dass in der wiedergegebenen Tabelle die Spaltenüberschriften und der Spalteninhalt nicht aneinander ausgerichtet sind, wenn der Dokumenttyp der Seite vom Browser als 'W3C Standard' und nicht als 'W3C Transitional' interpretiert wird. Dies ist zum Beispiel der Fall, wenn im Dokumenttyp die Deklarationloose.dtd
enthalten ist.
Problemumgehung: Legen Sie feste Spaltenbreiten (keine prozentbasierten) fest, oder stellen Sie sicher, dass der Dokumenttyp alsTransitional
interpretiert wird (entfernen Sie zum Beispiel die Deklaration 'loose.dtd').
Wenn in
<hx:panelDialog>
für die Positionierung (horizontal oder vertikal) der Wertrelativ
eingestellt ist und sich das als Basis für die Positionierung verwendete Tag (das Tag, zu dem der Dialog relativ positioniert ist) auf einer Seite befindet, auf der das Tag angezeigt wird, und die Seite nicht ganz nach oben geblättert wurde, wenn der Dialog angezeigt wird, kann es vorkommen, dass die Position nicht ordnungsgemäß ist (in der Regel ist die Position zu weit oben oder zu weit links).Problemumgehung: Wenn eine relative Positionierung erforderlich ist, stellen Sie sicher, dass das Basis-Tag sich in der Nähe des oberen Rands der Seite befindet. Verwenden Sie alternativ einen der anderen Positionierungstypen.
Wenn sich eine Datentabelle (entweder
<h:dataTable>
oder<hx:dataTableEx>
) in einer Anzeige befindet, in der AJAX aktiviert ist, und die Zeilenauswahl aktiviert ist (<hx:inputRowSelect>
ist in die Tabelle eingeschlossen), funktionieren die Markierungsfelder in der Auswahlspalte nicht ordnungsgemäß, wenn die Tabelle erneut über AJAX abgerufen wird. Sie funktionieren (nur) bei der ersten Darstellung ordnungsgemäß.Problemumgehung: Zu diesem Problem gibt es derzeit keine Problemumgehung. Zeigen Sie die Tabelle nicht in einer Anzeige an, in der AJAX aktiviert ist.
<hx:ajaxExternalRequest>
kann im Internet Explorer (IE) nicht ordnungsgemäß funktionieren, wenn das Quellenattribut, das zum Angeben der ID der Anzeige verwendet wird, die auf der Zielseite abgerufen werden soll, von der ID der Anzeige abweicht, der<hx:ajaxExternalRequest>
auf der Quellenseite zugeordnet ist. Beispiel:<hx:panel id="panel1"><hx:ajaxExternalRequest source="panel999" /><hx:panel>
. Das Problem tritt nur im Internet Explorer auf. Es tritt nur auf, wenn die Zielanzeige ein Gitter, ein Rahmen oder ein Layout ist (eine Anzeige, die als HTML-Tabelle wiedergegeben wird).Problemumgehung: Stellen Sie sicher, dass die IDs identisch sind, aber schließen Sie die Zielanzeige in eine Anzeigengruppe (panelGroup) ein.
Das Attribut
inProgresss
für<hx:ajaxRefreshRequest>
,<hx:ajaxRefreshSubmit>
,<hx:ajaxExternalRequest>
und<hx:inputHelperTypeahead>
funktioniert nicht. Die Einstellung eines Werts für dieses Attribut hat keine Auswirkungen. Stellen Sie den Wert nicht ein, um die Kompatibilität mit zukünftigen Releases sicherzustellen.
Wenn
<hx:inputHelperTypeahead>
einem Eingabefeld zugeordnet wird und wenn ein Leerzeichen und/oder Interpunktionszeichen wie ein Et-Zeichen oder ein Prozentzeichen in das Feld eingegeben wird, sind in der Vorschlagsliste, die erstellt wird, keine "Übereinstimmungen" enthalten, in denen diese Zeichen vorkommen. Wenn ein Benutzer zum Beispiel '%' eingibt, werden keine Übereinstimmungen zurückgegeben; dies gilt auch dann, wenn im "Wörterverzeichnis" Wörter enthalten sind, die mit '%' anfangen.
Eine Änderung des Verhaltens mancher HTML-DOM-Attribute, die in Firefox 1.5.0.8 begonnen hat, kann dazu führen, dass ein
panelDialog
bei der Wiedergabe in Firefox nicht ordnungsgemäß positioniert wird. Das Problem tritt meistens auf, wenn ein Dialog relativ positioniert wird. Es kann aber auch auftreten, wenn die Größe des Hauptteilinhalts "kleiner als" die Höhe des Browserfensters ist (wenn also auf der Seite nicht vertikal geblättert werden kann).Problemumgehung: Wenn Sie so viel Inhalt zum Hauptteil hinzufügen (sogar in Form von Leerzeichen als <Füllzeichen> mit fester Höhe), dass die vertikale Schiebeleiste immer auf der Seite angezeigt wird, können Sie das Problem beheben (dies hängt von den exakten Abmessungen des Browserfensters und des Inhalts ab).
<hx:pagerDeluxe>
wird nicht in der korrekten HTML-Formatierung wiedergegeben, wenn als Darstellungsklasse eine andere Einstellung als die StandardklassepagerDeluxe
festgelegt wird. Die Schaltflächen im Pager werden immer mit den Klassennamen wiedergegeben, die den Standardklassennamen in ihnen verwenden.Problemumgehung:
- Ändern Sie den Klassennamen nicht in eine andere Einstellung als 'pagerDeluxe'.
- Passen Sie das Cascading Style Sheet (CSS) so an, dass die Klassennamen berücksichtigt werden, die auf den Schaltflächen wiedergegeben werden, wenn ein anderer Klassenname verwendet wird.