2010-11-10

Alternatives for PL/SQL Gateway

A attendee of my presentation on OPP 2010 Brussels notice an error in one URL in my presentation and asked me more info in the alternatives for PL/SQL Gateways.
So I provide here my investigation on that (please be free to help me improve this list) with the distintive features of each alternative.




Oracle provides these alternatives:
  • Mod_plsql in Oracle HTTP Server is available since 8i and it's build on Apache version 1.3 or 2.2 (Web Tier Utilities )
    • commercial. (check with our Oracle representative: it looks like if it's installed in the same machine as the database it doesn't need licencing).
    • File system caching of PL/SQL-generated web pages based on the OWA_CACHE package
    • mod_plsql passes just a subset of the CGI environment variables (you have to add additional parameters in the DAD config file)
    • The maximum length of the HTTP cookie header is 32000 bytes. Values higher than this generate an error.
    • The maximum length of any single cookie within the HTTP cookie is 3990. Values higher than this generate an error.
    • There is a 20 cookie limit that limits the number of cookies being set at any given time. Anything over 20 will be dropped.
    • The total number of name value pairs that can be passed is 2000
    • The total number of parameters that can be passed is 2000
    • The maximum size of a single parameter that can be passed is 32000 bytes (except file upload)
    • Procedure blacklisting in DAD
    • change/clean some HTTP Headers (prohibiting some advanced HTTP 1.1 protocol features)
  • Embedded PL/SQL Gateway (aka EPG) available inside the DB (build-in) since 10g r2 and in Oracle XE
    • no file system caching
    • configuration directly in the DB using the package DBMS_EPG
  • Apex Listener J2EE implementation
    • no support for Dynamic parameter passing, i.e. the use of "!" update: this support appeared in version 1.1
    • only basic database authentication
    • Allows easy integration with Java-based middleware
Third-party alternatives:
  • Doug McMahon’s Mod_owa
    • fork of Alvydas Gelzinis, Oksana Kulikova’s Mod_owa
    • updated in 2010 2011
    • It is configured a little differently from mod_plsql
    • has some variations in the way it supports some of the more advanced features of the PL/SQL Web Toolkit, like flexible parameters
    • in Apache 2.2
    • incompatibility in file uploading and downloading
  • Thoth Gateway for Microsoft Internet Information Server (for Oracle XE, 10g or later)
    • Integrated Windows authentication
    • CLOB support (parameter values greater than 32k will automatically be converted to CLOB parameters)
    • No limit on the number of parameters
    • Set maximum individual file size for uploads
    • passes all CGI variables from the web server to OWA
    • no support for Custom authentication methods based on the OWA_SEC package and custom packages
    • no support for HTML image maps, as represented by the OWA.IMAGE datatype
  • DBPrism Servlet engine
    • DBPrism is a framework to generate dynamic XML from a database, it provides an high performance DBGenerator for Cocoon2. Also is a J2EE replacement for Oracle mod_plsql.
    • It's the evolution of OWSKiller Servlet
  • JOPA Gateway Servlet
    • commercial
    • Does not change HTTP headers
  • Total Knowledge’s Mod_plsql
    • last version in 2006
    • not in Apache 2
    • Changes Oracle packages

Apex can work with the 3 alternatives from Oracle, with Thoth Gateway and with DBPrism

For exposing PL/SQL as a Webservice see this and this articles.

No comments:

Post a Comment

Os comentários são moderados.
The comments are moderated.