Devgui

Devgui is a convenient SWING based application interface that can:

  • Automatically create a first dbforms-config.xml for your database by reading the meta data about tables and columns inside your database
  • Create JSPs that use the dbforms taglib by applying XSL transformations to the config file, so you have a running web application for your database without having written a single line of code.

documents

Please see the DevGui chapter in the installation section of the UsersGuide for more complete information on installation and use.

Web application tab

itemdescription
location of webapp the JSP files generated by DevGui's XSL transformations will be written into this directory.
web-URL of webapp URL which can be used to access the application.

Database tab

itemdescription
JDBC Driver Class name of java class which implements java.sql.Driver and which will be used to connect to the database.

Examples:
  • com.databasename.jdbc.Driver
  • org.freedb.jdbc.type4driver.MainDriver
See your driver's documentation.
JDBC URL URL to connect to database. Refer to driver documentation.

Examples:
  • jdbc:foo:bar://host123:876/myveryimportantdb
  • jdbc:abcd://host2.dom1.dom2.dom3/database=db3;option1=yes

XML Config Tab

itemdescription
DbForms-Config File name of XML file which contains config for dbforms. An initial version of this file can be automatically generated by DevGui by reading meta data from the database. This file is also used as input for XSL transfortations in tab 'XSL Transformation'.

Filename should be something like:

<location-of-webapp>/WEB-INF/dbforms-config.xml
Examine tables, views, system tables checkboxes Allows to select for which table types, table descriptions should be generated into config file.
Catalog name filter It depends on the database system, whether it supports catalogs and how it maps this general term to a database specific term. Often a catalog is mapped to a 'database'.

The easiest thing is always to select 'all catalogs', but if needed, you may try to restrict the set of examined tables by entering a catalog name and selecting the corresponding radio button.

Be aware that several database systems that map 'catalog' to 'database' do not allow to read information about tables in another database than that one you are currently connected to.
Schema filter It depends on the database system, whether it supports schemas and how it maps this general terms to a specific term. Often a schema is mapped to 'table owner'.

The easiest thing is always to select radio button 'all schemas', but if needed, you may try to restrict the set of examined tables by entering a schema name pattern and selectiong the corresponding radio button.

While you always have to enter a complete catalog name into combo box for catalog name, field for schema name may contain a schema pattern with '%' as pattern for an arbitrary (maybe empty) string. Examples:

  • 'foo%' would select all tables in a schema with a name that begins with substring 'foo'
  • '%nix%' would select all tables in a schema with a name that contains a substring 'nix'

'Load' button You can try to load the set of available catalog and schema names into the corresponding combo boxes by clicking the 'Load' button. You must have the database tab completed before.
Table name filter Via radio buttons and textfield you can select tables with arbitrary names or with a name that matches a certain name pattern. See comments about patterns above.
Use autocommit mode Should normally be checked, was inserted as a workaround for a bug of a special driver.
Write standard type names for unknown field types If not checked, DevGui will write the names for column types exactly as it gets them from the database. Sometimes this may lead to problems, if the DBMS uses a type that could be handled by dbforms but is has an unknown specific name.

E.g. there are a lot of different names for various 'integer' types. If this option is checked, DevGui will try to write standard name for all unknown types into the generated dbforms config file.
Foreign key detection Devgui can use meta data methods to determine foreign key relationships between tables and write corresponding tags into the generated config file. This can surely only work if the used database system as well as the JDBC driver supports this feature. You have two alternative method available:

  • using method getImportedKeys() within a loop; this should always work and is default
  • using method getCrossReferences() once; this might not work with all databases, but if it does, it will probably be much faster than the first method above. Simply try it out!

You can also deactivate foreign key detection.
Include catalog or table name If checked, DevGui tries to include catalog and/or schema name in generated xml file like 'admin.table1' instead of just 'table1'.
Set date format to Here you may select or enter a date pattern that then will be set as default date format within dbforms config file using tag date-format.
Generate XML button DevGui tries to read database meta data and generated a dbforms config in XML format. Result is shown in editor pane.
Save File Save config in editor pane to dbforms config file.

XML Config Tab

This tab can be used to automatically generate Java Server Pages that use DbForms taglib by applying XSL stylesheets to dbforms config file. To do that, you must have generated (or loaded) a dbforms config file, then you mark the name of a style sheet and select button 'start transformation'.

itemdescription
Stylesheet Directory Location of the directory that contains your stylesheets that you wish to use.

Defaults to: <DBFORMS_HOME>/xsl-stylesheets/
Use JavaScript Calendar If checked, the generated pages will include a JavaScript calendar written by Robert W. Husted for editing of date fields. Calendar is included in dbforms with friendly permission of author. See http://developer.iplanet.com/viewsource/husted_calendar/husted_calendar.html for more information about this tool. The calendar is now developed as open source project 'jscal' with homepage at http://jscal.sourceforge.net/.

Unfortunately this calendar only seems to work with Internet Explorer, so by default this option is not checked.

Generated pages are written to the web application directory.