You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by hu...@apache.org on 2006/12/20 01:46:02 UTC

svn commit: r488871 - in /struts/sandbox/trunk/overdrive/PhoneBook: Core/ Core/Commands/ Test/ Test/Commands/ Test/Resources/ Test/bin/Debug/ Web/ Web/Controls/ Web/Forms/ Web/Resources/

Author: husted
Date: Tue Dec 19 16:46:01 2006
New Revision: 488871

URL: http://svn.apache.org/viewvc?view=rev&rev=488871
Log:
Update PhoneBook for latest Nexus. 

Added:
    struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseCommand.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects-web.xml
      - copied, changed from r484633, struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects.xml
Removed:
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects.xml
Modified:
    struts/sandbox/trunk/overdrive/PhoneBook/Core/App.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Core/AppEntry.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseList.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Core/Core.csproj
    struts/sandbox/trunk/overdrive/PhoneBook/Core/PhoneBook.Core.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Test/Commands/SelectAllTest.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Test/Objects.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Catalog.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Queries.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/providers.config
    struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config
    struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder.ascx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder2.ascx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Lister2.ascx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Catalog.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Queries.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.config
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.csproj
    struts/sandbox/trunk/overdrive/PhoneBook/Web/providers.config
    struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config
    struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config.xml

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Core/App.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/App.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/App.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/App.cs Tue Dec 19 16:46:01 2006
@@ -81,6 +81,10 @@
 
 		#region Commands
 
+		public const string FROM_DATE = "from_date";
+		
+		public const string THRU_DATE = "thru_date";
+
 		/// <summary>
 		/// Token for SQL LIMIT clause.
 		/// </summary>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Core/AppEntry.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/AppEntry.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/AppEntry.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/AppEntry.cs Tue Dec 19 16:46:01 2006
@@ -13,6 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+using System;
 using System.Collections;
 
 namespace PhoneBook.Core
@@ -21,6 +22,7 @@
 	/// Expose field attributes as public properties.
 	/// </summary>
 	/// 
