Wenn Sie in WebSphere Studio V5.1.x Projekte erstellt haben, die Faces Client-Komponenten in JavaServer Pages (JSPs) von JavaServer Faces enthalten, müssen Sie die Laufzeitressourcen der Faces Client-Komponenten auf den jeweils neuesten Stand migrieren.
Projekt kann nicht geladen werden, da <klassenname>.java nicht gelesen werden konnte.Die Dateien konnten nicht gelesen werden, da die Mediatorklassen der Clientdaten im V5.1.x/Projekt unverschlüsselte Sonderzeichen enthalten kann, während die Mediatorklassen in Rational Application Developer V6.0 diese Sonderzeichen verschlüsseln. Diese Fehlernachrichten werden nicht mehr angezeigt, sobald Sie Ihre Clientdaten anhand der vorstehend beschriebenen Schritte erneut generiert haben. Bevor Sie jedoch diese Schritte ausführen, um Ihr Projekt mit Faces Client-Komponenten zu migrieren, müssen Sie zunächst die Mediatordateien der Clientdaten aus dem in V6.0 geladenen Projekt löschen, damit Ihr Arbeitsbereich erstellt werden kann. Um die Mediatordateien der Clientdaten zu löschen, gehen Sie wie folgt vor:
In einigen Fällen wird die Nachricht Mediatorgenerierung ist fehlgeschlagen angezeigt. Um dieses Problem zu korrigieren, müssen Sie in der Datei 'OdysseyBrowserFramework.properties' die Einträge für die Eigenschaften EMAP_FILES und ECORE_FILES löschen und den Vorgang wiederholen.
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap com\\ibm\\dynwdo4jsmediators/orders.emapIn diesem Fall müssen Sie com\\ibm\\dynwdo4jsmediators/orders.emap aus dem Eintrag löschen. Der Eintrag würde nun wie folgt aussehen:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap
Nachdem Sie die Mediatorklassen der Clientdaten für die JSPs in Ihrem Projekt erneut generiert haben, gibt es immer noch Mediatorklassen, die nicht kompiliert werden können. Hierbei handelt es sich um Mediatoren für Schemaelemente, die in Servicedatenobjekten (SDOs) in V6.0 nicht mehr verwendet werden. Diese Mediatoren folgen der Namenskonvention '*_DataGraphSchema_wdo4js_*.java' und '*_RootDataObject_wdo4js_*.java'. Löschen Sie diese Mediatorklassen aus Ihrem Projekt, um diese Kompilierungsfehler zu vermeiden.
Stellen Sie nach erfolgreichem Abschluss der Migration den ursprünglichen Inhalt der Datei 'OdysseyBrowserFramework.properties' wieder her.
String Diff = getClientData1().getDiffStr(); if (DiffProcessor.Synch(getRoot(), Diff) == true) return ""; return "failure";
Die Methoden 'find' und 'getId' werden intern von den generierten Diff-Handlern verwendet. Sie können leere Methoden für Ihre angepassten Diff-Handler implementieren, damit diese mit der Schnittstelle funktionieren. Diese Methoden werden vom Framework nicht aufgerufen.
public interface DiffHandler { public void handle(DiffInfo Diff) throws DiffException, Exception; public Object find (DiffInfo Diff) throws DiffException, Exception; public String getId (DiffInfo Diff, boolean Original); }
public class DiffInfo { public char getCrud() public DataObject getCurrent() public String getEClassName() public DataObject getOriginal() public String getPropertyName() public DiffInfo getParent() }