Issues with workflow project published as webservice
Updated: 11 Jul 2011 | 4 comments
This issue has been solved. See solution.
I'm trying to publish a workflow project as a webservice which will ultimately be deployed as a dialog service item to the NS. Right now im just trying to get the project to work when published (it works in debug). When i execute it in its published state, i get the following...
System.Data.SqlClient.SqlException: CREATE PROCEDURE permission denied in database 'Symantec_WF_PRD'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at LogicBase.Core.Messaging.SqlExchange.CreateTables(String[] createDDL) at LogicBase.Core.Messaging.SqlExchange..ctor(SqlExchangeConfiguration config, String name) at LogicBase.Core.Messaging.SqlExchangeConfiguration.Create(String name) at LogicBase.Core.Messaging.MessageExchangeFactory.CreateLocalTarget(String name, Boolean internalRequest) at LogicBase.Core.Messaging.MessageExchangeFactory.GetExchangeTarget(String name, Boolean internalRequest) at LogicBase.Core.Messaging.AliasConfiguration.Create(String name) at LogicBase.Core.Messaging.MessageExchangeFactory.CreateLocalTarget(String name, Boolean internalRequest) at LogicBase.Core.Messaging.MessageExchangeFactory.GetExchangeTarget(String name, Boolean internalRequest) at LogicBase.Core.Messaging.MessageExchangeFactory.GetExchange(String name, Boolean internalRequest) at LogicBase.Core.Messaging.MessageExchangeFactory.GetExchange(String name) at LogicBase.Components.Default.ExchangeAdapters.LogicBaseExchangeWorkQueue.SetProperties(IData properties) at LogicBase.Core.Models.Workflow.WorkQueueFactory.Setup(IData properties) at LogicBase.Core.Models.Workflow.WorkflowExecutionEngine.GetEngine() at Default.MyService.Execute()
Ideas?
Thanks
Discussion Filed Under:
Comments
The user context of the
The user context of the debugger is different than the user context of the deployed workflow. I believe deployed workflows run under an NETWORK SERVICE user by default, but it can be setup to run under others. I'd verify that theis user has appropriate CREATE permissions.
You need to define the Proper Username and password
You need to define the Proper Username and password in the DB connection String, otherwise you will not be able to execute the SP.
Like Reecardo says, the context is different from the debugger. You could also create a new Application Pool in IIS, and use a defined username. All items executed by the Webservice would be done under that user context.
rob
Thanks guys! You both helped
Thanks guys! You both helped me get to the solution. I created a new Application Pool and changed the credentials with which the service ran and voila. Runs like a champ. I wish i could mark both as the solution :).
Reecardo works for symantec!
he does not need the points!
Glad we could help.
rob
Would you like to reply?
Login or Register to post your comment.