使用ColdFusion将来自两个网站的数据合并为PDF

时间:2012-11-06 15:11:50

标签: pdf coldfusion merge webserver edit

我有一个项目,其中网页有一个表单,用户输入一些信息,然后点击一个按钮,使用此信息(例如邮政编码)作为查询的一部分,动态地将结果导出为PDF或XLS文件。我查询的数据位于服务器A上的Oracle数据库中。

服务器A由与我们的项目无关的不同承包商控制(不是对抗性的,但不是特别有用)。这个其他承包商控制ColdFusion,Oracle数据库和服务器A.

事实证明,我们现在已经更新了服务器B上的信息,客户希望将这些信息包含在PDF / XLS文件中。服务器B位于我的控制之下,但数据位于地理信息系统(GIS)中。服务器B的数据将被设置为作为REST服务提供,该服务可以接受来自服务器A的输入并吐出答案。我可以输出JSON格式的数据,XLS,PDF(也许是CSV,但我需要检查)。我不能将数据(或软件)放到服务器A上,也不能将内容转储到Or​​acle数据库中。

我的问题是:

  

我可以使用哪些技术将我的更新数据成功动态合并到此PDF中?

我不确定客户端是否有Adobe LifeCycle(仍在检查)所以我希望有一个不使用此产品的解决方案。

我在互联网上搜索并发现了一些资源(例如Populate_And_Merge_Multiple_PDF_Forms但我仍在寻找一些描述解决方案的资源。

非常感谢!

1 个答案:

答案 0 :(得分:1)

在ColdFusion中创建一个简单的Web服务非常简单。为了使用您的服务,其他公司将使用CFHTTP或其技术等同物。

在您的CFC中,确保您的函数的access属性设置为remote。这样做可以从外部来源访问您的功能。

  

remote:可用于本地或远程执行的页面或组件   方法,或通过URL,Flash或Web服务的远程客户端。至   将该功能发布为Web服务,此选项是必需的。

另外,请将returnformat属性指定为JSON

  

将值返回给远程调用者的格式。这个   属性对返回给本地调用者的值没有影响。 JSON:   在返回之前将返回值序列化为JSON格式   远程

我还使用returnformat plain来阻止ColdFusion进行任何其他格式化,因此如果您想创建自定义输出(例如简单的值列表),请使用plain。

  

plain:确保返回值是ColdFusion可以使用的类型   直接转换为字符串,并返回字符串值   序列化。有效类型包括所有简单类型,例如数字,   和XML对象。如果返回值是复杂类型,例如   数组或二进制值,ColdFusion会生成错误。如果你   指定一个returntype属性,它的值必须是any,boolean,date,   guid,numeric,string,uuid,variablename或XML;除此以外,   ColdFusion会产生错误。

来源:

CFFunction