Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/DBWS/ParseDDLFS"

(Parsing DDL Functional Spec)
Line 7: Line 7:
 
   .source-text {padding:1em;border:1px dashed black; background-color: white;}
 
   .source-text {padding:1em;border:1px dashed black; background-color: white;}
 
</css>
 
</css>
= Parsing DDL Functional Spec =  
+
= Parsing DDL for Metadata Functional Spec =  
  
 
==== Document History ====
 
==== Document History ====
Line 23: Line 23:
 
=== Overview ===
 
=== Overview ===
 
{{:EclipseLink/Development/DBWS/ParseDDLforMetadata/Overview#overview}}
 
{{:EclipseLink/Development/DBWS/ParseDDLforMetadata/Overview#overview}}
 +
 
= Requirements =
 
= Requirements =
  

Revision as of 14:29, 24 June 2011

Parsing DDL for Metadata Functional Spec

Document History

Date Author Version Description & Notes
110601 Mike Norman 1.0 - use DBWS_METADATA to get information on database artifacts

Overview

The primary job of the DBWSBuilder utility is to extract metadata from the database about some artifact (i.e. a Table or a StoredProcedure) that is to be used as the basis of a Web Service. The DBWSBuilder translates the retrieved information (field names, arguments, scalar or composite datatypes, etc.) into DBWS runtime artifacts (EclipseLink Project XML files, WSDL and XML schema, etc.) Thus it is crucial that DBWSBuilder get complete and accurate information from the database.


Requirements

Public API

The goal of this feature is to make no changes to public API

  • existing dbws builder files will still work; no new elements/attributes added (see Open Issues)
  • IDE integration (JDev, Dali) unchanged

Use Cases

The goal of this feature is to support all existing use cases as well as provide capabilities to support the following new cases:

Reusable Standalone library

Other projects may wish to take advantage of this strategy. The DDL Parser will be implemented as standalone, not requiring any other portion of EclipseLink in order to function.

Extracting DDL

There is a utility method available in the Oracle database DBMS_METADATA.GET_DDL(specType, typeName, schema) that has been available since 9i that successfully returns DDL for a wide-variety of artifacts:

  • package specification
  • table specification
  • object types: structs, varrays, nested tables
  • top-level procedures and functions.

The DDL returned is complete, no artifacts are missing nor is any type information distorted.

Open Issues

This section lists the pending open issues.

Issue # Owner Description / Notes
1 MWN DBMS_METADATA cannot provide DDL for packages that have been 'wrapped' - some alternative way to access the DDL would need to be created (list of URLs, etc.)

Back to the top