我正在开发一个能够在电子邮件中读取和发送图像的流程。此图像是此过程中的文件夹。
问题是:如何获取进程运行的路径?
像'Server.MapPath'
那样返回文件系统中的图像路径。
提前致谢。
答案 0 :(得分:1)
SOAP RetrieveResources可能是一个很好的解决方案,但在BW 5.4上为我抛出了NullPointerException。也许这是这个版本的一个错误。
获取“根路径”的问题在于部署的BW项目不保留其原始文件夹/文件结构 - 部署者不会“爆炸”EAR文件。因此,您不会在BW服务器框上找到图像作为单独的文件。
通过使用以下XPath语句,有一种动态加载XML文件的简单方法:
tib:render-xml(document('tibcr://path/to/file.xml'))
但是二进制文件显然会失败。我在BW项目中存储二进制数据的最佳猜测是将其存储为Base64或Hex格式的字符串常量。
答案 1 :(得分:0)
如果您的图片存在于BW项目的文件夹中,您可以使用“检索资源”活动来获取内容。
您只需在项目中使用相对路径设置resourcePath,它就会输出base64数据。
答案 2 :(得分:0)
如果有人遇到这个问题(就像我今天所做的那样),这里有一种获取应用程序中文件的绝对路径的方法。以下代码可用于“Java代码”活动,例如,分别是relativePath和absolutePath的输入和输出参数:
absolutePath = com.tibco.pe.core.Engine.getRepoAgent().getAbsoluteURIFromProjectRelativeURI(relativePath);