I'm focusing on creating Database connection during my GWT Application with MySQL. I would like the database to see some 'init' parameters in order I do not need to 'hand code' DB URL and Passwords. I researched some time for possible solutions but got a little overcome through the possible solutions. A number of them spoken of JNDI as solution but none of them where obvious regarding how to get it done.

Furthermore the variations in running the application from Eclipse in development/debugging mode(in Jetty) and lastly implementing it in Tomcat is further confusing me.

Can you really specify group of Init Parameters in web.xml ? How do you read them?

If JNDI will be used? Can One obtain a step-by-step concise review of how to do this task?

What you're searching for is web application context setting -

To include the database info in web application context

To configure jetty, you'll have to make use of the jetty-web.xml configuration also -

To perform a connection inside your application, around the server side make use of the following -

        Context ctx = new InitialContext();

        DataSource  ds = (DataSource) ctx.lookup("java:comp/env/{Res Name in context.xml}");
        Connection conn = ds.getConnection();

NOTE - To possess your application run both with jetty and tomcat,have both files and make certain your resource title is-

context.xml : {resourceName}

jetty-web.xml: java:comp/env/{resourceName}

Unsure if jetty-web.xml works with only too

EDIT - sample context.xml code -

<Resource name="jdbc/myDatabaseServer" auth="Container" type="javax.sql.DataSource"
    maxActive="100" maxIdle="30" maxWait="10000" username="USER"
    password="PWD" driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://myUrl:3306/myDB?autoReconnect=true" removeAbandoned="true"
    removeAbandonedTimeout="60" logAbandoned="true" autoReconnect="true" validationQuery="select 1" testOnBorrow="true"
    testOnReturn="true" testWhileIdle="true" timeBetweenEvictionRunsMillis="1800000"
    numTestsPerEvictionRun="3" minEvictableIdleTimeMillis="1800000"/>

Same sample jetty-web.xml code -

<New id="someid" class="org.mortbay.jetty.plus.naming.Resource">
        <New class="org.apache.commons.dbcp.BasicDataSource">
            <Set name="driverClassName">com.mysql.jdbc.Driver</Set>
            <Set name="url">jdbc:mysql://myUrl:3306/myDB?autoReconnect=true</Set>
            <Set name="username">USER</Set>
            <Set name="password">PWD</Set>
            <Set name="maxActive">100</Set>
            <Set name="maxIdle">30</Set>
            <Set name="minIdle">0</Set>
            <Set name="maxWait">10000</Set>
            <Set name="minEvictableIdleTimeMillis">1800000</Set>
            <Set name="timeBetweenEvictionRunsMillis">1800000</Set>
            <Set name="numTestsPerEvictionRun">3</Set>
            <Set name="testOnBorrow">true</Set>
            <Set name="testWhileIdle">true</Set>
            <Set name="testOnReturn">true</Set>
            <Set name="validationQuery">SELECT 1</Set>

You are able to educate yourself on which each sections mean.