首页 > 代码库 > How To Use XDOLoader to Manage, Download and Upload Files? (文档 ID 469585.1)

How To Use XDOLoader to Manage, Download and Upload Files? (文档 ID 469585.1)

Applies to:

BI Publisher (formerly XML Publisher) - Version 5.6.3 to 5.6.3 [Release 5] Information  in this document applies to any platform. Oracle XML Publisher - Version: 11.5.10 Checked for relevance on 18-MAR-2013

Goal

How to use XDOLoader to Manage, Download and Upload Files?

Fix

Using XDOLoader to Manage Files The XDOLoader utility is a Java-based command line program to load template (RTF, PDF, and XSL-FO), XML, and XSD files to the XML Publisher database tables. Use this utility to download files from one instance and load to another.
The XDOLoader has two modes:

  • File download only mode Use this mode to download files from the XDO_LOBS table. Specify the target LOB_CODE, APPS_SHORT_NAME, and LOB_TYPE, LANGUAGE, and TERRITORY to download all files that match the criteria.
  • File download and LDT/DRVX generation mode Use this mode to download files from the XDO_LOBS tables and create and LDT file for the downloaded file.        Note: A DRVX file is also created. This file is used by Oracle Development to        load templates during patch application. It is not required for use at your site        and can be ignored. Specify the APPS_SHORT_NAME to download all files (including template files, data definition files and sample xml files) that have the same application short name. You can also specify the DS_CODE to select files that are related to the specific data source definition.

 

Downloading Files

To download the files, first set up your environment for your session by setting the APPL_TOP and CLASSPATH. Execute the XDOLoader utility as follows:

% java oracle.apps.xdo.oa.util.XDOLoader DOWNLOAD \ -DB_USERNAME <db_username> \ -DB_PASSWORD <db_password> \ -JDBC_CONNECTION <jdbc_con_string> \ -LOB_TYPE <lob_type> \ -APPS_SHORT_NAME <application_short_name> \ -LOB_CODE <lob_code> \ -LANGUAGE <language> \ -TERRITORY <territory> \ -LOG_FILE <log file>

The parameters are described in the following table:

Parameter Name Description  
DOWNLOAD The first parameter: DOWNLOAD will be implemented in the feature. Mandatory
DB_USERNAME Database user name (example: apps). Mandatory
DB_PASSWORD Database user password (example: manager). Mandatory
JDBC_CONNECTION JDBC database connection string (example: ap000sun:1521:db222) Mandatory
LOB_TYPE XDO LOB type. Valid values are: TEMPLATE XML_SCHEMA XML_SAMPLE Mandatory
APPS_SHORT_NAME Application short name (example: AR). Mandatory
LOB_CODE XDO LOB code. Enter either the Template Code or the Data Definition Code (see below). Optional
LCT_FILE This is the control file for XML Publisher metadata (see below). Optional
LANGUAGE ISO two-letter language code (example: en) Mandatory for template files only
TERRITORY ISO two-letter territory code (example: US) Mandatory for template files only
LOG_FILE Enter a file name for the uutput log file (default: xdotmpl.log). Optional
DEBUG Turns debug on or off. Valid values are: true / false (default) Optional

The parameters LOB_CODE and LCT_FILE are optional, but one must be defined as follows:

  • LOB_CODE - use this parameter to download an individual template.
  • LCT_FILE - if you do not define an LOB_CODE then this parameter is required. If  you want to download multiple templates, then you must provide the LCT file. The loaded needs this file to retrieve the templates. The LCT file can be found under $XDO_TOP/patch/115/import/xdotmpl.lct. When you use this option you will not only get the templates, but the ldt file for the templates will be generated for you as well.                Note: A DRVX file is also created. This file is used by Oracle Development to                load templates during patch application. It is not required for use at your site                and can be ignored.

Example Sample usage is as follows:

java oracle.apps.xdo.oa.util.XDOLoader \ DOWNLOAD \ -DB_USERNAME apps \ -DB_PASSWORD apps \ -JDBC_CONNECTION ap000sun:1521:apps115 \ -LOB_TYPE TEMPLATE \ -APPS_SHORT_NAME XDO \ -LOB_CODE XDOTMPL1 \ -LANGUAGE ja \ -TERRITORY JP

Download usage in LDT/DRVX mode:

java oracle.apps.xdo.oa.util.XDOLoader DOWNLOAD \ -DB_USERNAME <db_username> \ -DB_PASSWORD <db_password> \ -JDBC_CONNECTION <jdbc_conn_string> \ -APPS_SHORT_NAME <application_short_name> \ -DS_CODE (data source code> \ -LCT_FILE <full path to lct file> \ -LDT_FILE <ldt file> \ -DRVX_FILE <drvx file> \ -LOG_FILE <log file>

DOWNLOAD (Mandatory) The first parameter: DOWNLOAD will be implemented in the feature. DB_USERNAME (Mandatory) Database user name (example: apps). DB_PASSWORD (Mandatory) Database user password (example: manager). JDBC_CONNECTION (Mandatory) JDBC database connection string (example: ap000sun:1521:db222). APPS_SHORT_NAME (Mandatory) Application short name (example: AR). LCT_FILE (Mandatory) Full path to the xdotmpl.lct DS_CODE (Optional) Data source code. LDT_FILE (Optional) Output LDT file name (default: xdotmpl.ldt) DRVX_FILE (Optional) Output DRVX file name (default: xdotmpl.drvx) LOG_FILE (Optional) Enter a file name for the output log file (default: xdotmpl.log). DEBUG (Optional) Turns debug on or off. Valid values are: true / false (default)
This mode will create the template or data files, one LDT file, one DRVX file and one log file. Sample usage is as follows: Sample usage as follows:

% java oracle.apps.xdo.oa.util.XDOLoader \ DOWNLOAD \ -DB_USERNAME apps \ -DB_PASSWORD apps \ -JDBC_CONNECTION ap000sun:1521:apps115 \ -APPS_SHORT_NAME XDO \ -LCT_FILE ${XDO_TOP}/patch/115/import/xdotmpl.lct \ -DS_CODE XDODS1

In this mode the LDT file can be used with the FNDLOAD utility to upload the metadata for the downloaded templates.

Uploading Files

To Upload the files, first set up your environment for your session by setting the APPL_TOP and CLASSPATH. Execute the XDOLoader utility as follows:

% java oracle.apps.xdo.oa.util.XDOLoader UPLOAD \ -DB_USERNAME <db_username> \ -DB_PASSWORD <db_password> \ -JDBC_CONNECTION <jdbc_con_string> \ -LOB_TYPE <lob_type> \ -APPS_SHORT_NAME <application_short_name> \ -LOB_CODE <lob_code> \ -LANGUAGE <language> \ -TERRITORY <territory> \ -XDO_FILE_TYPE <xdo_file_type> \ -NLS_LANG <NLS_LANG> \ -FILE_CONTENT_TYPE <file_content_type> \ -FILE_NAME <file_name> \ -OWNER <owner> \ -CUSTOM_MODE [FORCE|NOFORCE] \ -LOG_FILE <log file>

The parameters are described in the following table:  

Parameter Name Description  
UPLOAD The first parameter: UPLOAD will be implemented in the feature. Mandatory
DB_USERNAME Database user name (example: apps). Mandatory
DB_PASSWORD  Database user password (example: manager). Mandatory
JDBC_CONNECTION JDBC database connection string (example: ap000sun:1521:db222). Mandatory
LOB_TYPE XDO LOB type. Valid values are: TEMPLATE XML_SCHEMA XML_SAMPLE Mandatory
APPS_SHORT_NAME Application short name (example: AR). Mandatory
LOB_CODE XDO LOB code. Enter either the Template Code or the Data Definition Code. Mandatory
NLS_LANG Enter the NLS_LANG environment variable. Mandatory
LANGUAGE ISO two-letter language code (example: en). If NLS_LANGUAGE=’TRADITIONAL CHINESE’, then cn_TW and if NLS_LANGUAGE=’SIMPLIFIED CHINESE’ then cn_CN for combination of language and territory. Optional
TERRITORY ISO two-letter territory code (example: US), default is ’00’. Mandatory
XDO_FILE_TYPE Enter the XDO file type, valid values are: PDF, RTF, XLS, XSL-FO, XSL-HTML, XSL-XML, XSLTEXT, XSD, XML, RTF-ETEXT Mandatory
FILE_CONTENT_TYPE Content type of the file (example: text/html, application/pdf) Optional
FILE_NAME Name of the file you want to upload. (example: sample.pdf or test.xml) This file name can be full path (example: /u01/oracle/11iapp/xdo/115/patch/115/publisher/templates) Mandatory
OWNER Owner of the template. Default is "ORACLE". Optional
CUSTOM_MODE Whether to force update. Valid values are FORCE and NOFORCE (default). Optional
LOG_FILE Enter a file name for the output log file (default: xdotmpl.log). Optional.
DEBUG Turns debug on or off. Valid values are: true 7 false (default) Optional
USE_APPS_CONTEXT Whether to use AppsContext or not. Valid values are: true / false (default) If false, ’1’ is always used for Apps Login ID. Optional

Example Sample usage is as follows:

% java oracle.apps.xdo.oa.util.XDOLoader \ UPLOAD \ -DB_USERNAME apps \ -DB_PASSWORD apps \ -JDBC_CONNECTION ap000sun:1521:apps115 \ -LOB_TYPE TEMPLATE \ -APPS_SHORT_NAME XDO \ -LOB_CODE XDOTMPL1 \ -LANGUAGE ja \ -TERRITORY JP \ -XDO_FILE_TYPE PDF \ -FILE_CONTENT_TYPE ’aplication/pdf’ \ -FILE_NAME $XDO_TOP/patch/115/publisher/templates/XDOTMPL1_ja_JP.pdf -NLS_LANG JAPANESE_JAPAN.JA16EUC

The XDOLoader program can be run either before or after the FNDLOAD command. The files will be loaded with the appropriate LOB_CODE, which will join to the metadata loaded using the TEMPLATE_CODE or DATA_SOURCE_CODE mapping to the LOB_CODE.
this can also be found at Appendix B starting on page 401 of (<<http://www.oracle.com/technology/products/xml-publisher/docs/xmlp5.6.2userguide.zip>>)   but there are two missing pieces.
1. Data Templates - this is pretty straightforward. There is a new lob type called ‘DATA_TEMPLATE‘ so its treated just like any other XMLP file object.
2. XLIFF Files - these are the translation files, again an xml format but they have their own loader called, surprisingly enough ‘XLIFFLoader‘. It‘s very similar to the XDOLoader, here‘s how to use it
UPLOAD usage :

% java oracle.apps.xdo.oa.util.XLIFFLoader UPLOAD -DB_USERNAME <db_username> -DB_PASSWORD <db_password> -JDBC_CONNECTION <jdbc_con_string> -APPS_SHORT_NAME <application_short_name> -TEMPLATE_CODE <template_code> -OWNER <owner> -CUSTOM_MODE [FORCE|NOFORCE] -FILE_NAME <file_name>

 

Parameter Name Description  
UPLOAD The first parameter Mandatory
DB_USERNAME Database user name (ex: apps) Mandatory
DB_PASSWORD Database user password (ex: manager) Mandatory
JDBC_CONNETION JDBC database connection string (e.g.: ap000sun:1521:dev115) Mandatory
APPS_SHORT_NAME 3 letter Application short name (ex: XDO) Mandatory
TEMPLATE_CODE XDO Template code, if not given, it should be indicated in the header section of the xliff. Optional
OWNER Owner of the template. Default is "ORACLE" Optional
CUSTOM_MODE : [FORCE|NOFORCE] Whether force update, default is NOFORCE Optional
FILE_NAME Name of the file to be uploaded Mandatory

Heres a sample usage:

% java oracle.apps.xdo.oa.util.XLIFFLoader UPLOAD -DB_USERNAME apps -DB_PASSWORD apps -JDBC_CONNECTION ap000sun:1521:apps115 -APPS_SHORT_NAME XDO -FILE_NAME patch/115/publisher/templates/JA/XDOTMPL1_ja_JP.xlf



DOWNLOAD Usage :

% java oracle.apps.xdo.oa.util.XLIFFLoader DOWNLOAD -DB_USERNAME <db_username> -DB_PASSWORD <db_password> -JDBC_CONNECTION <jdbc_con_string> -APPS_SHORT_NAME <application_short_name> -DS_CODE <ds_code> -TEMPLATE_CODE <lob_code> -FILES_DIR <directory> -SUMMARY_FILE <summary_file>

 

Parameter Name Description  
DOWNLOAD The first parameter Mandatory
DB_USERNAME Database user name (ex: apps) Dandatory
DB_PASSWORD Database user password (ex: manager) Mandatory
JDBC_CONNETION JDBC database connection string (e.g.: ap000sun:1521:dev115) Mandatory
APPS_SHORT_NAME 3 letter Application short name (ex: XDO) Optional
DS_CODE XDO Data Definition code Optional
TEMPLATE_CODE XDO Template code Optional
FILES_DIR Files will be downloaded to the given directory. If not provided, files are placed in the current directory. Optional
SUMMARY_FILE If provided, will generate an xml file containing list of files downloaded. This should be the full path name of the target file (not affected by FILES_DIR parameter). Optional

Heres a sample usage:

% java oracle.apps.xdo.oa.util.XLIFFLoader DOWNLOAD -DB_USERNAME apps -DB_PASSWORD apps -JDBC_CONNECTION ap000sun:1521:apps115 -APPS_SHORT_NAME XDO -TEMPLATE_CODE XDOTMPL1

So now you should have everything you need to move those templates, data templates, translations, etc from test to production. We will of course get all of the above into the doc as soon as we can.

For problems with JDBC_CONNECTION like:      APP-FND-01564: ORACLE error 6401 in AFPCOA please have a look at Metalink Note 374195.1        - Running XDOLOAD to Download XML Data Definitions Fails with ORA-6401

 

A territory in the template definition is optional. Therefore if Territory is not defined in the source, and the same is also migrated to the destination using FNDLOAD, it‘s good. However, while using XDOLOADER to upload the RTF template, TERRITORY US is used to upload the RTF template (as the seeded query in the template definition compares the Territory and Language for the template in the XDO_TEMPLATES_VL and XDO_LOBS to fetch the default file). But in the view XDO_TEMPLATES_VL the territory is 00 while in XDO_LOBS it is US.
Therefore, the solution is that if the source definition has any territory then the same should be used with XDOLOADER and if territory is NOT defined in the source then territory parameter should NOT be used with XDOLOADER command.

 

Join our Oracle BI Publisher Community to discuss further with other Oracle BI Publisher Experts and learn more from your peers.
For more information on BI Publisher Product documentation, Announcements, Hot Topics, Community, Blog and Training details. Take a look at the Oracle BI Publisher (BIP) Product Information Center (PIC) (Doc ID 1338762.1).