E Desktop Integration Settings in the Web Application Deployment Descriptor

This appendix describes the values that you set for the Oracle ADF Desktop Integration module servlet (adfdiRemote) so that the Fusion web application can use it. The appendix also describes the values in the deployment descriptor file that determine the behavior of the HTTP filter that the Oracle ADF Desktop Integration module provides. Finally, it provides an extract from a deployment descriptor file that shows these values in use.

This appendix includes the following sections:

Note:

Adding Oracle ADF Desktop Integration and ADF Library Web Application Support to the technology scope of your desktop integration project automatically generates the entries in the web.xml file discussed in this appendix. For more information, see Section 4.2, "Adding Oracle ADF Desktop Integration to a Fusion Web Application".

E.1 Configuring the Oracle ADF Desktop Integration Module Servlet

The deployment descriptor file (web.xml) of the Fusion web application that you integrate Excel workbooks with must contain entries so that the Fusion web application can use the adfdiRemote servlet. The Excel workbooks that you integrate with a Fusion web application call this servlet to synchronize data with the Fusion web application. The adf-desktop-integration.jar file stores the servlet in the following directory:

ADFDI_CLIENT\adfdi\lib

where ADFDI_CLIENT is the folder in which you set up the Oracle ADF Desktop Integration module as described in Section 3.7, "Using the Oracle ADF Desktop Integration Module on a Machine with Multiple Instances of JDeveloper".

By default, JDeveloper adds the HTTP filter to your Oracle ADF Desktop Integration project when you add Oracle ADF Desktop Integration to the technology scope of your project as described in Section 4.2, "Adding Oracle ADF Desktop Integration to a Fusion Web Application".

To configure the Oracle ADF Desktop Integration module servlet:

  1. Locate the deployment descriptor file for your Oracle ADF Desktop Integration project.

    Typically, this file is located in the WEB-INF folder of your project.

  2. Enter the values as described in the following table to enable the adfdiRemote servlet on the Fusion web application.

    For this property... Enter this value...
    Servlet name adfdiRemote
    Servlet class oracle.adf.desktopintegration.servlet.DIRemoteServlet

  3. Enter the values as described in the following table to add the HTTP filter to the the adfdiRemote servlet.

    This filter allows the Oracle ADF Desktop Integration module to access ADF Faces. The Oracle ADF Desktop Integration module requires access to ADF Faces if page definition files that are associated with integrated Excel worksheets make references to ADF Faces. Do not add this filter if your Fusion web application does not use ADF Faces.

    For this property... Enter this value...
    Filter name adfBindings
    Servlet name adfdiRemote

  4. Enter the values as described in the following table to add a URL pattern for the adfdiRemote servlet in the Fusion web application. The value that you enter must match the value that you specify in the integrated Excel workbook for the RemoteServletPath workbook property. Note that values are case sensitive.

    For this property... Enter this value...
    URL pattern /adfdiRemoteServlet
    Servlet name adfdiRemote

  5. Rebuild your Oracle ADF Desktop Integration project to apply the changes you made.

E.2 Configuring HTTP Filter Parameters

The Oracle ADF Desktop Integration includes a HTTP filter in the adf-desktop-integration-admin-tool.jar stored in the following directory:

ADFDI_CLIENT\adfdi\lib

where ADFDI_CLIENT is the folder in which you set up the Oracle ADF Desktop Integration module as described in Section 3.7, "Using the Oracle ADF Desktop Integration Module on a Machine with Multiple Instances of JDeveloper".

You configure an entry in the deployment descriptor file (web.xml) of your Fusion web application so that the application invokes the HTTP filter to make changes in an integrated Excel workbook prior to the integrated Excel workbook being downloaded by an end user from the Fusion web application. These changes make sure that the integrated Excel workbook functions correctly when the end user opens it. The HTTP filter makes the following changes:

  • WebAppRoot

    Sets the value for this property to the fully qualified URL for the Fusion web application from which the end user downloads the integrated Excel workbook.

  • Workbook mode

    Changes the integrated Excel workbook mode to runtime mode in case the workbook was inadvertently left in design mode or test mode.

By default, JDeveloper adds the HTTP filter to your Oracle ADF Desktop Integration project when you add Oracle ADF Desktop Integration to the technology scope of your project as described in Section 4.2, "Adding Oracle ADF Desktop Integration to a Fusion Web Application".

To configure the HTTP filter:

  1. Locate the deployment descriptor file (web.xml) for your Oracle ADF Desktop Integration project.

    Typically, this file is located in the WEB-INF folder of your project.

  2. Enter the values as described in the following table to create a new filter or configure them to modify the existing HTTP filter.

    For this property... Enter this value...
    filter-name adfdiExcelDownload
    filter-class oracle.adf.desktopintegration.filter.DIExcelDownloadFilter
    description (Optional) Enter a description of the filter.
    display-name (Optional) Enter a display name for the filter that appears in JDeveloper.

  3. Add a filter mapping for integrated Excel workbooks that use the default file format (.xlsx) by entering values as described in the following table.

    For this property... Enter this value...
    filter-name adfdiExcelDownload
    url-pattern *.xlsx
    dispatcher No value is required for this property.
    servlet-name No value is required for this property.

  4. Add a filter mapping for integrated Excel workbooks that use the macro-enabled workbook format (.xlsm) by entering values as described in the following table.

    For this property... Enter this value...
    filter-name adfdiExcelDownload
    url-pattern *.xlsm
    dispatcher No value is required for this property.
    servlet-name No value is required for this property.

  5. Add a MIME type for integrated Excel workbooks that use the default file format (.xlsx) by entering values as described in the following table.

    For this property... Enter this value...
    extension *.xlsx
    url-pattern application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

  6. Add a MIME type for integrated Excel workbooks that use the macro-enabled workbook format (.xlsm) by entering values as described in the following table.

    For this property... Enter this value...
    extension *.xlsm
    url-pattern application/vnd.ms-excel.sheet.macroEnabled.12

  7. Rebuild your Oracle ADF Desktop Integration project to apply the changes you made.

E.3 Examples in a Deployment Descriptor File

The following extracts from the web.xml file of a Fusion web application with Oracle ADF Desktop Integration in its technology scope show the entries that you configure for a desktop integration project.

<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter>
<filter-name>adfdiExcelDownload</filter-name>
<filter-class>oracle.adf.desktopintegration.filter.DIExcelDownloadFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<servlet-name>adfdiRemote</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>adfdiExcelDownload</filter-name>
<url-pattern>*.xlsx</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfdiExcelDownload</filter-name>
<url-pattern>*.xlsm</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>adfdiRemote</servlet-name>
<servlet-class>oracle.adf.desktopintegration.servlet.DIRemoteServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>adfdiRemote</servlet-name>
<url-pattern>/adfdiRemoteServlet</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>xlsx</extension>
<mime-type>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xlsm</extension>
<mime-type>application/vnd.ms-excel.sheet.macroEnabled.12</mime-type>
</mime-mapping>