+	[Serializable]
 	public class AppEntry
 	{
 		/// <summary>

Added: struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseCommand.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseCommand.cs?view=auto&rev=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseCommand.cs (added)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseCommand.cs Tue Dec 19 16:46:01 2006
@@ -0,0 +1,163 @@
+using System;
+using System.Text;
+using Agility.Core;
+using IBatisNet.DataMapper;
+using Nexus.Core;
+using Spring.Objects.Factory;
+
+namespace PhoneBook.Core.Commands
+{
+	/// <summary>
+	/// Provide an abtract extension of BaseNexusCommand 
+	/// with shared members for WNE Commands, 
+	/// including a SqlMapper factory method.
+	/// </summary>
+	/// <remarks><p>
+	/// Superclasses must implement a NexusExecute method (inherited from BaseNexusCommand.
+	/// </p><p>
+	/// Concrete subclasses are expected to be created by a IOC Container, like Spring.NET. 
+	/// Most concrete subclasses will be "decorator" classes designed to behave 
+	/// differently based on what properties are set when the class is created. 
+	/// Others may be custom classes with predefined behaviors. 
+	/// </p><p>
+	/// The Spring catalog provides the versatility we need to mix-and-match 
+	/// base commands with custom commands, as needed, 
+	/// and call either from the client in exactly the same way.
+	/// </p><p>
+	/// NOTE that subclasses should NOT use the Outcome property of 
+	/// the Nexus context since they may be subcommands in a Chain. 
+	/// All BaseCommands should use the idiom 
+	/// <code>context[ID] = object</code>
+	/// to store output.
+	/// </p><p>
+	/// NOTE after using the ReShaper code reformatter, 
+	/// the Mapper method needs to be edited. 
+	/// ReSharper removes an absolute reference that we actually need. 
+	/// (Our Mapper method calls the IBatisNet Mapper method.)
+	/// The correct line of code is maintained as a comment, 
+	/// so that it can <b>copied</b> over the reformatted version. 
+	/// </p></remarks>
+	public abstract class BaseCommand : RequestCommand, IObjectNameAware
+	{
+		/// <summary>
+		/// If an ID is not provided, default to the ObjectName.
+		/// </summary>
+		public override string ID
+		{
+			get
+			{
+				string _ID = base.ID;
+				if (null == _ID) return ObjectName;
+				else return _ID;
+			}
+			set { base.ID = value; }
+		}
+
+		private string _ObjectName;
+
+		/// <summary>
+		/// Provide a field for the Spring object name (set by Spring).
+		/// </summary>
+		public string ObjectName
+		{
+			get { return _ObjectName; }
+			set { _ObjectName = value; }
+		}
+
+		/// <summary>
+		/// Provide a field for the Remark property.
+		/// </summary>
+		private string _Remark;
+
+		/// <summary>
+		/// Accept an arbitrary comment about a command 
+		/// -- more for use in the XML document.
+		/// </summary>
+		/// 
+		public string Remark
+		{
+			get { return _Remark; }
+			set { _Remark = value; }
+		}
+
+		/// <summary>
+		/// Provide a field for the Mapper property.
+		/// </summary>
+		/// 
+		private SqlMapper _Mapper;
+
+		/// <summary>
+		/// Expose a preconfigured SqlMapper instance that Commands can use to run statements.
+		/// </summary>
+		/// <remarks><p>
+		/// Commands use Mapper to invoke SqlMap statements, such as 
+		/// <code>
+		/// object row = Mapper ().QueryForObject (QueryID, context);
+		/// </code>.
+		/// </p><p>
+		/// Any SqlMapper API method may be called. 
+		/// </p><p>
+		/// The default behavior of BAseNexusCommand is to use the 
+		/// command ID if the QueryID is null.
+		/// </p></remarks>
+		/// <returns>Preconfigured Mapper</returns>
+		/// 
+		public SqlMapper Mapper
+		{
+			get { return _Mapper; }
+			set { _Mapper = value; }
+		}
+
+		/// <summary>
+		/// Indicate whether string is null or zero length.
+		/// </summary>
+		/// <param name="input">Input to validate</param>
+		/// <returns>True if string is nyull or zero length</returns>
+		/// 
+		protected bool IsEmpty(string input)
+		{
+			return ((input == null) || (input.Equals(String.Empty)));
+		}
+
+		/// <summary>
+		/// Create new Global Universal Identifer as a formatted string.
+		/// </summary>
+		/// <returns>String representing a new GUID</returns>
+		/// <remarks><p>
+		/// No two calls to this method will ever return duplicate strings.
+		/// </p></remarks>
+		/// 
+		protected string GuidString()
+		{
+			Guid guid = Guid.NewGuid();
+			string gs = guid.ToString();
+			return gs;
+		}
+
+		/// <summary>
+		/// Document the wildcard character used by SQL queries.
+		/// </summary>
+		public const string WILDCARD = "%";
+
+		/// <summary>
+		/// Prepare an attribute for use with a SQL wildcard ("LIKE") operation.
+		/// </summary>
+		/// <remarks><p>
+		/// A wildcard is prepended and appended for a full, scan-across match, 
+		/// so that the string will found in any part of the field.
+		/// </p></remarks>
+		/// <param name="context">Context with attribute to escape</param>
+		/// <param name="id">Name of attribute to escape</param>
+		protected void LikeMe(IContext context, string id)
+		{
+			string param = context[id] as string;
+			if (null != param)
+			{
+				StringBuilder sb = new StringBuilder(WILDCARD);
+				sb.Append(param);
+				sb.Append(WILDCARD);
+				context[id] = sb.ToString();
+			}
+		}
+	}
+}
\ No newline at end of file

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseList.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseList.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseList.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/Commands/BaseList.cs Tue Dec 19 16:46:01 2006
@@ -1,32 +1,119 @@
-/* * Copyright 2005 The Apache Software Foundation.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+using System;
 using System.Collections;
 using Nexus.Core;
+using PhoneBook.Core;
 
 namespace PhoneBook.Core.Commands
 {
 	/// <summary>
-	/// Execute database statement indicated by QueryID, 
-	/// for a list of objects
-	/// returning each attribute in the main context.
+	/// Run the select query indicated by QueryID, 
+	/// first escaping any LikeIDs and extending any date ranges,
+	/// and return the result as an IList, 
 	/// </summary>
-	/// 
-	public class BaseList : BaseMapper
+	public class BaseList : BaseCommand
 	{
+		private IList _LikeIDs = null;
+
+		/// <summary>
+		/// Names of key fields to escape for a "like" search.
+		/// </summary>
+		public IList LikeIDs
+		{
+			get { return _LikeIDs; }
+			set { _LikeIDs = value; }
+		}
+
+		/// <summary>
+		/// Generate an array from the IDs.
+		/// </summary>
+		/// <returns>Array of LikeIDs</returns>
+		protected string[] GetArray(string IDs)
+		{
+			string csv = IDs;
+			bool noLike = ((null == csv) || (string.Empty.Equals(csv)));
+			if (noLike)
+				return new string[0];
+			else
+			{
+				string[] _Array = csv.Split(',');
+				return _Array;
+			}
+		}
+
+		/// <summary>
+		/// Document the last second of the day 
+		/// so as to calculate values for concepts like today and tomorrow.
+		/// </summary>
+		private string LAST_TICK = " 23:59";
+
+		/// <summary>
+		/// If ThruDate is set to the minimum time (00:00), 
+		/// set to the maximum time instead (23:59). 
+		/// </summary>
+		/// <param name="context"></param>
+		private void ExtendThruDate(IRequestContext context)
+		{
+			bool have = context.Contains(App.THRU_DATE);
+			if (!have) return;
+			DateTime thruDate = DateTime.MinValue;
+			try
+			{
+				thruDate = (DateTime) context[App.THRU_DATE];
+			}
+			catch (Exception e)
+			{
+				if (e != null) return; // Placate Resharper
+			}
+			bool defaultTime = (thruDate.Hour == 0) && (thruDate.Minute == 0) && (thruDate.Second == 0) &&
+				(thruDate.Millisecond == 0);
+			if (defaultTime)
+			{
+				string strThruDate = thruDate.ToShortDateString() + LAST_TICK;
+				DateTime newThruDate = Convert.ToDateTime(strThruDate);
+				context.Remove(App.THRU_DATE);
+				context.Add(App.THRU_DATE, newThruDate);
+			}
+		}
+
+		/// <summary>
+		/// Prepare special attributes for the query.
+		/// </summary>
+		/// <param name="context">The context we are processing</param>
+		protected void PreProcess(IRequestContext context)
+		{
+			// Escape any "like" fields
+			IList likes = LikeIDs;
+			if (likes != null)
+			{
+				IEnumerator e = likes.GetEnumerator();
+				while (e.MoveNext())
+					LikeMe(context, e.Current as string);
+			}
+
+			// Extend any "thru_date" to midnight
+			ExtendThruDate(context);
+
+			// Ensure that list_item and list_offset are numeric
+			object limit = context[App.ITEM_LIMIT];
+			if (limit != null)
+			{
+				context[App.ITEM_LIMIT] = Convert.ToInt32(limit);
+				object offset = context[App.ITEM_OFFSET];
+				context[App.ITEM_OFFSET] = Convert.ToInt32(offset);
+			}
+		}
+
+		/// <summary>
+		/// Provide a default, convenience implementation that will run a "QueryForList" 
+		/// using a data mapping statement of the same ID as the Command; 
+		/// override as needed.
+		/// </summary>
+		/// <param name="context">The INexusContext we are processing.</param>
+		/// <returns>CONTINUE, if an Exception is not thrown.</returns>
 		public override bool RequestExecute(IRequestContext context)
 		{
+			PreProcess(context);
+
 			IList rows = Mapper.QueryForList(QueryID, context);
 			context[ID] = rows;
 			return CONTINUE;

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Core/Core.csproj
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/Core.csproj?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/Core.csproj (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/Core.csproj Tue Dec 19 16:46:01 2006
@@ -94,6 +94,11 @@
                     AssemblyName = "Agility.Core"
                     HintPath = "..\..\local-cache\Agility\Agility.Core.dll"
                 />
+                <Reference
+                    Name = "Spring.Core"
+                    AssemblyName = "Spring.Core"
+                    HintPath = "..\..\local-cache\SpringNet\Spring.Core.dll"
+                />
             </References>
         </Build>
         <Files>
@@ -140,6 +145,11 @@
                 <Folder RelPath = "bin\Debug\" />
                 <File
                     RelPath = "Commands\AppCommand.cs"
+                    SubType = "Code"
+                    BuildAction = "Compile"
+                />
+                <File
+                    RelPath = "Commands\BaseCommand.cs"
                     SubType = "Code"
                     BuildAction = "Compile"
                 />

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Core/PhoneBook.Core.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Core/PhoneBook.Core.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Core/PhoneBook.Core.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Core/PhoneBook.Core.xml Tue Dec 19 16:46:01 2006
@@ -52,6 +52,118 @@
             <returns>Preconfigured Mapper instance</returns>
             
         </member>
+        <member name="T:PhoneBook.Core.Commands.BaseCommand">
+            <summary>
+            Provide an abtract extension of BaseNexusCommand 
+            with shared members for WNE Commands, 
+            including a SqlMapper factory method.
+            </summary>
+            <remarks><p>
+            Superclasses must implement a NexusExecute method (inherited from BaseNexusCommand.
+            </p><p>
+            Concrete subclasses are expected to be created by a IOC Container, like Spring.NET. 
+            Most concrete subclasses will be "decorator" classes designed to behave 
+            differently based on what properties are set when the class is created. 
+            Others may be custom classes with predefined behaviors. 
+            </p><p>
+            The Spring catalog provides the versatility we need to mix-and-match 
+            base commands with custom commands, as needed, 
+            and call either from the client in exactly the same way.
+            </p><p>
+            NOTE that subclasses should NOT use the Outcome property of 
+            the Nexus context since they may be subcommands in a Chain. 
+            All BaseCommands should use the idiom 
+            <code>context[ID] = object</code>
+            to store output.
+            </p><p>
+            NOTE after using the ReShaper code reformatter, 
+            the Mapper method needs to be edited. 
+            ReSharper removes an absolute reference that we actually need. 
+            (Our Mapper method calls the IBatisNet Mapper method.)
+            The correct line of code is maintained as a comment, 
+            so that it can <b>copied</b> over the reformatted version. 
+            </p></remarks>
+        </member>
+        <member name="F:PhoneBook.Core.Commands.BaseCommand.WILDCARD">
+            <summary>
+            Document the wildcard character used by SQL queries.
+            </summary>
+        </member>
+        <member name="F:PhoneBook.Core.Commands.BaseCommand._Remark">
+            <summary>
+            Provide a field for the Remark property.
+            </summary>
+        </member>
+        <member name="F:PhoneBook.Core.Commands.BaseCommand._Mapper">
+            <summary>
+            Provide a field for the Mapper property.
+            </summary>
+            
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseCommand.IsEmpty(System.String)">
+            <summary>
+            Indicate whether string is null or zero length.
+            </summary>
+            <param name="input">Input to validate</param>
+            <returns>True if string is nyull or zero length</returns>
+            
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseCommand.GuidString">
+            <summary>
+            Create new Global Universal Identifer as a formatted string.
+            </summary>
+            <returns>String representing a new GUID</returns>
+            <remarks><p>
+            No two calls to this method will ever return duplicate strings.
+            </p></remarks>
+            
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseCommand.LikeMe(Agility.Core.IContext,System.String)">
+            <summary>
+            Prepare an attribute for use with a SQL wildcard ("LIKE") operation.
+            </summary>
+            <remarks><p>
+            A wildcard is prepended and appended for a full, scan-across match, 
+            so that the string will found in any part of the field.
+            </p></remarks>
+            <param name="context">Context with attribute to escape</param>
+            <param name="id">Name of attribute to escape</param>
+        </member>
+        <member name="P:PhoneBook.Core.Commands.BaseCommand.ID">
+            <summary>
+            If an ID is not provided, default to the ObjectName.
+            </summary>
+        </member>
+        <member name="P:PhoneBook.Core.Commands.BaseCommand.ObjectName">
+            <summary>
+            Provide a field for the Spring object name (set by Spring).
+            </summary>
+        </member>
+        <member name="P:PhoneBook.Core.Commands.BaseCommand.Remark">
+            <summary>
+            Accept an arbitrary comment about a command 
+            -- more for use in the XML document.
+            </summary>
+            
+        </member>
+        <member name="P:PhoneBook.Core.Commands.BaseCommand.Mapper">
+            <summary>
+            Expose a preconfigured SqlMapper instance that Commands can use to run statements.
+            </summary>
+            <remarks><p>
+            Commands use Mapper to invoke SqlMap statements, such as 
+            <code>
+            object row = Mapper ().QueryForObject (QueryID, context);
+            </code>.
+            </p><p>
+            Any SqlMapper API method may be called. 
+            </p><p>
+            The default behavior of BAseNexusCommand is to use the 
+            command ID if the QueryID is null.
+            </p></remarks>
+            <returns>Preconfigured Mapper</returns>
+            
+        </member>
         <member name="T:PhoneBook.Core.Commands.BaseCount">
             <summary>
             Invoke a query that returns the count of a result set.
@@ -75,11 +187,49 @@
         </member>
         <member name="T:PhoneBook.Core.Commands.BaseList">
             <summary>
-            Execute database statement indicated by QueryID, 
-            for a list of objects
-            returning each attribute in the main context.
+            Run the select query indicated by QueryID, 
+            first escaping any LikeIDs and extending any date ranges,
+            and return the result as an IList, 
+            </summary>
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseList.GetArray(System.String)">
+            <summary>
+            Generate an array from the IDs.
+            </summary>
+            <returns>Array of LikeIDs</returns>
+        </member>
+        <member name="F:PhoneBook.Core.Commands.BaseList.LAST_TICK">
+            <summary>
+            Document the last second of the day 
+            so as to calculate values for concepts like today and tomorrow.
+            </summary>
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseList.ExtendThruDate(Nexus.Core.IRequestContext)">
+            <summary>
+            If ThruDate is set to the minimum time (00:00), 
+            set to the maximum time instead (23:59). 
+            </summary>
+            <param name="context"></param>
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseList.PreProcess(Nexus.Core.IRequestContext)">
+            <summary>
+            Prepare special attributes for the query.
+            </summary>
+            <param name="context">The context we are processing</param>
+        </member>
+        <member name="M:PhoneBook.Core.Commands.BaseList.RequestExecute(Nexus.Core.IRequestContext)">
+            <summary>
+            Provide a default, convenience implementation that will run a "QueryForList" 
+            using a data mapping statement of the same ID as the Command; 
+            override as needed.
+            </summary>
+            <param name="context">The INexusContext we are processing.</param>
+            <returns>CONTINUE, if an Exception is not thrown.</returns>
+        </member>
+        <member name="P:PhoneBook.Core.Commands.BaseList.LikeIDs">
+            <summary>
+            Names of key fields to escape for a "like" search.
             </summary>
-            
         </member>
         <member name="T:PhoneBook.Core.Commands.BaseSave">
             <summary>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/Commands/SelectAllTest.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/Commands/SelectAllTest.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/Commands/SelectAllTest.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/Commands/SelectAllTest.cs Tue Dec 19 16:46:01 2006
@@ -93,14 +93,14 @@
 		{
 			IViewHelper helper = catalog.GetHelperFor(App.ENTRY_LIST);
 			helper.Criteria[App.ITEM_LIMIT] = 2;
-			helper.Criteria[App.ITEM_OFFSET] = 4;
+			helper.Criteria[App.ITEM_OFFSET] = 0;
 			helper.Execute();
 			if (!helper.IsNominal) Assert.Fail(helper.AlertsText);
 			IList list = helper.Outcome;
 			Assert.IsTrue(list.Count == 2, "Expected result set to be limited to two entries.");
 			AppEntry entry = list[0] as AppEntry;
 			helper.Criteria[App.ITEM_LIMIT] = 2;
-			helper.Criteria[App.ITEM_OFFSET] = 2;
+			helper.Criteria[App.ITEM_OFFSET] = 3;
 			helper.Execute();
 			IList list2 = helper.Outcome;
 			AppEntry entry2 = list2[0] as AppEntry;

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/Objects.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/Objects.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/Objects.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/Objects.xml Tue Dec 19 16:46:01 2006
@@ -3,8 +3,6 @@
 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 	xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
 
-	<object id="Base" />
-	
 	<import resource="Resources/AppBase.xml"/>
 	<import resource="Resources/AppConfig.xml"/>
 	<import resource="Resources/AppFields.xml"/>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Catalog.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Catalog.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Catalog.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Catalog.xml Tue Dec 19 16:46:01 2006
@@ -20,6 +20,7 @@
 				<value>hours</value>
 				<value>editor</value>
 				<value>initial</value>
+				<value>item_count</value>
 				<value>item_offset</value>
 				<value>item_limit</value>
 			</list>
@@ -31,7 +32,7 @@
 		<property name="QueryID"><value>entry_count</value></property>
 		<property name="RelatedIDs">
 			<list>
-				<value>item_count</value>
+				<value>entry_list</value>
 				<value>entry_key</value>
 				<value>last_name</value>
 				<value>first_name</value>
@@ -40,6 +41,10 @@
 				<value>hired</value>
 				<value>hours</value>
 				<value>editor</value>
+				<value>initial</value>
+				<value>item_count</value>
+				<value>item_offset</value>
+				<value>item_limit</value>
 			</list>
 		</property>
   </object>
@@ -113,8 +118,8 @@
 		</property>
 		<property name="AddCommands">
 			<list>
-				<ref object="entry_list_rows" />
 				<ref object="entry_list_count" />
+				<ref object="entry_list_rows" />
 			</list>
 		</property>
 	</object>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Queries.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Queries.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Queries.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/Resources/Queries.xml Tue Dec 19 16:46:01 2006
@@ -1,9 +1,8 @@
-<?xml version="1.0" encoding="utf-8" ?> 
-
+<?xml version="1.0" encoding="UTF-8" ?>
 <sqlMap 
-	namespace="PhoneBook" 
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-	xsi:noNamespaceSchemaLocation="SqlMap.xsd" >
+	namespace="phonebook" 
+	xmlns="http://ibatis.apache.org/mapping" 
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
 
    <parameterMaps>
 		
@@ -108,7 +107,7 @@
 			   <isNotNull property="item_limit">
 					LIMIT #item_limit# OFFSET #item_offset# 
 			   </isNotNull>			
-			</dynamic>	
+			</dynamic>;
 		</select>
 
 		<select id="entry_count" paramClass="Hashtable" resultClass="string">

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/providers.config
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/providers.config?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/providers.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/providers.config Tue Dec 19 16:46:01 2006
@@ -1,102 +1,307 @@
-<?xml version="1.0" encoding="utf-8" ?> 
+<?xml version="1.0" encoding="utf-8"?>
+<providers 
+xmlns="http://ibatis.apache.org/providers" 
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
-<providers>
-	<clear/>
-	<provider
-		name="sqlServer1.0"
-		enabled="false"
-		assemblyName="System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
-		connectionClass="System.Data.SqlClient.SqlConnection" 
-		commandClass="System.Data.SqlClient.SqlCommand"
-		parameterClass="System.Data.SqlClient.SqlParameter"
-		parameterDbTypeClass="System.Data.SqlDbType"
-		parameterDbTypeProperty="SqlDbType"
-		dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
-		commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder"
-		usePositionalParameters = "false"
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"	
-		parameterPrefix="@"
-		/>	
-	<provider
-		name="sqlServer1.1"
-		enabled="false"
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
-		connectionClass="System.Data.SqlClient.SqlConnection"
-		commandClass="System.Data.SqlClient.SqlCommand"
-		parameterClass="System.Data.SqlClient.SqlParameter"
-		parameterDbTypeClass="System.Data.SqlDbType"
-		parameterDbTypeProperty="SqlDbType"
-		dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
-		commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder"	
-		usePositionalParameters = "false"	
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"				
-		parameterPrefix="@"
-	/>		
-	<provider 
-		name="OleDb1.1" 
-		enabled="false"		
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
-		connectionClass="System.Data.OleDb.OleDbConnection" 
-		commandClass="System.Data.OleDb.OleDbCommand" 
-		parameterClass="System.Data.OleDb.OleDbParameter" 
-		parameterDbTypeClass="System.Data.OleDb.OleDbType" 
-		parameterDbTypeProperty="OleDbType" 
-		dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
-		commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
-		usePositionalParameters = "true"
-		useParameterPrefixInSql = "false"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix = ""
-	/>
-	<provider 
-		name="Odbc1.1" 
-		enabled="false" 
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
-		connectionClass="System.Data.Odbc.OdbcConnection" 
-		commandClass="System.Data.Odbc.OdbcCommand" 
-		parameterClass="System.Data.Odbc.OdbcParameter" 
-		parameterDbTypeClass="System.Data.Odbc.OdbcType" 
-		parameterDbTypeProperty="OdbcType" 
-		dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
-		commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
-		usePositionalParameters = "true"
-		useParameterPrefixInSql = "false"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix = "@"
-	/>
-	<provider
-		name="oracle9.2"
-		enabled="false"
-		assemblyName="Oracle.DataAccess, Version=9.2.0.401, Culture=neutral, PublicKeyToken=89b483f429c47342"
-		connectionClass="Oracle.DataAccess.Client.OracleConnection" 
-		commandClass="Oracle.DataAccess.Client.OracleCommand"
-		parameterClass="Oracle.DataAccess.Client.OracleParameter"
-		parameterDbTypeClass="System.Data.Client.OracleDbType"
-		parameterDbTypeProperty="OracleDbType"
-		dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter"
-		commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder"
-		usePositionalParameters = "false"
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix=":" 
-	/>
-	<provider
-		name="ByteFx"
-		default="true"
-		assemblyName="ByteFX.MySqlClient, Version=0.7.6.15073, Culture=neutral, PublicKeyToken=f2fef6fed1732fc1"
-		connectionClass="ByteFX.Data.MySqlClient.MySqlConnection" 
-		commandClass="ByteFX.Data.MySqlClient.MySqlCommand"
-		parameterClass="ByteFX.Data.MySqlClient.MySqlParameter"
-		parameterDbTypeClass="ByteFX.Data.MySqlClient.MySqlDbType"
-		parameterDbTypeProperty="MySqlDbType"
-		dataAdapterClass="ByteFX.Data.MySqlClient.MySqlDataAdapter"
-		commandBuilderClass="ByteFX.Data.MySqlClient.MySqlCommandBuilder"
-		usePositionalParameters = "false"	
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"				
-		parameterPrefix="@"
+<clear/>
+<provider 
+	  name="sqlServer1.0" 
+	  description="Microsoft SQL Server, provider V1.0.3300.0 in framework .NET V1.0" 
+	  enabled="false" 
+	  assemblyName="System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" connectionClass="System.Data.SqlClient.SqlConnection" 
+	  commandClass="System.Data.SqlClient.SqlCommand" 
+	  parameterClass="System.Data.SqlClient.SqlParameter" 
+	  parameterDbTypeClass="System.Data.SqlDbType" 
+	  parameterDbTypeProperty="SqlDbType" 
+	  dataAdapterClass="System.Data.SqlClient.SqlDataAdapter" 
+	  commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder" 
+	  usePositionalParameters="false" 
+	  useParameterPrefixInSql="true" 
+	  useParameterPrefixInParameter="true" 
+	  parameterPrefix="@"
+      allowMARS="false"
+  />
+<provider 
+	  name="sqlServer1.1" 
+	  description="Microsoft SQL Server, provider V1.0.5000.0 in framework .NET V1.1" 
+	  enabled="true"
+	  default="true" 
+	  assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+	  connectionClass="System.Data.SqlClient.SqlConnection" 
+	  commandClass="System.Data.SqlClient.SqlCommand" 
+	  parameterClass="System.Data.SqlClient.SqlParameter" 
+	  parameterDbTypeClass="System.Data.SqlDbType" 
+	  parameterDbTypeProperty="SqlDbType" 
+	  dataAdapterClass="System.Data.SqlClient.SqlDataAdapter" 
+	  commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder" 
+	  usePositionalParameters="false" 
+	  useParameterPrefixInSql="true" 
+	  useParameterPrefixInParameter="true" 
+	  parameterPrefix="@"
+      allowMARS="false"
+  />
+<provider
+    name="sqlServer2.0"
+    enabled="false"
+    description="Microsoft SQL Server, provider V2.0.0.0 in framework .NET V2.0" 
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.SqlClient.SqlConnection" 
+    commandClass="System.Data.SqlClient.SqlCommand"
+    parameterClass="System.Data.SqlClient.SqlParameter"
+    parameterDbTypeClass="System.Data.SqlDbType"
+    parameterDbTypeProperty="SqlDbType"
+    dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
+    commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
+    usePositionalParameters = "false"
+    useParameterPrefixInSql = "true"
+    useParameterPrefixInParameter = "true" 
+    parameterPrefix="@"
+    allowMARS="false"
+    />
+<provider name="OleDb1.1" 
+	  description="OleDb, provider V1.0.5000.0 in framework .NET V1.1" 
+	  enabled="true"
+	  assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.OleDb.OleDbConnection" 
+	  commandClass="System.Data.OleDb.OleDbCommand" 
+	  parameterClass="System.Data.OleDb.OleDbParameter" 
+	  parameterDbTypeClass="System.Data.OleDb.OleDbType" 
+	  parameterDbTypeProperty="OleDbType" 
+	  dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
+	  commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
+	  usePositionalParameters="true" 
+	  useParameterPrefixInSql="false" 
+	  useParameterPrefixInParameter="false" 
+	  parameterPrefix=""
+    allowMARS="false"    
+    />
+  <provider name="OleDb2.0" 
+    description="OleDb, provider V2.0.0.0 in framework .NET V2" 
+    enabled="false"
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.OleDb.OleDbConnection" 
+    commandClass="System.Data.OleDb.OleDbCommand" 
+    parameterClass="System.Data.OleDb.OleDbParameter" 
+    parameterDbTypeClass="System.Data.OleDb.OleDbType" 
+    parameterDbTypeProperty="OleDbType" 
+    dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
+    commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=""
+    allowMARS="false"
+    />  
+  <provider 
+    name="Odbc1.1" 
+    description="Odbc, provider V1.0.5000.0 in framework .NET V1.1" 
+    enabled="true" 
+    assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.Odbc.OdbcConnection" 
+    commandClass="System.Data.Odbc.OdbcCommand" 
+    parameterClass="System.Data.Odbc.OdbcParameter" 
+    parameterDbTypeClass="System.Data.Odbc.OdbcType" 
+    parameterDbTypeProperty="OdbcType" 
+    dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
+    commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix="@"
+    allowMARS="false"    
+    />
+  <provider 
+    name="Odbc2.0" 
+    description="Odbc, provider V2.0.0.0 in framework .NET V2" 
+    enabled="false" 
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.Odbc.OdbcConnection" 
+    commandClass="System.Data.Odbc.OdbcCommand" 
+    parameterClass="System.Data.Odbc.OdbcParameter" 
+    parameterDbTypeClass="System.Data.Odbc.OdbcType" 
+    parameterDbTypeProperty="OdbcType" 
+    dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
+    commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />  
+  <provider 
+    name="oracle9.2" 
+    description="Oracle, Oracle provider V9.2.0.401" 
+    enabled="false" 
+    assemblyName="Oracle.DataAccess, Version=9.2.0.401, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.DataAccess.Client.OracleConnection" 
+    commandClass="Oracle.DataAccess.Client.OracleCommand" 
+    parameterClass="Oracle.DataAccess.Client.OracleParameter" 
+    parameterDbTypeClass="Oracle.DataAccess.Client.OracleDbType" 
+    parameterDbTypeProperty="OracleDbType" 
+    dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter" 
+    commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder" 
+    usePositionalParameters="false"
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=":" 
+    useDeriveParameters="false"
+    allowMARS="false"    
+  />
+  <provider 
+    name="oracle10.1" 
+    description="Oracle, oracle provider V10.1.0.301"
+    enabled="false" 
+    assemblyName="Oracle.DataAccess, Version=10.1.0.301, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.DataAccess.Client.OracleConnection" 
+    commandClass="Oracle.DataAccess.Client.OracleCommand" 
+    parameterClass="Oracle.DataAccess.Client.OracleParameter" 
+    parameterDbTypeClass="Oracle.DataAccess.Client.OracleDbType" 
+    parameterDbTypeProperty="OracleDbType" 
+    dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter" 
+    commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="true"
+    useParameterPrefixInParameter="true" 
+    parameterPrefix=":" 
+    useDeriveParameters="false"
+    allowMARS="false"    
+  />
+  <provider 
+    name="oracleClient1.0" 
+    description="Oracle, Microsoft provider V1.0.5000.0" 
+    enabled="false" 
+    assemblyName="System.Data.OracleClient, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" connectionClass="System.Data.OracleClient.OracleConnection" 
+    commandClass="System.Data.OracleClient.OracleCommand" 
+    parameterClass="System.Data.OracleClient.OracleParameter" 
+    parameterDbTypeClass="System.Data.OracleClient.OracleType" 
+    parameterDbTypeProperty="OracleType" 
+    dataAdapterClass="System.Data.OracleClient.OracleDataAdapter" 
+    commandBuilderClass="System.Data.OracleClient.OracleCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=":"
+    allowMARS="false"    
+  />
+  <provider 
+    name="ByteFx" 
+    description="MySQL, ByteFx provider V0.7.6.15073" 
+    enabled="false" 
+    assemblyName="ByteFX.MySqlClient, Version=0.7.6.15073, Culture=neutral, PublicKeyToken=f2fef6fed1732fc1" connectionClass="ByteFX.Data.MySqlClient.MySqlConnection" 
+    commandClass="ByteFX.Data.MySqlClient.MySqlCommand" 
+    parameterClass="ByteFX.Data.MySqlClient.MySqlParameter" 
+    parameterDbTypeClass="ByteFX.Data.MySqlClient.MySqlDbType" 
+    parameterDbTypeProperty="MySqlDbType" 
+    dataAdapterClass="ByteFX.Data.MySqlClient.MySqlDataAdapter" 
+    commandBuilderClass="ByteFX.Data.MySqlClient.MySqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />
+  <provider 
+    name="MySql" 
+    description="MySQL, MySQL provider 1.0.7.30072" 
+    enabled="true" 
+    assemblyName="MySql.Data, Version=1.0.7.30072, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionClass="MySql.Data.MySqlClient.MySqlConnection" 
+    commandClass="MySql.Data.MySqlClient.MySqlCommand" 
+    parameterClass="MySql.Data.MySqlClient.MySqlParameter" 
+    parameterDbTypeClass="MySql.Data.MySqlClient.MySqlDbType" 
+    parameterDbTypeProperty="MySqlDbType" 
+    dataAdapterClass="MySql.Data.MySqlClient.MySqlDataAdapter" 
+    commandBuilderClass="MySql.Data.MySqlClient.MySqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="?"
+    allowMARS="false"    
+  />
+  <provider name="SQLite3"
+    description="SQLite, SQLite.NET provider V0.21.1869.3794"
+    enabled="false"
+    assemblyName="SQLite.NET, Version=0.21.1869.3794, Culture=neutral, PublicKeyToken=c273bd375e695f9c" 
+    connectionClass="Finisar.SQLite.SQLiteConnection"
+    commandClass="Finisar.SQLite.SQLiteCommand"
+    parameterClass="Finisar.SQLite.SQLiteParameter"
+    parameterDbTypeClass="System.Data.DbType, System.Data"
+    parameterDbTypeProperty="DbType"
+    dataAdapterClass="Finisar.SQLite.SQLiteDataAdapter"
+    commandBuilderClass="Finisar.SQLite.SQLiteCommandBuilder"
+    usePositionalParameters="false"
+    useParameterPrefixInSql="true"
+    useParameterPrefixInParameter="true"
+    parameterPrefix="@"
+    setDbParameterPrecision="false"
+    setDbParameterScale="false"
+    allowMARS="false"    
+  />
+  <provider
+    name="Firebird1.7" 
+    description="Firebird, Firebird SQL .NET provider V1.7.0.33200" 
+    enabled="false" 
+    assemblyName="FirebirdSql.Data.Firebird, Version=1.7.0.33200, Culture=neutral, PublicKeyToken=fa843d180294369d" connectionClass="FirebirdSql.Data.Firebird.FbConnection" 
+    commandClass="FirebirdSql.Data.Firebird.FbCommand" 
+    parameterClass="FirebirdSql.Data.Firebird.FbParameter" 
+    parameterDbTypeClass="FirebirdSql.Data.Firebird.FbDbType" 
+    parameterDbTypeProperty="FbDbType" 
+    dataAdapterClass="FirebirdSql.Data.Firebird.FbDataAdapter" 
+    commandBuilderClass="FirebirdSql.Data.Firebird.FbCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />
+  <provider
+    name="PostgreSql0.99.1.0" 
+    description="PostgreSql, Npgsql provider V0.99.1.0" 
+    enabled="false" 
+    assemblyName="Npgsql, Version=0.99.1.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" 
+    connectionClass="Npgsql.NpgsqlConnection" 
+    commandClass="Npgsql.NpgsqlCommand" 
+    parameterClass="Npgsql.NpgsqlParameter" 
+    parameterDbTypeClass="NpgsqlTypes.NpgsqlDbType" 
+    parameterDbTypeProperty="NpgsqlDbType" 
+    dataAdapterClass="Npgsql.NpgsqlDataAdapter" 
+    commandBuilderClass="Npgsql.NpgsqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix=":"
+    allowMARS="true"    
+  />	
+  <provider 
+    name="iDb2.10" 
+    description="IBM DB2 Provider, V 10.0" 
+    enabled="false" 
+    assemblyName="IBM.Data.DB2.iSeries, Version=10.0.0.0,Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26, Custom=null" connectionClass="IBM.Data.DB2.iSeries.iDB2Connection" 
+    commandClass="IBM.Data.DB2.iSeries.iDB2Command" 
+    parameterClass="IBM.Data.DB2.iSeries.iDB2Parameter" 
+    parameterDbTypeClass="IBM.Data.DB2.iSeries.iDB2DbType" 
+    parameterDbTypeProperty="iDB2DbType" 
+    dataAdapterClass="IBM.Data.DB2.iSeries.iDB2DataAdapter" 
+    commandBuilderClass="IBM.Data.DB2.iSeries.iDB2CommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=""
+    allowMARS="false"    
+  />
+  <provider 
+    name="Informix" 
+    description="Informix NET Provider, 2.81.0.0" 
+    enabled="false" 
+    assemblyName="IBM.Data.Informix, Version=2.81.0.0, Culture=neutral, PublicKeyToken=7c307b91aa13d208" 
+    connectionClass="IBM.Data.Informix.IfxConnection" 
+    commandClass="IBM.Data.Informix.IfxCommand" 
+    parameterClass="IBM.Data.Informix.IfxParameter" 
+    parameterDbTypeClass="IBM.Data.Informix.IfxType" 
+    parameterDbTypeProperty="IfxType" 
+    dataAdapterClass="IBM.Data.Informix.IfxDataAdapter" 
+    commandBuilderClass="IBM.Data.Informix.IfxCommandBuilder" 
+    usePositionalParameters = "true" 
+    useParameterPrefixInSql = "false" 
+    useParameterPrefixInParameter = "false" 
+    useDeriveParameters="false" 
+    allowMARS="false"    
 	/>
 </providers>
-	

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config Tue Dec 19 16:46:01 2006
@@ -1,7 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<sqlMapConfig
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-  xsi:noNamespaceSchemaLocation="SqlMapConfig.xsd">
+<?xml version="1.0" encoding="utf-8"?>
+<sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" >
 
     <properties resource="sqlmap.config.xml"/>
     

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Test/bin/Debug/sqlmap.config.xml Tue Dec 19 16:46:01 2006
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding="utf-8" ?> 
+<?xml version="1.0" encoding="utf-8" ?> 
 <settings>
     <add key="root" value="../../" />
-	<add key="provider" value="ByteFx" />
-	<add key="development" value="Host=localhost;Database=phonebook;Username=root" />
+	<add key="provider" value="MySql" />
+	<add key="development" value="Host=localhost;Database=phonebook;Username=phonebookApp;Password=p1nH34d" />
 	<add key="production" value="Host=zippy;Database=phonebook;Username=phonebookApp;Password=p1nH34d" />
 </settings>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder.ascx.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder.ascx.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder.ascx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder.ascx.cs Tue Dec 19 16:46:01 2006
@@ -27,7 +27,7 @@
 		/// 
 		public void Open()
 		{
-			IViewHelper h = this.ExecuteBind(App.ENTRY_FIND);
+			IViewHelper h = ExecuteBind(App.ENTRY_FIND);
 			bool ok = (h.IsNominal);
 			if (!ok)
 				Page_Alert = h;

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder2.ascx.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder2.ascx.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder2.ascx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Finder2.ascx.cs Tue Dec 19 16:46:01 2006
@@ -52,7 +52,7 @@
 		{
 			if (Filter_Changed == null) return;
 			Filter_Reset(null);
-			IViewHelper helper = Read(App.ENTRY_FIND);
+			IViewHelper helper = Read(App.ENTRY_LIST);
 			Filter_Changed(this, new ViewArgs(helper));
 		}
 

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Lister2.ascx.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Lister2.ascx.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Lister2.ascx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Controls/Lister2.ascx.cs Tue Dec 19 16:46:01 2006
@@ -165,20 +165,21 @@
 			SaveCommand = App.ENTRY_SAVE;
 			DataKeyField = App.ENTRY_KEY;
 			AllowCustomPaging = true;
+			PageSize = 2;
 			// HasEditColumn = true; // Set from profile
 
-			IList list = new ArrayList(7);
-			list.Add(GetConfig(App.LAST_NAME));
-			list.Add(GetConfig(App.FIRST_NAME));
-			list.Add(GetConfig(App.EXTENSION));
-			list.Add(GetConfig(App.USER_NAME));
-			list.Add(GetConfig(App.HIRED));
-			list.Add(GetConfig(App.HOURS));
+			IList cols = new ArrayList(7);
+			cols.Add(GetConfig(App.LAST_NAME));
+			cols.Add(GetConfig(App.FIRST_NAME));
+			cols.Add(GetConfig(App.EXTENSION));
+			cols.Add(GetConfig(App.USER_NAME));
+			cols.Add(GetConfig(App.HIRED));
+			cols.Add(GetConfig(App.HOURS));
 			IGridConfig c = GetConfig(App.EDITOR);
 			c.ItemTemplate = new KeyValueTemplate(App.EDITOR, EditorKeyList);
 			c.EditItemTemplate = new DropDownListTemplate(App.EDITOR, EditorKeyList);
-			list.Add(c);
-			Configs = list;
+			cols.Add(c);
+			Configs = cols;
 		}
 
 		/// <summary>
@@ -207,7 +208,8 @@
 		private void Page_Init()
 		{
 			Grid_Init(list);
-			this.ListPageIndexChanged += new EventHandler(this_ListPageIndexChanged);
+			
+			ListPageIndexChanged += new EventHandler(this_ListPageIndexChanged);
 			add.Click += new EventHandler(list_Add);
 		}
 

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx Tue Dec 19 16:46:01 2006
@@ -14,20 +14,20 @@
 	</HEAD>
 	<body>
 		<h1>PhoneBook Directory</h1>
-			<form id="form" method="post" runat="server">
+			<form id="form1" method="post" runat="server">
 			
 			<!-- ERROR -->
-			<asp:Panel ID="error_panel" Runat="server">
-			<p><asp:Label ID="error_label" Runat="server"></asp:Label></p>
+			<asp:Panel id="error_panel" runat="server">
+			<p><asp:Label id="error_label" runat="server"></asp:Label></p>
 			<hr>
 			</asp:Panel>
 			
 			<!-- PROMPT -->
 			<p>Select a filter to display fewer entries.</p>	
 
-			<app:Finder id="finder" Runat="server" OnClick="finder_Click"></app:Finder>
+			<app:Finder id="finder" runat="server"></app:Finder>
 			
- 			<app:Lister id="lister" runat="server" OnClick="lister_Click"></app:Lister>
+ 			<app:Lister id="lister" runat="server"></app:Lister>
 
 		</form>
 	</body>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs Tue Dec 19 16:46:01 2006
@@ -125,7 +125,7 @@
 		private void View_Init(ViewControl c)
 		{
 			c.View_Alert += new EventHandler(View_Error);
-			c.Catalog = this.Catalog; // ISSUE: Why isn't control injection working?
+			c.Catalog = Catalog; // ISSUE: Why isn't control injection working?
 		}
 
 		/// <summary>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx Tue Dec 19 16:46:01 2006
@@ -1,13 +1,12 @@
-<%@ Register TagPrefix="ovr" Namespace="Nexus.Web" Assembly="Nexus.Web" %>
-<%@ Page language="c#" Codebehind="Directory2.aspx.cs" AutoEventWireup="false" Inherits="PhoneBook.Web.Forms.Directory2" %>
-<%@ Register TagPrefix="app" TagName="Filter" Src="../Controls/InitialFilter.ascx" %>
-<%@ Register TagPrefix="app" TagName="Lister" Src="../Controls/Lister2.ascx" %>
 <%@ Register TagPrefix="app" TagName="Finder" Src="../Controls/Finder2.ascx" %>
-
+<%@ Register TagPrefix="app" TagName="Lister" Src="../Controls/Lister2.ascx" %>
+<%@ Register TagPrefix="app" TagName="Filter" Src="../Controls/InitialFilter.ascx" %>
+<%@ Page language="c#" Codebehind="Directory2.aspx.cs" AutoEventWireup="false" Inherits="PhoneBook.Web.Forms.Directory2" %>
+<%@ Register TagPrefix="ovr" Namespace="Nexus.Web" Assembly="Nexus.Web" %>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
 <HTML>
 	<HEAD>
-		<title id="title" runat="server"></title>		
+		<title runat="server" id="title"></title>
 		<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
 		<meta name="CODE_LANGUAGE" Content="C#">
 		<meta name="vs_defaultClientScript" content="JavaScript">
@@ -15,32 +14,28 @@
 		<LINK href="default.css" type="text/css" rel="stylesheet">
 	</HEAD>
 	<body>
-	
 		<h1 id="heading" runat="server"></h1>
-			<form id="form" method="post" runat="server">
-			<p><asp:Label ID="greeting" Runat="server"></asp:Label> <asp:Label ID="profile_label" Runat="server"></asp:Label></p>
-			
+		<form id="form1" method="post" runat="server">
+			<p><asp:Label ID="greeting" Runat="server"></asp:Label>
+				<asp:Label ID="profile_label" Runat="server"></asp:Label></p>
 			<!-- ERROR -->
 			<asp:Panel ID="error_panel" Runat="server">
-			<p><asp:Label ID="error_label" Runat="server"></asp:Label></p>
-			<hr>
+				<P>
+					<asp:Label id="error_label" Runat="server"></asp:Label></P>
+				<HR>
 			</asp:Panel>
-			
 			<!-- PROMPT -->
 			<asp:Panel ID="prompt_panel" Runat="server">
-			<p><asp:Label ID="prompt_label" Runat="server"></asp:Label></p>
-			<hr>
+				<P>
+					<asp:Label id="prompt_label" Runat="server"></asp:Label></P>
+				<HR>
 			</asp:Panel>
-						
 			<!-- FINDER -->
 			<app:Finder id="finder" Runat="server"></app:Finder>
-			
 			<!-- LETTER FILTER -->
 			<app:Filter id="letter_filter" Runat="server"></app:Filter>
-
 			<!-- LISTER -->
- 			<app:Lister id="lister" runat="server"></app:Lister>
-			
+			<app:Lister id="lister" runat="server"></app:Lister>
 		</form>
 	</body>
 </HTML>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs Tue Dec 19 16:46:01 2006
@@ -148,7 +148,7 @@
 		private void View_Init(ViewControl c)
 		{
 			c.View_Alert += new EventHandler(View_Error);
-			c.Catalog = this.Catalog; // ISSUE: Why isn't control injection working?
+			c.Catalog = Catalog; // ISSUE: Why isn't control injection working?
 		}
 
 		private void Page_PreRender(object sender, EventArgs e)
@@ -196,8 +196,11 @@
 		/// <summary>
 		/// Handle Filter Changed event by opening the Lister control 
 		/// and passing through the search criteria 
-		/// provided by the event arts.
+		/// provided by the event args, 
+		/// so that the Lister control can present the matching entities.
 		/// </summary>
+		/// <remarks>
+		/// </remarks>
 		/// <param name="sender">Event source</param>
 		/// <param name="e">Runtime arguements</param>
 		/// 
@@ -205,7 +208,7 @@
 		{
 			ViewArgs a = e as ViewArgs;
 			IViewHelper helper = a.Helper;
-			lister.Reset(helper.Criteria);
+			lister.Reset(helper.Criteria); // Runs the list command with new criteria
 		}
 
 		#endregion
@@ -231,13 +234,14 @@
 		private void Page_Init()
 		{
 			Profile = Session[UserProfile.USER_PROFILE] as AppUserProfile;
-			this.PreRender += new EventHandler(this.Page_PreRender);
+			PreRender += new EventHandler(Page_PreRender);
 
 			View_Init(finder);
 
 			View_Init(letter_filter);
 			letter_filter.View_Filter += new EventHandler(letter_filter_View_Filter);
 			IViewHelper helper = Catalog.GetHelperFor(App.ENTRY_INITIAL);
+
 			helper.Execute();
 			letter_filter.Open(helper.Outcome);
 

Copied: struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects-web.xml (from r484633, struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects.xml)
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects-web.xml?view=diff&rev=488871&p1=struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects.xml&r1=484633&p2=struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects-web.xml&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Objects-web.xml Tue Dec 19 16:46:01 2006
@@ -3,11 +3,9 @@
 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 	xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
 
-	<object id="Base" />
-	
-	<import resource="Resources/AppBase.xml"/>
-	<import resource="Resources/AppConfig.xml"/>
-	<import resource="Resources/AppFields.xml"/>
-	<import resource="Resources/Catalog.xml"/>
+	<import resource="web://~/Resources/AppBase.xml"/>
+	<import resource="web://~/Resources/AppConfig.xml"/>
+	<import resource="web://~/Resources/AppFields.xml"/>
+	<import resource="web://~/Resources/Catalog.xml"/>
 	
 </objects>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Catalog.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Catalog.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Catalog.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Catalog.xml Tue Dec 19 16:46:01 2006
@@ -20,6 +20,7 @@
 				<value>hours</value>
 				<value>editor</value>
 				<value>initial</value>
+				<value>item_count</value>
 				<value>item_offset</value>
 				<value>item_limit</value>
 			</list>
@@ -31,7 +32,7 @@
 		<property name="QueryID"><value>entry_count</value></property>
 		<property name="RelatedIDs">
 			<list>
-				<value>item_count</value>
+				<value>entry_list</value>
 				<value>entry_key</value>
 				<value>last_name</value>
 				<value>first_name</value>
@@ -40,6 +41,10 @@
 				<value>hired</value>
 				<value>hours</value>
 				<value>editor</value>
+				<value>initial</value>
+				<value>item_count</value>
+				<value>item_offset</value>
+				<value>item_limit</value>
 			</list>
 		</property>
   </object>
@@ -113,8 +118,8 @@
 		</property>
 		<property name="AddCommands">
 			<list>
-				<ref object="entry_list_rows" />
 				<ref object="entry_list_count" />
+				<ref object="entry_list_rows" />
 			</list>
 		</property>
 	</object>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Queries.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Queries.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Queries.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Queries.xml Tue Dec 19 16:46:01 2006
@@ -1,9 +1,8 @@
-<?xml version="1.0" encoding="utf-8" ?> 
-
+<?xml version="1.0" encoding="UTF-8" ?>
 <sqlMap 
-	namespace="PhoneBook" 
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-	xsi:noNamespaceSchemaLocation="SqlMap.xsd" >
+	namespace="phonebook" 
+	xmlns="http://ibatis.apache.org/mapping" 
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
 
    <parameterMaps>
 		
@@ -108,7 +107,7 @@
 			   <isNotNull property="item_limit">
 					LIMIT #item_limit# OFFSET #item_offset# 
 			   </isNotNull>			
-			</dynamic>	
+			</dynamic>;
 		</select>
 
 		<select id="entry_count" paramClass="Hashtable" resultClass="string">

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.config
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.config?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.config Tue Dec 19 16:46:01 2006
@@ -9,7 +9,7 @@
 
     <spring>
         <context type="Spring.Context.Support.WebApplicationContext, Spring.Web">
-            <resource uri="~/Objects.xml"/>
+            <resource uri="~/Objects-Web.xml"/>
         </context>
     </spring>  
     

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.csproj
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.csproj?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.csproj (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Web.csproj Tue Dec 19 16:46:01 2006
@@ -115,11 +115,6 @@
                     HintPath = "..\..\local-cache\SpringNet\Spring.Web.dll"
                 />
                 <Reference
-                    Name = "ByteFX.MySqlClient"
-                    AssemblyName = "ByteFX.MySqlClient"
-                    HintPath = "..\..\local-cache\iBatisNet\ByteFX.MySqlClient.dll"
-                />
-                <Reference
                     Name = "Agility.Core"
                     AssemblyName = "Agility.Core"
                     HintPath = "..\..\local-cache\Agility\Agility.Core.dll"
@@ -129,6 +124,16 @@
                     AssemblyName = "Nexus.Extras"
                     HintPath = "..\..\local-cache\Nexus\Nexus.Extras.dll"
                 />
+                <Reference
+                    Name = "Jayrock.Json"
+                    AssemblyName = "Jayrock.Json"
+                    HintPath = "..\..\local-cache\jayrock\Jayrock.Json.dll"
+                />
+                <Reference
+                    Name = "Jayrock"
+                    AssemblyName = "Jayrock"
+                    HintPath = "..\..\local-cache\jayrock\Jayrock.dll"
+                />
             </References>
         </Build>
         <Files>
@@ -159,7 +164,15 @@
                     BuildAction = "EmbeddedResource"
                 />
                 <File
-                    RelPath = "Objects.xml"
+                    RelPath = "HelloWorld.ashx"
+                    BuildAction = "None"
+                />
+                <File
+                    RelPath = "HelloWorld.html"
+                    BuildAction = "Content"
+                />
+                <File
+                    RelPath = "Objects-web.xml"
                     BuildAction = "Content"
                 />
                 <File
@@ -186,7 +199,7 @@
                 <File
                     RelPath = "Controls\AppGridControl.ascx.cs"
                     DependentUpon = "AppGridControl.ascx"
-                    SubType = "Code"
+                    SubType = "ASPXCodeBehind"
                     BuildAction = "Compile"
                 />
                 <File
@@ -202,7 +215,7 @@
                 <File
                     RelPath = "Controls\Finder.ascx.cs"
                     DependentUpon = "Finder.ascx"
-                    SubType = "Code"
+                    SubType = "ASPXCodeBehind"
                     BuildAction = "Compile"
                 />
                 <File
@@ -218,7 +231,7 @@
                 <File
                     RelPath = "Controls\Finder2.ascx.cs"
                     DependentUpon = "Finder2.ascx"
-                    SubType = "Code"
+                    SubType = "ASPXCodeBehind"
                     BuildAction = "Compile"
                 />
                 <File
@@ -250,7 +263,7 @@
                 <File
                     RelPath = "Controls\Lister.ascx.cs"
                     DependentUpon = "Lister.ascx"
-                    SubType = "Code"
+                    SubType = "ASPXCodeBehind"
                     BuildAction = "Compile"
                 />
                 <File
@@ -302,7 +315,7 @@
                 <File
                     RelPath = "Forms\Directory2.aspx.cs"
                     DependentUpon = "Directory2.aspx"
-                    SubType = "Code"
+                    SubType = "ASPXCodeBehind"
                     BuildAction = "Compile"
                 />
                 <File

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/providers.config
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/providers.config?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/providers.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/providers.config Tue Dec 19 16:46:01 2006
@@ -1,102 +1,307 @@
-<?xml version="1.0" encoding="utf-8" ?> 
+<?xml version="1.0" encoding="utf-8"?>
+<providers 
+xmlns="http://ibatis.apache.org/providers" 
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
-<providers>
-	<clear/>
-	<provider
-		name="sqlServer1.0"
-		enabled="false"
-		assemblyName="System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
-		connectionClass="System.Data.SqlClient.SqlConnection" 
-		commandClass="System.Data.SqlClient.SqlCommand"
-		parameterClass="System.Data.SqlClient.SqlParameter"
-		parameterDbTypeClass="System.Data.SqlDbType"
-		parameterDbTypeProperty="SqlDbType"
-		dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
-		commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder"
-		usePositionalParameters = "false"
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"	
-		parameterPrefix="@"
-		/>	
-	<provider
-		name="sqlServer1.1"
-		enabled="false"
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
-		connectionClass="System.Data.SqlClient.SqlConnection"
-		commandClass="System.Data.SqlClient.SqlCommand"
-		parameterClass="System.Data.SqlClient.SqlParameter"
-		parameterDbTypeClass="System.Data.SqlDbType"
-		parameterDbTypeProperty="SqlDbType"
-		dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
-		commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder"	
-		usePositionalParameters = "false"	
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"				
-		parameterPrefix="@"
-	/>		
-	<provider 
-		name="OleDb1.1" 
-		enabled="false"		
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
-		connectionClass="System.Data.OleDb.OleDbConnection" 
-		commandClass="System.Data.OleDb.OleDbCommand" 
-		parameterClass="System.Data.OleDb.OleDbParameter" 
-		parameterDbTypeClass="System.Data.OleDb.OleDbType" 
-		parameterDbTypeProperty="OleDbType" 
-		dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
-		commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
-		usePositionalParameters = "true"
-		useParameterPrefixInSql = "false"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix = ""
-	/>
-	<provider 
-		name="Odbc1.1" 
-		enabled="false" 
-		assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
-		connectionClass="System.Data.Odbc.OdbcConnection" 
-		commandClass="System.Data.Odbc.OdbcCommand" 
-		parameterClass="System.Data.Odbc.OdbcParameter" 
-		parameterDbTypeClass="System.Data.Odbc.OdbcType" 
-		parameterDbTypeProperty="OdbcType" 
-		dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
-		commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
-		usePositionalParameters = "true"
-		useParameterPrefixInSql = "false"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix = "@"
-	/>
-	<provider
-		name="oracle9.2"
-		enabled="false"
-		assemblyName="Oracle.DataAccess, Version=9.2.0.401, Culture=neutral, PublicKeyToken=89b483f429c47342"
-		connectionClass="Oracle.DataAccess.Client.OracleConnection" 
-		commandClass="Oracle.DataAccess.Client.OracleCommand"
-		parameterClass="Oracle.DataAccess.Client.OracleParameter"
-		parameterDbTypeClass="System.Data.Client.OracleDbType"
-		parameterDbTypeProperty="OracleDbType"
-		dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter"
-		commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder"
-		usePositionalParameters = "false"
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "false"
-		parameterPrefix=":" 
-	/>
-	<provider
-		name="ByteFx"
-		default="true"
-		assemblyName="ByteFX.MySqlClient, Version=0.7.6.15073, Culture=neutral, PublicKeyToken=f2fef6fed1732fc1"
-		connectionClass="ByteFX.Data.MySqlClient.MySqlConnection" 
-		commandClass="ByteFX.Data.MySqlClient.MySqlCommand"
-		parameterClass="ByteFX.Data.MySqlClient.MySqlParameter"
-		parameterDbTypeClass="ByteFX.Data.MySqlClient.MySqlDbType"
-		parameterDbTypeProperty="MySqlDbType"
-		dataAdapterClass="ByteFX.Data.MySqlClient.MySqlDataAdapter"
-		commandBuilderClass="ByteFX.Data.MySqlClient.MySqlCommandBuilder"
-		usePositionalParameters = "false"	
-		useParameterPrefixInSql = "true"
-		useParameterPrefixInParameter = "true"				
-		parameterPrefix="@"
+<clear/>
+<provider 
+	  name="sqlServer1.0" 
+	  description="Microsoft SQL Server, provider V1.0.3300.0 in framework .NET V1.0" 
+	  enabled="false" 
+	  assemblyName="System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" connectionClass="System.Data.SqlClient.SqlConnection" 
+	  commandClass="System.Data.SqlClient.SqlCommand" 
+	  parameterClass="System.Data.SqlClient.SqlParameter" 
+	  parameterDbTypeClass="System.Data.SqlDbType" 
+	  parameterDbTypeProperty="SqlDbType" 
+	  dataAdapterClass="System.Data.SqlClient.SqlDataAdapter" 
+	  commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder" 
+	  usePositionalParameters="false" 
+	  useParameterPrefixInSql="true" 
+	  useParameterPrefixInParameter="true" 
+	  parameterPrefix="@"
+      allowMARS="false"
+  />
+<provider 
+	  name="sqlServer1.1" 
+	  description="Microsoft SQL Server, provider V1.0.5000.0 in framework .NET V1.1" 
+	  enabled="true"
+	  default="true" 
+	  assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+	  connectionClass="System.Data.SqlClient.SqlConnection" 
+	  commandClass="System.Data.SqlClient.SqlCommand" 
+	  parameterClass="System.Data.SqlClient.SqlParameter" 
+	  parameterDbTypeClass="System.Data.SqlDbType" 
+	  parameterDbTypeProperty="SqlDbType" 
+	  dataAdapterClass="System.Data.SqlClient.SqlDataAdapter" 
+	  commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder" 
+	  usePositionalParameters="false" 
+	  useParameterPrefixInSql="true" 
+	  useParameterPrefixInParameter="true" 
+	  parameterPrefix="@"
+      allowMARS="false"
+  />
+<provider
+    name="sqlServer2.0"
+    enabled="false"
+    description="Microsoft SQL Server, provider V2.0.0.0 in framework .NET V2.0" 
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.SqlClient.SqlConnection" 
+    commandClass="System.Data.SqlClient.SqlCommand"
+    parameterClass="System.Data.SqlClient.SqlParameter"
+    parameterDbTypeClass="System.Data.SqlDbType"
+    parameterDbTypeProperty="SqlDbType"
+    dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
+    commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
+    usePositionalParameters = "false"
+    useParameterPrefixInSql = "true"
+    useParameterPrefixInParameter = "true" 
+    parameterPrefix="@"
+    allowMARS="false"
+    />
+<provider name="OleDb1.1" 
+	  description="OleDb, provider V1.0.5000.0 in framework .NET V1.1" 
+	  enabled="true"
+	  assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.OleDb.OleDbConnection" 
+	  commandClass="System.Data.OleDb.OleDbCommand" 
+	  parameterClass="System.Data.OleDb.OleDbParameter" 
+	  parameterDbTypeClass="System.Data.OleDb.OleDbType" 
+	  parameterDbTypeProperty="OleDbType" 
+	  dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
+	  commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
+	  usePositionalParameters="true" 
+	  useParameterPrefixInSql="false" 
+	  useParameterPrefixInParameter="false" 
+	  parameterPrefix=""
+    allowMARS="false"    
+    />
+  <provider name="OleDb2.0" 
+    description="OleDb, provider V2.0.0.0 in framework .NET V2" 
+    enabled="false"
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.OleDb.OleDbConnection" 
+    commandClass="System.Data.OleDb.OleDbCommand" 
+    parameterClass="System.Data.OleDb.OleDbParameter" 
+    parameterDbTypeClass="System.Data.OleDb.OleDbType" 
+    parameterDbTypeProperty="OleDbType" 
+    dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
+    commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=""
+    allowMARS="false"
+    />  
+  <provider 
+    name="Odbc1.1" 
+    description="Odbc, provider V1.0.5000.0 in framework .NET V1.1" 
+    enabled="true" 
+    assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.Odbc.OdbcConnection" 
+    commandClass="System.Data.Odbc.OdbcCommand" 
+    parameterClass="System.Data.Odbc.OdbcParameter" 
+    parameterDbTypeClass="System.Data.Odbc.OdbcType" 
+    parameterDbTypeProperty="OdbcType" 
+    dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
+    commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix="@"
+    allowMARS="false"    
+    />
+  <provider 
+    name="Odbc2.0" 
+    description="Odbc, provider V2.0.0.0 in framework .NET V2" 
+    enabled="false" 
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.Odbc.OdbcConnection" 
+    commandClass="System.Data.Odbc.OdbcCommand" 
+    parameterClass="System.Data.Odbc.OdbcParameter" 
+    parameterDbTypeClass="System.Data.Odbc.OdbcType" 
+    parameterDbTypeProperty="OdbcType" 
+    dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
+    commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />  
+  <provider 
+    name="oracle9.2" 
+    description="Oracle, Oracle provider V9.2.0.401" 
+    enabled="false" 
+    assemblyName="Oracle.DataAccess, Version=9.2.0.401, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.DataAccess.Client.OracleConnection" 
+    commandClass="Oracle.DataAccess.Client.OracleCommand" 
+    parameterClass="Oracle.DataAccess.Client.OracleParameter" 
+    parameterDbTypeClass="Oracle.DataAccess.Client.OracleDbType" 
+    parameterDbTypeProperty="OracleDbType" 
+    dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter" 
+    commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder" 
+    usePositionalParameters="false"
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=":" 
+    useDeriveParameters="false"
+    allowMARS="false"    
+  />
+  <provider 
+    name="oracle10.1" 
+    description="Oracle, oracle provider V10.1.0.301"
+    enabled="false" 
+    assemblyName="Oracle.DataAccess, Version=10.1.0.301, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.DataAccess.Client.OracleConnection" 
+    commandClass="Oracle.DataAccess.Client.OracleCommand" 
+    parameterClass="Oracle.DataAccess.Client.OracleParameter" 
+    parameterDbTypeClass="Oracle.DataAccess.Client.OracleDbType" 
+    parameterDbTypeProperty="OracleDbType" 
+    dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter" 
+    commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="true"
+    useParameterPrefixInParameter="true" 
+    parameterPrefix=":" 
+    useDeriveParameters="false"
+    allowMARS="false"    
+  />
+  <provider 
+    name="oracleClient1.0" 
+    description="Oracle, Microsoft provider V1.0.5000.0" 
+    enabled="false" 
+    assemblyName="System.Data.OracleClient, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" connectionClass="System.Data.OracleClient.OracleConnection" 
+    commandClass="System.Data.OracleClient.OracleCommand" 
+    parameterClass="System.Data.OracleClient.OracleParameter" 
+    parameterDbTypeClass="System.Data.OracleClient.OracleType" 
+    parameterDbTypeProperty="OracleType" 
+    dataAdapterClass="System.Data.OracleClient.OracleDataAdapter" 
+    commandBuilderClass="System.Data.OracleClient.OracleCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=":"
+    allowMARS="false"    
+  />
+  <provider 
+    name="ByteFx" 
+    description="MySQL, ByteFx provider V0.7.6.15073" 
+    enabled="false" 
+    assemblyName="ByteFX.MySqlClient, Version=0.7.6.15073, Culture=neutral, PublicKeyToken=f2fef6fed1732fc1" connectionClass="ByteFX.Data.MySqlClient.MySqlConnection" 
+    commandClass="ByteFX.Data.MySqlClient.MySqlCommand" 
+    parameterClass="ByteFX.Data.MySqlClient.MySqlParameter" 
+    parameterDbTypeClass="ByteFX.Data.MySqlClient.MySqlDbType" 
+    parameterDbTypeProperty="MySqlDbType" 
+    dataAdapterClass="ByteFX.Data.MySqlClient.MySqlDataAdapter" 
+    commandBuilderClass="ByteFX.Data.MySqlClient.MySqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />
+  <provider 
+    name="MySql" 
+    description="MySQL, MySQL provider 1.0.7.30072" 
+    enabled="true" 
+    assemblyName="MySql.Data, Version=1.0.7.30072, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionClass="MySql.Data.MySqlClient.MySqlConnection" 
+    commandClass="MySql.Data.MySqlClient.MySqlCommand" 
+    parameterClass="MySql.Data.MySqlClient.MySqlParameter" 
+    parameterDbTypeClass="MySql.Data.MySqlClient.MySqlDbType" 
+    parameterDbTypeProperty="MySqlDbType" 
+    dataAdapterClass="MySql.Data.MySqlClient.MySqlDataAdapter" 
+    commandBuilderClass="MySql.Data.MySqlClient.MySqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="?"
+    allowMARS="false"    
+  />
+  <provider name="SQLite3"
+    description="SQLite, SQLite.NET provider V0.21.1869.3794"
+    enabled="false"
+    assemblyName="SQLite.NET, Version=0.21.1869.3794, Culture=neutral, PublicKeyToken=c273bd375e695f9c" 
+    connectionClass="Finisar.SQLite.SQLiteConnection"
+    commandClass="Finisar.SQLite.SQLiteCommand"
+    parameterClass="Finisar.SQLite.SQLiteParameter"
+    parameterDbTypeClass="System.Data.DbType, System.Data"
+    parameterDbTypeProperty="DbType"
+    dataAdapterClass="Finisar.SQLite.SQLiteDataAdapter"
+    commandBuilderClass="Finisar.SQLite.SQLiteCommandBuilder"
+    usePositionalParameters="false"
+    useParameterPrefixInSql="true"
+    useParameterPrefixInParameter="true"
+    parameterPrefix="@"
+    setDbParameterPrecision="false"
+    setDbParameterScale="false"
+    allowMARS="false"    
+  />
+  <provider
+    name="Firebird1.7" 
+    description="Firebird, Firebird SQL .NET provider V1.7.0.33200" 
+    enabled="false" 
+    assemblyName="FirebirdSql.Data.Firebird, Version=1.7.0.33200, Culture=neutral, PublicKeyToken=fa843d180294369d" connectionClass="FirebirdSql.Data.Firebird.FbConnection" 
+    commandClass="FirebirdSql.Data.Firebird.FbCommand" 
+    parameterClass="FirebirdSql.Data.Firebird.FbParameter" 
+    parameterDbTypeClass="FirebirdSql.Data.Firebird.FbDbType" 
+    parameterDbTypeProperty="FbDbType" 
+    dataAdapterClass="FirebirdSql.Data.Firebird.FbDataAdapter" 
+    commandBuilderClass="FirebirdSql.Data.Firebird.FbCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix="@"
+    allowMARS="false"    
+  />
+  <provider
+    name="PostgreSql0.99.1.0" 
+    description="PostgreSql, Npgsql provider V0.99.1.0" 
+    enabled="false" 
+    assemblyName="Npgsql, Version=0.99.1.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" 
+    connectionClass="Npgsql.NpgsqlConnection" 
+    commandClass="Npgsql.NpgsqlCommand" 
+    parameterClass="Npgsql.NpgsqlParameter" 
+    parameterDbTypeClass="NpgsqlTypes.NpgsqlDbType" 
+    parameterDbTypeProperty="NpgsqlDbType" 
+    dataAdapterClass="Npgsql.NpgsqlDataAdapter" 
+    commandBuilderClass="Npgsql.NpgsqlCommandBuilder" 
+    usePositionalParameters="false" 
+    useParameterPrefixInSql="true" 
+    useParameterPrefixInParameter="true" 
+    parameterPrefix=":"
+    allowMARS="true"    
+  />	
+  <provider 
+    name="iDb2.10" 
+    description="IBM DB2 Provider, V 10.0" 
+    enabled="false" 
+    assemblyName="IBM.Data.DB2.iSeries, Version=10.0.0.0,Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26, Custom=null" connectionClass="IBM.Data.DB2.iSeries.iDB2Connection" 
+    commandClass="IBM.Data.DB2.iSeries.iDB2Command" 
+    parameterClass="IBM.Data.DB2.iSeries.iDB2Parameter" 
+    parameterDbTypeClass="IBM.Data.DB2.iSeries.iDB2DbType" 
+    parameterDbTypeProperty="iDB2DbType" 
+    dataAdapterClass="IBM.Data.DB2.iSeries.iDB2DataAdapter" 
+    commandBuilderClass="IBM.Data.DB2.iSeries.iDB2CommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=""
+    allowMARS="false"    
+  />
+  <provider 
+    name="Informix" 
+    description="Informix NET Provider, 2.81.0.0" 
+    enabled="false" 
+    assemblyName="IBM.Data.Informix, Version=2.81.0.0, Culture=neutral, PublicKeyToken=7c307b91aa13d208" 
+    connectionClass="IBM.Data.Informix.IfxConnection" 
+    commandClass="IBM.Data.Informix.IfxCommand" 
+    parameterClass="IBM.Data.Informix.IfxParameter" 
+    parameterDbTypeClass="IBM.Data.Informix.IfxType" 
+    parameterDbTypeProperty="IfxType" 
+    dataAdapterClass="IBM.Data.Informix.IfxDataAdapter" 
+    commandBuilderClass="IBM.Data.Informix.IfxCommandBuilder" 
+    usePositionalParameters = "true" 
+    useParameterPrefixInSql = "false" 
+    useParameterPrefixInParameter = "false" 
+    useDeriveParameters="false" 
+    allowMARS="false"    
 	/>
 </providers>
-	

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config Tue Dec 19 16:46:01 2006
@@ -1,7 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<sqlMapConfig
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-  xsi:noNamespaceSchemaLocation="SqlMapConfig.xsd">
+<?xml version="1.0" encoding="utf-8"?>
+<sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" >
 
     <properties resource="sqlmap.config.xml"/>
     
@@ -16,7 +14,7 @@
 	</database>
 
 	<sqlMaps>
-		<sqlMap resource="${root}/Resources/Queries.xml"/>
+		<sqlMap resource="${root}Resources/Queries.xml"/>
 	</sqlMaps>
 
 </sqlMapConfig>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config.xml?view=diff&rev=488871&r1=488870&r2=488871
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/sqlmap.config.xml Tue Dec 19 16:46:01 2006
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8" ?> 
 <settings>
-    <add key="root" value="." />
-	<add key="provider" value="ByteFx" />
-	<add key="development" value="Host=localhost;Database=phonebook;Username=root" />
+	<add key="root" value="./" />
+	<add key="provider" value="MySql" />
+	<add key="development" value="Host=localhost;Database=phonebook;Username=phonebookApp;Password=p1nH34d" />
 	<add key="production" value="Host=zippy;Database=phonebook;Username=phonebookApp;Password=p1nH34d" />
 </settings>