Thanks for the quick reply!
Yes, I'm pretty sure the service has access. I can reproduce this on my desktop (IIS + web service + our app/iBatis). A single process instance has no errors, that is - calling the same web service repetitively varying only the parameters. The more instances there are the more trouble there is - competing applications calling the same service repetitively. Multiple instances calling the same functions as functions (bypassing IIS) have no trouble. I can appreciate that I'm not giving you much to work with. I was hoping there would be an obvious configuration problem with IIS or iBatis. Something I should have said before is that we've been using iBatis in our local apps for a couple of years with no real problems. Web services are a new twist for us. Thanks Bob ________________________________ From: Clough, Samuel (USPC.PRG.Atlanta) [mailto:[EMAIL PROTECTED] Sent: Monday, May 07, 2007 11:10 AM To: [email protected] Subject: RE: System.Data.SqlClient.SqlException: Invalid object This is a huge shot in the dark, but are you sure that the service you are running in IIS can access all the assemblies it needs? ________________________________ From: Campbell, Bob [mailto:[EMAIL PROTECTED] Sent: Monday, May 07, 2007 1:52 PM To: [email protected] Subject: System.Data.SqlClient.SqlException: Invalid object Hi, I'm a relative iBatis novice. The guy who knew much about iBatis recently left the company. We have iBatis.Net DataMapper 1.3 running on a Windows Server 2003 behind some web services. We're having some trouble with IIS and/or iBatis and I was wondering if you could point me in the right direction. The problem is when we run multiple instances of a repetitive web service query we get lots of errors (example below). The errors are all the same except the object names. If we call the web services locally as a function (no IIS) there are no errors. I created a similar web service that makes direct SQL calls (using IIS but not iBatis) again there are no errors. We only get errors when calling the services through IIS with iBatis. Any suggestion would be appreciated. ------------------------------------------------------------------------ ------------------------------------------------------------------ System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Data.SqlClient.SqlException: Invalid object name 'address'. Invalid object name 'project'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateO bject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlDataReader.ConsumeMetaData() at System.Data.SqlClient.SqlDataReader.get_MetaData() at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader() at IBatisNet.DataMapper.MappedStatements.MappedStatement.RunQueryForList(Re questScope request, IDalSession session, Object parameterObject, Int32 skipResults, Int32 maxResults, RowDelegate rowDelegate) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForLis t(IDalSession session, Object parameterObject, Int32 skipResults, Int32 maxResults) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForLis t(IDalSession session, Object parameterObject) at IBatisNet.DataMapper.SqlMapper.QueryForList(String statementName, Object parameterObject) at BusinessObject.FirmwareDAO.SelectAddress(String projectName) at BusinessObject.FirmwareDAO.Load(String projectName) at BusinessObject.ProjectDAO.Load(String projectName, Boolean getPDLInfo) at BusinessObject.ProductDBFunctions.GetProject(String projectName, Boolean getPDLInfo) at DataService.DataService.DataService.IDataService.GetProduct(String productName, Boolean getPDLInfo) at UpgradeService.UpgradeService.UpgradeService.IUpgradeService.GetExecutor Image(String productName, IList`1 execList) at UpgradeWebService.GetExecImage(String productName, Int32[] execList, String userName, String token) --- End of inner exception stack trace --- ________________________________ Princeton Retirement Group, Inc - Important Terms This E-mail is not intended for distribution to, or use by, any person or entity in any location where such distribution or use would be contrary to law or regulation, or which would subject Princeton Retirement Group, Inc. or any affiliate to any registration requirement within such location. This E-mail may contain privileged or confidential information or may otherwise be protected by work product immunity or other legal rules. No confidentiality or privilege is waived or lost by any mistransmission. Access, copying or re-use of information by non-intended or non-authorized recipients is prohibited. If you are not an intended recipient of this E-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute any portion of this E-mail. The transmission and content of this E-mail cannot be guaranteed to be secure or error-free. Therefore, we cannot represent that the information in this E-mail is complete, accurate, uncorrupted, timely or free of viruses, and Princeton Retirement Group, Inc. cannot accept any liability for E-mails that have been altered in the course of delivery. Princeton Retirement Group, Inc. reserves the right to monitor, review and retain all electronic communications, including E-mail, traveling through its networks and systems (subject to and in accordance with local laws). If any of your details are incorrect or if you no longer wish to receive mailings such as this by E-mail please contact the sender by reply E-mail. ________________________________

