CH15: Example not working
I followed the example in ch 15 to create a new workflow step that is exposed in Sharepoint Designer. Since I can't figure out how to debug my DLL (little green getting back into Visual Studio, last time I played was VB6 - I know, I know, but I'm learning), I'm stuck at this point.
Everything seems to function properly with respect to the rest of the setup. my .ACTIONS file seems fine, it gets exposed properly. I can use the step in a workflow and set all the properties and check it and save it. I can run the workflow, but it 'always' returns:
Object reference not set to an instance of an object.
Which is an entirely separate pet peeve I have with workflow error reporting in Sharepoint, but I'll let that go for now.
I tried adding a little comment like "Fred! " in front of ex.Message in the service.LogToHistoryList, but no go. I even tried adding calls to that at the beginning of my try command to see if I could log something simple before getting that 'run home to mamma' error, but no go.
Any ideas as to where the problem might be, or more importantly, tips on debugging this thing? Seems like I'm really close. I have downloaded and used other custom workflow elements that others have written, so I know they can be registered and work fine in my environment. I'm just failing on my end to do something.
Note: One thing that seems different between my environment and what the book would seem to indicate 'should' work occurs with figure 15-8. I don't get to just see those 3 things to add on my .NET tab. I had to go find the 3 DLLs I needed to pull down out of the server's ISAPI folder and then use the 'browse' button to navigate to where I saved the files locally and referenced them that way. Seems to compile fine, the references seem to work for the build, and presumably once I put my DLL up on the server and include it in the global assembly cache, the references will work with those registered on the server?
Side question: after each time I rebuild my DLL and copy it up to the server, do I have to uninstall it from the global assembly cache and drag it back into the GAC each time, or is it enough once it's included (so long as I throw my DLL out in the same folder) to simply do the iisreset?
Thank you for any assistance!