Http请求发送到BW

时间:2011-05-08 18:46:14

标签: tibco businessworks

我有一个带有一些表单字段的html页面(比如文本框,提交按钮等)我想点击提交按钮调用BW进程,它会将表单字段值(文本框值)发送到BW进程定义。

BW流程定义将执行一些操作(如检索数据库记录)并将结果发送到html页面。

当我使用http://localhost:9999时,它只会调用BW进程(Http接收器和发送HTTP响应),而html页面将填充我从“发送HTTP响应”调色板获得的字符串。

如何将HTTP响应嵌入到响应网页的某些文本字段中,以及HTML页面中已存在的少量图像和其他字段。

2 个答案:

答案 0 :(得分:3)

从您的描述中不清楚,但我认为您的HTML表单是本地文件系统上的.html文件。这可能意味着您的所有图像也是本地文件系统上的文件。 HTTP响应HTML不能包含对客户端本地文件系统上的资源的任何引用。如果您希望在响应页面中嵌入图像或其他资源,则有三种可能性,按复杂程度排列:

  1. 设置一个Web服务器(例如Apache HTTPd或Tomcat)来存储您的图像,并从HTTP Response HTML(img src =“http://my.web.server/images/logo.jpg”)中引用它们。在这种情况下,您还可以将输入表单放在此服务器上。
  2. Base-64对您的图像进行编码(例如logo.jpg),将其作为文本存储在BW Mapper资源中。扩展您的BW进程,因此如果它收到图像请求(例如RequestURI =“/ images / logo.jpg”),则HTTP Response返回图像二进制数据,base-64编码(当然您还需要设置响应)内容类型= “图像/ JPEG”)。在这种情况下,您可以将响应中的图像作为本地资源引用(img src =“/ images / logo.jpg”)
  3. 使您的表示层智能化,使用Javascript / Flash / Applet / ...呈现表单页面并发布来自Javascript / Flash / Applet / ...的HTTP请求,而不是简单的HTML表单。在这种情况下,图像资源可以位于客户端本地文件系统上,您甚至可以在请求表单的文本区域内显示结果。

答案 1 :(得分:0)

您是否尝试过使用Designer中的“工具”菜单中的“生成Web服务”?选择您需要使用的过程然后运行它。

首先需要确保流程开始& end有正确的参数。我认为最好使用xml和xsd,即在输出编辑器中选择XML Element Reference类型的内容,然后选择正确的模式和元素。

一旦你拥有了wsdl和url,就可以像任何其他网络服务一样调用它。