If you created projects in WebSphere® Studio V5.1.x containing Faces Client Components in JavaServer Faces JavaServer Pages (JSPs), you must migrate the runtime resources of the Faces Client Components to the latest levels.
Project can not be built due to <class_name>.java could not be read.The files could not be read because the Client Data mediator classes in the V5.1.x project may contain special characters which were not encoded, whereas the mediator classes in Rational Application Developer V6.0 encode these characters. These error messages will stop once you regenerate your Client Data by following the steps described above. However, before you follow the steps to migrate your project containing Faces Client Components, you must first delete the Client Data mediator files from the project you loaded in V6.0 so that your workspace can be built. To delete the Client Data mediator files:
In some instances, you may get a mediator generation failed message. To correct this problem, edit the OdysseyBrowserFramework.properties file and delete the entries for the EMAP_FILES and ECORE_FILES properties and try again.
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap com\\ibm\\dynwdo4jsmediators/orders.emapyou should delete com\\ibm\\dynwdo4jsmediators/orders.emap from the entry. The entry would now appear as:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap
After regenerating the Client Data mediator classes for the JSPs in your project, there will still be some mediator classes left that will not compile. These are mediators for schema elements no longer used in Service Data Objects (SDOs) in V6.0. These mediators will have the naming convention *_DataGraphSchema_wdo4js_*.java and *_RootDataObject_wdo4js_*.java. Delete these mediator classes from your project to prevent these compile errors.
After the migration completed successfully, restore the original contents of the OdysseyBrowserFramework.properties file.
String Diff = getClientData1().getDiffStr(); if (DiffProcessor.Synch(getRoot(), Diff) == true) return ""; return "failure";
The find and getId methods are used internally by the generated DiffHandlers. For your custom DiffHandlers, you can implement empty methods just to comply with the interface. Those methods will not be called by the framework.
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() }