Basic Customization > User Interface Customization > Constructing Wizards > Building Wizards to Edit a Single Object > Customization Points
  
Customization Points
Creating Your Form Processor and Form Processor Delegates
Two form processor classes are available for edit wizards:
com.ptc.core.components.forms.DefaultEditFormProcessor - for nonWorkable objects

com.ptc.core.components.forms.EditWorkableFormProcessor- for Workable objects
These classes may be extended as necessary to meet your purposes.
Both of these processors do the following:
preProcess() method
same as the preprocess() method of the CreateObjectFormProcessor except that it creates a TypeInstance for a persisted object
doOperation() method
calls super.doOperation() to call the doOperation() methods of any FormProcessorDelegates registered for the wizard
calls PersistenceHelper.manager.save() to store the Persistable in the database
The setResultNextAction() method is deprecated. Instead, the FormProcessor should return a list of the Oids that were affected by the action (if any), and let the components displayed in the UI request updates from the server, as necessary.
If you are extending an existing Windchill business class, there may be a processor specific to that class that you should use or extend instead of the DefaultEditFormProcessor or EditWorkableFormProcessor. These are shown in the table below. Consult the javadoc for these classes for more information on their behavior.
If your class extents
Use processor class
WTChangeIssue
com.ptc.windchill.enterprise.change2.forms.processors.Ed itProblemReportFormProcessor
WTChangeRequest2
com.ptc.windchill.enterprise.change2.forms.processors.Ed itChangeRequestFormProcessor
WTChangeOrder2
com.ptc.windchill.enterprise.change2.forms.processors.Ed itChangeNoticeFormProcessor
WTChangeActivity2
com.ptc.windchill.enterprise.change2.forms.processors.Ed itChangeTaskFormProcessor
WTVariance
com.ptc.windchill.enterprise.change2.forms.processors.Ed itVarianceFormProcessor
If one of the provided form processors meets your needs, you do not need to write your own processor --- just specify that processor as the value of the class attribute of the command subtag of your wizard action. If they do not meet your needs, you should write a subclass of one of them to process the wizard form data. See Creating Your Form Processor and Form Processor Delegates for examples of cases where you may need to implement your own processor.netmarkets/jsp/components/beginWizard.jspf
If you create your own processor, be aware that its preProcess() method will be called by the standard validator classes after each wizard step. Make sure you do not modify the database in this method.