# Editing an Application Module

The Application Module Editor lets you edit application modules.

To edit an application module, in the Workspace view of the Navigator, right-click the application module and choose Edit module.

When editing an application module, the wizard lets you specify the following information, listed by page:

- Data Model page. Specify which view objects and view links will be included in the application module. View objects in the application module's project appear in the Available list: master views appear directly beneath the package, while detail views (related by view links) appear beneath the master view. To include a master view, select AppModule in the Data Model list, then shuttle a view object from the Available list to the Data Model list. To include a detail view, while the master is selected in the Data Model list, shuttle the detail view over from the Available list. If a view object is used in the data model more than once, the instances must have a different member names to prevent naming conflicts.

- Application Modules page. When application modules are nested, the outer-most (top-level) application module provides the transaction context for the others. The Available list displays all application modules in the project; if you shuttle an application module to the Selected list, it becomes nested within the application module you are defining in the wizard. Optionally supply a member name that identifies an instance of an application module; if an application module is used more than once, member names can help you distinguish between the instances. When you nest an application module within another, the parent application module can use the objects and code in the child application module.

- Java page. If you want to customize the application module behavior by adding code, you can specify that the wizard generate a Java file for the application module class.

- Remote page. When you are ready to deploy, select Remotable Application Module to generate proxies, stubs, and skeleton classes. You must select this option to create a physical three-tier application (with each tier on a different computer). For each distributed object deployment type you select, you can specify the client projects where you want the files to be generated. Three types of files are created for your target platform: files that are only used by the business logic tier (located in the server subpackage), files that are used in both the business logic and client tier (in the common subpackage), and files that are used only in the client tier (in the client subpackage).

- Client Methods page. Select methods to export, so a client can use them in a tier-independent manner. Methods you've written in the application module class file appear in the Available list; to appear in the list, they must be of a data type that implements the Serializable interface. To export them, move them to the Selected list. Before you can use this page, in the Java page, you must select Generate Java File(s). When you click Finish, an export interface file, directly or indirectly extending oracle.jbo.ApplicationModule, is created. You need to do a few other things before the client can use the methods, including importing the interface in the client code and invoking the method properly in the client code, as described in the Business Components for Java online help.

- Property page. To add a property, type a property name and value, then click Add. You can also add and edit values for existing properties, and delete properties.