Code van VisualAge for Java naar de Visual Editor migreren

In dit onderwerp vindt u informatie over het migreren van Java-code vanuit VisualAge for Java.

Als u wijzigingen aanbrengt in een Java-component met de Visual Editor, wordt de broncode bijgewerkt en zijn de wijzigingen beschikbaar. De wijzigingen in de broncode zijn te zien in set-methoden die de waarden van eigenschappen wijzigen. Sommige informatie die door de Visual Editor wordt gebruikt, wordt niet in eigenschappen opgeslagen, omdat deze alleen in de ontwerpfase nodig is. Tot deze informatie behoort de positie van een Java-bean op het vrijevormoppervlak.

Om deze informatie op te slaan, zodat de Visual Editor opnieuw geopend kan worden met de Java-bean op dezelfde positie, worden de gegevens in een commentaargedeelte geplaatst op de regel waarop de Java-bean wordt gedeclareerd. U ziet in de volgende instructie een JFrame-component op positie 16,17:

private javax.swing.JFrame ivjJFrame = null; // @jve:visual-info
decl-index=0 visual-constraint="16,17"

Het commentaargedeelte met de positie van de component is niet vereist. Als er geen commentaargedeelte aanwezig is, wordt de standaardpositie gebruikt bij het openen van de Visual Editor. De standaardpositie is alleen van toepassing op Java-beans op het hoogste niveau die geen container van elkaar zijn en is niet van invloed op de positie van componenten in een container. De positie van componenten in een container wordt bepaald door de layoutmanager van de container en de begrenzingen of beperkingen die op de component van toepassing zijn.

In VisualAge for Java is de positie van de toplevel Java-beans (ook vrijevormonderdelen genoemd) niet aanwezig in de broncode. Als u een bestand migreert dat is geschreven met VisualAge voor Java's Visual Composition Editor (VCE), worden standaardposities gebruikt. Als u de informatie over de posities wilt bewaren, kunt u een migratieprogramma gebruiken dat in VisualAge voor Java is geladen. Het migratieprogramma maakt de klassen opnieuw, waarbij de posities in commentaaropmaak worden opgeslagen. U kunt de recentste versie van de conversietool voor VisualAge for Java Visual Composition Editor-toepassingen ophalen op www.ibm.com/support/us/

Dit migratieprogramma is beschikbaar als tijdelijke fix die kan worden geïnstalleerd met VisualAge for Java's FixManager (in Werkgebied > Extra > FixManager). Het hulpprogramma migreert en exporteert klassen die zijn ontwikkeld met VisualAge for Java's VCE in een indeling die geschikt is voor Visual Editor. Na het installeren van de patch kunt u VCE-code genereren/Exporteren... selecteren in het voorgrondmenu van projecten, pakketten of klassen. Door deze optie te selecteren, start u een wizard die de code voor klassen kan regenereren als deze eerder met de VCE zijn opgeslagen. De vrijevormposities worden opgeslagen in de commentaaropmaak die door Visual Editor wordt gebruikt.

Als u over verbindingen beschikt, kunt u de code eerst opnieuw genereren door de VCE-codegenereringsoptie Binnenklasse gebruiken voor ieder event te selecteren voordat u het hulpprogramma start. Sommige klassen kunnen echter niet worden geconverteerd naar deze stijl door een programmafout in VisualAge for Java. In dit geval moet u de VCE-optie Eén binnenklasse gebruiken voor alle events gebruiken voor het genereren van de code. De wizard biedt ook de mogelijkheid om de klassen naar een directory te exporteren nadat het genereren van de code voltooid is. De Visual Editor voor ondersteuning van Java-events ontleedt de VCE-codegenereringsstijl Geen binnenklassen gebruiken niet.


VCE-patroon 1


VCE-patroon 2

Omdat de VCE een eigen model van de Java-beans en hun eigenschappen en relaties onderhoudt, wordt de bron altijd opnieuw gegenereerd waarbij eerst de grote lijnen worden gevolgd en daarna de details. Wijzigingen in de broncode door een gebruiker worden aangegeven met vooraf gedefinieerde gebruikerscodepunten in de broncode, bijvoorbeeld de commentaaregels //begin code gebruiker {1} en //einde code gebruiker. Om aan te geven dat de methoden voor Java-beans telkens opnieuw worden gegenereerd als de code wordt gegenereerd, is de regel /* WAARSCHUWING: DEZE METHODE WORDT OPNIEUW GEGENEREERD. */ toegevoegd aan het commentaar in de methode. Het migratieprogramma heeft een optie voor het verwijderen van dit door de VCE gegenereerde commentaar uit de geëxporteerde code (niet de broncode in VisualAge for Java), omdat het buiten de VCE verder niet van toepassing is. Als het commentaar op gebruikerscommentaarpunten echter is verwijderd uit de broncode, kan de gebruikerscode niet worden gebruikt in VisualAge for Java. De reden is dat het commentaar de gebruikerscode beschermt tegen overschrijven.

De Visual Editor gebruikt geen blijvend objectmodel voor de Java-beans en de bijbehorende eigenschappenwaarden en relaties, maar ontleedt de broncode telkens opnieuw. Hierdoor is het commentaar voor gebruikerscodepunten en voor het opgeven van methodegenerering niet meer van toepassing en er kunnen vrij wijzigingen in de broncode worden aangebracht. Als de wijzigingen ook de structuur van de broncode wijzigen en de Visual Editor de structuur van de Java-beans niet meer herkent, worden ze mogelijk niet weergegeven in de view Ontwerp of de view Java-beans. De broncode wordt echter niet aangepast aan de stijl van de editor en de wijzigingen blijven behouden.

(C) Copyright IBM Corporation 1999, 2004. Alle rechten voorbehouden.