How can i excute the flow service from HTML Page and return back the contents of the flow servic ...

Hi,
I have seen that from HTML page u can invoke the flow service using POST which can transfer you to another page( where service invokes with all the parameters in querystring)

But if i want to get the results back on the same HTML page is that possible?

Thanks,
AS

When you create a FORM in yourpage.dsp to invoke the Flow, be sure to include all of the variables currently in your pipeline as HIDDEN variables. This will appear in your code as:




.
.
.

Then, in your Developer, set your template HTML to yourpage.dsp, the same page from which the service is invoked.

The invoked Flow outputs a variable that you are trying to capture. Include that output in yourpage.dsp as %value yourOutput%. Surround the DSP tag with the proper if-else block:

%ifvar yourOutput -isnotempty% 
    add formatting and data here 
%endif%
To recap:
  1. Create HIDDEN Form fields to submit pipeline variables to service []Assign the proper DSP template for the invoked Flow []Add the proper tags in the DSP template to display the service output

Dan,
Thanks for your input. But here if i am submitting a page from browser through the webserver (e.g. wmusers.com :: which adds 2 ints and return their result back on the same page) and i want to get the output on the same page how can i do that?

How should i include the dsp page in the HTML page to hide the DSP tags before i invoke the service?

and do i have to create another form to get the DSP page working?

Thanks,
AS

Is Javascript an option here? Just curious because the shoe seems to fit.

There is a DSP tag %include filename% that will dump the contents of a DSP file where specified. I use the %include filename% tag for setting template header and footers. You may be able to use it for what you are doing here.

Try creating a DSP named “outputPage.dsp” whose entire body is as follows:

%value integerSum%

Then, in your “addInt.dsp” file – and this MUST be a DSP – put the tag %include outputPage.dsp% where you want the results to show up.

What we are trying to do here is use a DSP default to our advantage. When a %value variable% has no value, the DSP renders an empty string. So, when you call your %include filename%, if there is no value for the variable integerSum, there will be no value in the formatted HTML.

This should let you call the same page for multiple steps.

But, like I said, if you are only adding two integers, I would use Javascript to make the changes. If you need help with that, let me know.

Hi Dan and AS -

> But if i want to get the results back on the same HTML
> page is that possible?

The simplest solution may be to make the page being displayed the HTTP POST target.

i.e. “add.dsp” has the following HTML:

...

In the DSP, you can detect which mode you were being called in. i.e. If data was passed in the number fields, then you could invoke the pub.math:addInts service and display the result, otherwise you could just display the form.

hi dgreen,

I am was facing something similar in my problem. In my probelm i have a html template set in the properties box of a flow service and want it to invoke a dsp and send a varaible called string into the pipeline. (Ref:http://wmusers.com/forum/showthread.php?t=15436&highlight=DSP)

I tried what you had mentioned in you quote below and renamed my template with an extension of dsp ie. from template1.html to template1.dsp (which i places in the template folder of the pacakge) and set it in the properties window of the developer for the flow service.

But when i invoked the flow service I got an response as a grey variable dump screen of webMethods and not the DSP formatting as given in the template1.dsp. Also in the properties field when i set the name of the template to template1.dsp the type listings wer for html,xml,hdml only and an dsp option was not visible.

Can you tell me how to go about solving my problem of invoking a DSP using a HTML template, also would appreciate if you can respond to my query put up at the link mentioned.

thanks,
nightfox