Video Screencast Help
Search Video Help Close Back
to help
Not able to make it to Vision this year? Get a sampling in the Best of Vision on Demand group.

Issues with workflow project published as webservice

Updated: 11 Jul 2011 | 4 comments
Jimbaland's picture
0 0 Votes
Login to vote
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

reecardo's picture
08
Jul
2011
1 Vote +1
Login to vote

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.

Rob Moore's picture
08
Jul
2011
2 Votes +2
Login to vote

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

Jimbaland's picture
11
Jul
2011
0 Votes 0
Login to vote

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 :).

Rob Moore's picture
11
Jul
2011
0 Votes 0
Login to vote

Reecardo works for symantec!

he does not need the points!

 

Glad we could help.

 

rob