|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface AdminConsole
SQL engine
.
NOTE: You must have the Isomorphic Smart GWT package installed and your servlet engine started.
Direct your browser to the following URL to access the Admin Console:
http://localhost:8080/tools/adminConsole.jsp
The common default servlet engine port 8080 is used in the URL given above. Adjust your URL as necessary if you are using a different port and replace localhost with the machine name running the servlet engine if you are accessing it from a remote machine.
Test Data
You can create a test file that contains a sample dataset which can be imported into your database table with the Admin Console.
The test file to use with your DataSource is specified in the testFileName
DataSource configuration property. The test file uses the extension .data.xml.
The test data file should consist of a top-level <List> element containing a series of XML elements named after your DataSource's ID, each of which creates one DataSource record. Values for each field are given within tags named after the field name.
For example, the following XML is from the supplyItem.data.xml test data file supplied with the Isomorphic Smart GWT package. This file is located in [webroot]/examples/shared/ds/test_data/.
<List> <supplyItem> <description>A revolutionary cushion-grip ballpoint pen that reduces required gripping power, relieving stress and alleviating writing fatigue. Excellent for people who suffer from arthritis or carpal tunnel syndrome. Medium point, black ink. Refillable.</description> <category>1</category> <itemRef>ODC 204-502-153</itemRef> <maxQuantity>5</maxQuantity> <requiresJustification>0</requiresJustification> <itemName>Dr. Grip Pens -- Blue Barrel</itemName> <itemID>1</itemID> <unitCost>4.99</unitCost> </supplyItem> <supplyItem> <description>A revolutionary cushion-grip ballpoint pen that reduces required gripping power, relieving stress and alleviating writing fatigue. Excellent for people who suffer from arthritis or carpal tunnel syndrome. Medium point, black ink. Refillable.</description> <category>1</category> <itemRef>ODC 204-708-834</itemRef> <maxQuantity>5</maxQuantity> <requiresJustification>0</requiresJustification> <itemName>Dr. Grip Pens -- Black Barrel</itemName> <itemID>2</itemID> <unitCost>4.99</unitCost> </supplyItem> <supplyItem> <description>Personalized business cards for all your networking needs.</description> <category>2</category> <itemRef></itemRef> <maxQuantity>500</maxQuantity> <requiresJustification>1</requiresJustification> <itemName>Personalized business cards -- 500 count</itemName> <itemID>3</itemID> <unitCost>25.00</unitCost> </supplyItem> ... <List/>Data for a tree-like DataSource can be specified with the same format. The following code example is from the supplyCategory.data.xml test data file. This file is also located in [webroot]/examples/shares/ds/test_data/.
<List> <supplyCategory> <itemName>Office Paper Products</itemName> <parentID>root</parentID> </supplyCategory> <supplyCategory> <itemName>Calculator Rolls</itemName> <parentID>Office Paper Products</parentID> </supplyCategory> <supplyCategory> <itemName>Adding Machine/calculator Roll</itemName> <parentID>Calculator Rolls</parentID> </supplyCategory> . . . </List>Notice that all records must define values for the itemName primary key field and for the parentID field that establishes the tree relationship.
Manually specifying database connection settings
The Admin Console maintains settings in the server.properties
file, found in
your application's WEB-INF/classes
directory. If you prefer, you can maintain
these settings by directly editing that file. You should restart your servlet engine
after changing this file.
For example, the following settings are the defaults in a new Smart GWT installation for
a MySQL server; they are approximately correct for a MySQL server running on the same
machine as the servlet engine and listening on the default MySQL port. For details of what
each of these properties means, check this page
.
sql.Mysql.database.type: mysql sql.Mysql.database.ansiMode: false sql.Mysql.interface.type: dataSource sql.Mysql.driver: com.mysql.jdbc.jdbc2.optional.MysqlDataSource # name of the database to use sql.Mysql.driver.databaseName: isomorphic # hostname and port where the database server is installed sql.Mysql.driver.serverName: localhost sql.Mysql.driver.portNumber: 3306 # username and password that can create and modify tables in that database # this user must have the following privileges for the system to function # properly: create/alter/drop table; insert/update/replace/delete rows. sql.Mysql.driver.user: root sql.Mysql.driver.password:Note the distinction here between database type and database name. Database type refers to the actual product - Oracle, DB2 or whatever. In the above example, database type is "mysql" (all lowercase) - the value of property
sql.Mysql.database.type
.
Database type is very important. The type of a given database connection dictates whether
features like SQL paging and transactions are supported; it even dictates the syntax of the
SQL we generate.
Database name is just an arbitrary name for a particular database connection, and it is
embedded in the property names immediately after the sql
prefix. In this example
it happens to be very similar to the database type - "Mysql" as opposed to "mysql" - but in
fact the name has no significance and could be any string. When referring to specific
database connections in your DataSources
with the
dbName
property, it is the database name you use.
NOTE: It is common for DataSources to not specify dbName
. In this case, the
default database is used. To specify the default database manually in
server.properties
, set sql.defaultDatabase
, using database
name. So, to set our example connection from above as the default:
sql.defaultDatabase: Mysql
Manually specifying JNDI settings
Instead of specifying database connection parameters directly in server.properties
,
it is possible to connect to a database that is configured as a JNDI resource in your
application server. Assume you have an Oracle JNDI resource with the name "jndiTest",
configured similar to this in Tomcat:
<Resource name="jdbc/jndiTest" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.132.152:1521:xe" username="system" password="manager" initialSize="5" maxActive="50" />The minimal set of properties required to create a Smart GWT database connection that attaches to this resource is as follows (Note that the
java:comp/env/
prelude
in the first line is optional - the server will automatically look there if it can't find
the resource in the absolute location)
sql.myOracleConnection.driver.name: java:comp/env/jdbc/jndiTest sql.myOracleConnection.database.type: oracle sql.myOracleConnection.interface.type: jndi
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |