v9 - Usage of Process Activator

Hi all,

I'm trying to set up a simple application which uses a web service created by the Process Activator, which I have used to expose a process as a web service.

Problem is: this is totally undocumented.

I have created a vb.net exe and added the web reference to the web service. Now all I can do is call "Open" and "Close" methods. Other methods behave in a different way than what I have found in documentation (wich in fact refers to 7.5 version).

For example, the login methods asks for four arguments:

clientType - string. I assume it is the clientType used in the SAP script?

currentSAP - integer. The number of the SAP I want to use for the login?

authenticationProcess - string. I really don't know. The SAP name maybe?

loginData - an array of form Fields. I think I must write in here user and password.

I have tried to fill the parameters in many ways but the best I got is:

 

"Engine Exception occurred - String reference not set to an instance of a String.
Parameter name: name"

 

Did anybody manage to make this work? Or - better, much better - does Metastorm plan to put out a document containing explanations and examples on how to use web services generated by the Process Activator?

Thank you all,

Yuri Pasquinelli

Tagged:

Comments

  • There is some documentation right at the end of the designer user guide for v9 SR1.

  • It just explains how to create the web service. There is no word on how to consume it.

    Yuri

  • I guess they think that the consuming part will happen in another program, and so outside the scope of their documentation. Where are you trying to access it from?

  • I am trying to do it from a web application written in C#.

    There are some explanations on how the web services are to be called in 7.6 manuals, including code snippets in C#. There the go in detail on how to make a login and how to pass form field values.

    But the Process Activator has been changed, now the Login method (for example) accepts four parameters, different from the two that were present in version 7.6.

    I expect for version 9 to be produced something like what was produced for version 7.6.

    Yuri

  • I can't actually get my process activator working at the moment (something about a missing registry setting). So I'm not a lot of help!

     

    If you're REALLY stuck you could try and write a .net web service yourself as a wrapper to the metastorm work, and connect to your own eweb service rather than the metastorm one. Seems to be a fair number of login methods in the metastorm objects visible through .net, one of them had only username and password as parameters, so you might be able to get in that way at a push. But it would be nice to do things the 'normal' way.

     

    It would be nice too if there was an 'examples' section on the website for all this stuff, because there's a lot of us that want to use this kind of thing.

  • About the registry, I had a similar problem, and I think it is yours.

    There is a bug - I think - when you install on a 64 bit environment.

    Registry settings are written under HKLM/Software/Wow6432Node/Metastorm etc, because Metastorm BPM works in 32 bit.

    Problem is that the Process Activator ignores it and goes looking for the registry settings to connect to the database under the normal path in the registry (without the "Wow6432Node" key).

    To solve it, I exported the registry settings, modified them deleting "Wow6432Node" from the paths, and imported them.

     

    Thanks for your suggestions about web services, I have already managed to find another way to do what I needed. Anyway I expect Metastorm to produce documentation about what I need.

    Yuri

  • That could well be why my process metadata service will not start. I'll try that one, thanks!

  • Nice link at the bottom of your message :)
    I have registered, it seems to be a good point to learn and share about e-work.
    Regards,
    yuri

  • Hi,

     

    I have created 3 text fields for a simple  blank form on my test process.

    I have used the Process Activator to create a service, but when I validate my service I get a CS0102 - definition for Text31 already exists.

     

    When I look at the complier output, indeed, all the fields are duplicated for some reason.

     

    In the absence of any documentation, does anyone have experience of successfully using the Process Activator and able to get Web Service calls working through the Process Activator.

     

    I am using V9.0 SR2

     

     

  • Attached is some sample C# code that I've used in an ASP.NET page to call a web service that was activated using the Process Activator.  This is for an initiation action (Blank Form - initiateLocation is the action name).  You should be able to modify this code slightly to call your particular web service-enabled action.  Keep in mind of course that you will need to add the Service Reference in Visual Studio for your service.  I also added a using statement for the imported service reference.

     

    Hopefully this helps-

  • Hello, you may find the following link useful, which avoids the need for the registry change.

     

    http://blogs.msdn.com/b/rakkimk/archive/2007/11/03/iis7-running-32-bit-and-64-bit-asp-net-versions-at-the-same-time-on-different-worker-processes.aspx

     

    Best Regards

    Rich

  • Hi Ari Chopra,

     

    Thank you for this sample of code. we are also have the similar requirement comsuming metastrom web service in .net application. but the wsdl exposed by metastorm is not having the correct web operation definition for every operation its showing literal as request parameter and response parameter so after adding the web reference of metastorm wsdl we not getting the correct proxy class with interface for invocking webservice.

     

    If posible can you please provide the sample metastorm wsdl file which you have used.

     

    sample of our wsdl for login operation we got in wsdl:

     

    http://metastorm.com/ECL_services/IAWSService/Login**" style="**document**" />

     

     

  • I am having a bit of a problem myself. I used the process activator to publish the service. Everything showed up fine.  I was moving along in my web app setting up the referenecs and when i got to the login it was asking for 5 parameters instead of the 4 I saw in the examples:

     

    Login(string ClientType, int currentSAP,bool currentSAPSpecified,string authenticationProcess,LoginData)

     

    I used the folliwing values:

    eclServiceSession = objX.Login("WEB;", 0, false, "", loginData);

     

    and received the following error

     

    "Engine Exception occurred - look at the inner detail of this exception for more information."

     

    The inner exception was NULL but had the following when i drilled down further.

     

    _COMPlusExceptionCode -532462766

     

    This is a new one for me. Has anyone seen this?

     

  • I believe the reason you are getting an extra parameter is because you have added a web reference rather than a service reference this will be dependant on what .net framework you are targeting in visual studio.

     

    I have had problems getting this working I have been getting error

     

    The HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'Negotiate,NTLM'.

     

    I resolved this by changing the web.config for my process web service I changed the security mode to TransportCredentialOnly and the clientCredentialType to Windows case sensitive so be careful

     

            <binding name="basicHttpBinding_Service" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false"

    hostNameComparisonMode="StrongWildcard" maxBufferSize="41943040" maxBufferPoolSize="524288" maxReceivedMessageSize="41943040" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered">                                                              

  • Yes, I was adding it as a web reference instead of service.

     

    I made the changes you suggested to the config file of the service that was created and now i am getting the following message that you mentioned.

     

    "The HTTP request is unauthorized with client authentication scheme 'Negotiate'."

     

    Instead of the message to look at the inner exception.  Could really use some guidance on how to get the service i created  working. 

     

     

     

     

     

  • Hi

     

    I was trying to use some action published as webservice by processactivator in another process. But If I try to login i have error message like this:

     

    "Engine Exception occurred - look at the inner detail of this exception for more information"

     

    Any ideas?

     

  • @Mike G: How did you get by this error?

     

    "The HTTP request is unauthorized with client authentication scheme 'Negotiate'."

  • Mike G,

     

    Did this ever get resolved for you? I had the same original error (InnerException), changed the config as suggested and received the "HTTP request is unauthorized" error as well. Were you able to get it to work?

     

    Thanks,

    -Scott