TIBCO - BusinessWorksは - 動的プロセスのパスを取得します。
-
22-09-2019 - |
質問
私が読んで、電子メールで画像を送信するプロセスを開発しています。この画像は、このプロセス内のフォルダです。
の問題は次のとおりです。?どのように私は、プロセスが実行されているパスを取得しますの
'Server.MapPath'
ような何かそれを返すファイル内の画像パスシステムます。
事前に感謝します。
解決
あなたのイメージがあなたのBW-プロジェクトのフォルダに存在する場合は、
あなたはコンテンツを取得する活動「リソース検索」を。
を使用することができますあなたは自分のプロジェクト内の相対パスでresourcePathを設定する必要があり、それが出力をbase64データます。
他のヒント
SOAPのRetrieveResourcesは良い解決策であってもよいが、BW 5.4の私のためにNullPointerExceptionがスローされます可能性があります。多分それは、このバージョンのバグです。
デプロイヤは、EARファイルを「爆発」しません - 「ルートパス」を取得に関する問題は、展開BWプロジェクトは、元のフォルダ/ファイル構造を保持していないということです。したがって、あなたはBWサーバボックス上の別ファイルとして画像を見つけることができません
動的にロードXMLファイルへの簡単な方法は、次のXPathステートメントを使用して、ある:ます。
tib:render-xml(document('tibcr://path/to/file.xml'))
が、それは明らかにバイナリファイルに失敗します。 BWプロジェクト内のバイナリデータを格納するための私の最高の推測では、Base64で文字列定数またはHexフォーマットとして保存することです。
場合、誰かが(私が今日行ったように)、ここではアプリケーション内のファイルの絶対パスを取得する方法です。この問題に出くわします。
次のコードは、それぞれ、relativePathとabsolutePath入力および出力パラメータであり、例えば、「Javaコード」活動で使用することができますabsolutePath = com.tibco.pe.core.Engine.getRepoAgent().getAbsoluteURIFromProjectRelativeURI(relativePath);
所属していません StackOverflow