Siebel Web UI Dynamic Developer Kit Guide > Web UI DDK Overview >
About the Sample JavaServer Pages
The sample JavaServer pages that the Web UI DDK generates demonstrate the basics of using Siebel Web services to expose Siebel data and functionality in a custom-built Web application. The sample JSP pages are working examples for the Java developer and a starting point for development. The sample JavaServer pages are designed to be deployed for learning purposes only.
NOTE: The sample JSP pages are based on Apache Axis and use standard JSTL Tag Libraries.
The major features of the sample JavaServer pages are as follows:
- Login Page. This page has fields for entering user credentials and a button to invoke the login action. A login Web service invokes the login operation. The login operation takes the username and password as input parameters and returns a session token from the server. This session token is then stored in the Java EE session. For more information about session tokens and authentication, see Integration Platform Technologies: Siebel Enterprise Application Integration.
- Session Token. The session token returned from the login operation is stored in the SOAP header and sent with every Web service call.
- CRUD Operations. To support CRUD operations, list applets modes are List, Base, Edit, New, and Query. Form applet modes are Base, Edit, New, and Query. MVG and dynamic picklist applets modes are New and Query.
NOTE: CRUD is an acronym for Create, Read, Update, and Delete. CRUD reports show how a process affects given data objects, specifically whether objects are Created, Read, Updated, or Deleted.
- Record Set Navigation. List applets and the base mode of form applets include a hyperlink that enables the user to navigate to the previous or next set of records.
- MVG. MVG and MVG association applets are created for MVG fields that are associated with Web services. The primary field is not displayed in the parent applet.
- Dynamic Picklist. A dynamic picklist applet is created for a picklist field associated with a Web service. The parent applet contains one picklist field that shows the combined values of the primary record.
- LOV. LOVs are displayed in a drop-down list. The LOV service is called to retrieve the values of the LOV. It takes the LOV Type as an input parameter.
The sample JavaServer pages demonstrate basic features for managing data in a view. The functionality characteristics of the sample JavaServer pages, including functionality not supported, are described in the following sections.
Lists of Values
Sample JavaServer pages do not support the following types of LOVs:
- Organization-enabled LOVs
- Hierarchical LOVs
Sample JavaServer pages do not support the following types of dynamic picklists:
- Unbound picklist
- Hierarchical picklist
Dynamic picklists or MVG fields in a dynamic pick applet are ignored. MVGs are treated as child objects and displayed in a child applet.
Dynamic Picklists Without Pick Applets
A dynamic picklist allows the user to populate a field in a view in the user interface by selecting values from a list that are exposed by way of a pick applet. The Siebel Web UI Dynamic Developer Kit (DDK) treats all dynamic picklists the same by creating a new JavaServer page for each business component field. However, when no pick applet is defined for a business component field, the DDK must create a JavaServer page with an imitation single-column picklist to show records from which the user can choose a value.
The process by which the picklist without pick apple creation occurs is similar to how Java artifacts are generated, but this creation is transparent to developers and users. You might find it useful, however to understand the logic behind this process. For more information about how the Web UI DDK creates dynamic picklists without pick applets, see Example of How the DDK Wizard Creates Dynamic Picklists Without a Pick Applet. For more information about generating Java artifacts, see Generating Java Artifacts.
List applets in sample JavaServer pages have the following characteristics:
- List applets that do not have displayed columns will cause an error.
- The list column order is determined by examining the Edit List Applet Web Template and retrieving the item identifier.
- List Columns with the following characteristics are displayed in the list applet:
- Available = Y
- Show In List = Y
- Inactive = N or Is Null
- List column is not an MVG field
- The corresponding business component field exists in the business component
- The Read Only property of the List Column object is ignored.
Form applets in sample JavaServer pages have the following characteristics:
- The generated JavaServer pages are based on the template defined in the Applet Mode property of the View Web Template Item.
- Controls with the following characteristics are displayed:
- Mode = Null
- Inactive = N or Is Null
- Grid Property = FormattedHtml for applets in Grid Layout
- Not an MVG
- Corresponding business component field exists in the business component
MVG applets in sample JavaServer pages have the following characteristics:
- Primary fields are not supported.
- The following properties of the multi-value link object are ignored:
- No Associate
- No Copy
- No Delete
- No Insert
- No Update
- The layout of the MVG applet is based on the MVG Applet Web Template, if the fields exist in the source business component.
- Dynamic picklists or MVG fields defined in the MVG applet are ignored. MVGs are treated as child objects and displayed in a child applet. The primary field on the parent applet is not displayed.
- After inserting a new record, query, update, and delete are available in an MVG applet (1:M).
MVG Association Applets
MVG association applets in sample JavaServer pages have the following characteristics:
- Applet layout is based on the Applet Web Template of the MVG applet defined in the MVG applet property under the Applet Control.
- Dynamic picklists or MVG fields defined in the MVG association applet are ignored.
Drilldown fields in sample JavaServer pages have the following characteristics:
- If an active drilldown object with a Name property set to Original is defined for an applet, the Hyperlink Property of the drilldown object acts as the drilldown field.
- If the drilldown object is not defined or the Hyperlink field is not visible in the applet, then the first visible field acts as the drilldown field.
Buttons such as New, Edit, and Delete are not always rendered on sample JavaServer pages, even if these operations are allowed. Execute operations that are not permitted will throw and exception.
Controlling CRUD operations using visibility rules, roles and responsibilities, configuration, and dynamic field values is not supported. For example, a field called Active in the Quote List Applet - NB determines whether or not an update operation is permitted. The sample JavaServer pages do not support this behavior.
User interface functionality in sample JavaServer pages are summarized as follows:
- Data fields appear as text boxes, except LOV and Boolean fields.
- Predefault values are not supported.
- Previous and Next buttons are enabled, even on the beginning and last page.
Web services that have the same namespace but different ports cannot be used together during the sample page generation for a given view.