Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Business Components
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.jbo.html.databeans
Class NavigatorBar

    java.lang.Object
      |
      +--oracle.jdeveloper.html.WebBeanImpl
            |
            +--oracle.jdeveloper.html.DataWebBeanImpl
                  |
                  +--oracle.jbo.html.databeans.BaseNavigatorBar
                        |
                        +--oracle.jbo.html.databeans.NavigatorBar

public class NavigatorBar
extends BaseNavigatorBar

The NavigatorBar Data Web Bean renders itself as an Oracle toolbar. It is responsible for providing a toolbar UI for navigating a RowSet's rows.

This Web Bean aggregates the `oracle.jbo.html.databeans.RowsetNavigator`. Navigation requests such as "Next Page", that are activated by clicking the buttons on the toolbar, are passed to `RowsetNavigator`. `RowsetNavigator` processes the requests and performs the designated action.

JDeveloper's JSP Element wizard instantiates the `NavigatorBar` class in a `jsp:useBean` tag in a `.jsp` file. Along with the class, the wizard also includes an ID and a scope declaration set to `request`. If you change the scope to any other value, you will have to handle possible multithreading issues.

The definition of a navigation bar provided by the wizard includes the methods: `setShowNavigationButtons`, `setReleaseApplicationResources`, `initialize`, and `render`. For example:

     <jsp:useBean   class="oracle.jbo.html.databeans.NavigatorBar"  id="myNavBar"
                      scope="request" >
     <%

    	   myNavBar.setShowNavigationButtons(true);
    	   myNavBar.setReleaseApplicationResources(false);
    	   myNavBar.initialize(application,session, request,response,out,
                "package3_Package3Module.EmpView");
    	   myNavBar.render();
     %>
     </jsp:useBean>

The value assigned to the `setReleaseApplicationResources` method determines whether the Application Module is released after the NavigatorBar Data Web Bean processes it. Typically, the value should not be set to true unless this is the last Web Bean to be processed in the JSP page.

The rendered navigation bar UI provides buttons that perform these actions:

- Goto first record
- Goto previous record
- Goto previous page
- Goto next page
- Goto next record
- Goto last record
- Delete record (row)
- Commit changes to the database (COMMIT)
- Discard changes in the form (ROLLBACK)

The code for the navigation bar should be placed prior to any Data Web Beans that will be displaying the RowSet being operated on by the `NavigatorBar`. For example, you would place a `NavigatorBar` Data Web Bean before the View Current Record Data Web Bean. This is important since the `NavigatorBar` can adjust the current row in the RowSet and the other Data Web Beans need to visualize the correct row after it has been placed in context by the `NavigatorBar`.

The `NavigatorBar` class aggregates `oracle.jdeveloper.jsp.wb.Toolbar` to re-use its HTML generation functionality. You can add your own toolbar items to the end of the navigation bar. For example, you can add toolbar items that provide additional URLs that can be navigated by using the toolbar. You can access the aggregated toolbar by using the `getContainer()` function.

Field Summary
`protected Toolbar` | `toolBar`

Fields inherited from class oracle.jbo.html.databeans.BaseNavigatorBar
`bShowNavigationButtons, buttons, ImageDir, isDetailMode, nav, NAVIGATE_BASE, NAVIGATE_BROWSE, NAVIGATE_COMMIT, NAVIGATE_DELETE, NAVIGATE_EDIT, NAVIGATE_FINDFORM, NAVIGATE_FIRST, NAVIGATE_INSERT, NAVIGATE_LAST, NAVIGATE_NEXT, NAVIGATE_NEXT_PAGE, NAVIGATE_PREVIOUS, NAVIGATE_PREVIOUS_PAGE, NAVIGATE_ROLLBACK, NAVIGATE_VIEW, sTargetUrl`

Fields inherited from class oracle.jdeveloper.html.DataWebBeanImpl
`attributeRenderers, bReleaseApplication, dispAttrs, qView, sApplication, sRowSetName`

Fields inherited from class oracle.jdeveloper.html.WebBeanImpl
`application, ctx, out, page, request, response, session`

Constructor Summary
`NavigatorBar()`

Method Summary
`Toolbar` | `getContainer()`
`void` | `internalInitialize()` Initializes the `EditForm` object to have access to the important objects of the JSP.
`void` | `populateToolBarFromCommands()`
`void` | `render()` Renders the HTML toolbar on the JSP page.

Methods inherited from class oracle.jbo.html.databeans.BaseNavigatorBar
`addButton, addButton, addButton, addDefaultEntries, addSeparator, createToolBarButtonForCommand, getButton, getImageDir, getTargetUrl, isDetailMode, setDetailMode, setImageDir, setShowNavigationButtons, setTargetUrl, showNavigationButtons`

Methods inherited from class oracle.jdeveloper.html.DataWebBeanImpl
`clearDisplayAttributes, getApplicationFromContext, getApplicationName, getAttributeLabel, getDisplayAttributeDefs, getDisplayAttributes, getDisplayFieldRenderer, getEditFieldRenderer, getRowFromKey, getRowKey, getRowSet, getViewObjectName, handleCommit, initialize, initialize, initialize, isAppStateful, releaseApplicationResources, releaseApplicationResources, setDisplayAttributes, setDisplayFieldRenderer, setDisplayFieldRenderer, setEditFieldRenderer, setEditFieldRenderer, setReleaseApplicationResources, setRowSet, shouldDisplayAttribute`

Methods inherited from class oracle.jdeveloper.html.WebBeanImpl
`generateScriptSrc, getCookie, getOut, getRenderingContext, getRequest, getRequestVariable, getUniqueName, initBeanForJS, initialize, initialize, initialize, render, setRequestVariable`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### toolBar

    protected Toolbar toolBar

Constructor Detail

### NavigatorBar

    public NavigatorBar()

Method Detail

### internalInitialize

    public void internalInitialize()
                            throws java.lang.Exception

  Description copied from class: BaseNavigatorBar
  Initializes the `EditForm` object to have access to the important objects of the JSP.

  The value of the `sRowSet` parameter has the format Package_AppModule.ViewObject and refers to the property file used to create the Application Module and the View Object name. For example, if you see the following entry for the `sRowSet` parameter:

  `initialize(.., "package3_AppModule1.DeptView");`

  The Data Web Bean will try and find `package3_AppModule1.properties` in the CLASSPATH to create the Application Module. This is done only once per session. Once the Application module is instantiated, the Data Web Bean locates the View Object by calling the `findViewObject('DeptView')` on the Application Module. You can see the implementation by looking at `JSPApplicationRegistry.java` in the `jbohtmlsrc.zip` file in the JDeveloper`\lib` directory.

  Overrides:
    internalInitialize in class BaseNavigatorBar
  Tags copied from class: BaseNavigatorBar
  Parameters:
    `application` - the JSP page's ServletContext.
    `session` - the JSP page's HttpSession.
    `request` - the JSP page's HttpServletRequest.
    `response` - the JSP page's HttpServletResponse.
    `out` - the JSP page's JspWriter.
    `sRowSet` - the name of the application's property file and View Object.

### populateToolBarFromCommands

    public void populateToolBarFromCommands()

  Overrides:
    populateToolBarFromCommands in class BaseNavigatorBar

### getContainer

    public Toolbar getContainer()

### render

    public void render()
                throws java.lang.Exception

  Renders the HTML toolbar on the JSP page. This method is the main entry point where the rendering of the toolbar actually happens.
  Overrides:
    render in class BaseNavigatorBar

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Business Components
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD