Frage

Ich entwickle ein Prozess, der lesen und ein Bild in einer E-Mail. Dieses Bild ist ein Ordner innerhalb dieses Prozesses.

Das Problem ist: Wie kann ich den Pfad, wo der Prozess läuft

So etwas wie ein 'Server.MapPath', dass die Renditen des Bildpfad im Dateisystem.

Vielen Dank im Voraus.

War es hilfreich?

Lösung

Wenn Sie Ihre Bilder existieren in einem Ordner in Ihrem BW-Projekt können Sie verwenden, um die Aktivität ‚Ressourcen abrufen‘, um den Inhalt zu erhalten.

Sie müssen nur die resourcePath mit dem relativen Pfad in Ihrem Projekt festgelegt und es wird gibt die base64-Daten.

Andere Tipps

SOAP RetrieveResources könnte eine gute Lösung sein, aber wirft eine Nullpointer für mich auf BW 5.4. Vielleicht ist es ein Fehler in dieser Version.
Das Problem in Bezug auf einen ‚Wurzelpfad‘ bekommen ist, dass ein Einsatz BW-Projekt hält nicht seine ursprüngliche Ordner / Dateistruktur - die deployer wird die EAR-Datei nicht ‚explodieren‘. Daher werden Sie nicht das Bild als separate Datei auf der BW-Server-Box finden
Es ist ein einfacher Weg, um dynamisch Laden von XML-Dateien, indem Sie die folgenden XPath-Anweisung:.

tib:render-xml(document('tibcr://path/to/file.xml'))

, aber es wird offensichtlich Binär-Dateien nicht auf. Meine beste Vermutung für binäre Daten in einem BW-Projekt zu speichern wäre es als String Konstante speichern in Base64 oder Hex-Format.

Falls jemand kommt über diese Frage (wie ich es heute getan haben), hier ist ein Weg, um den absoluten Pfad einer Datei innerhalb der Anwendung zu bekommen. Der folgende Code kann in einem „Java-Code“ Aktivität verwendet werden, zum Beispiel, relativePath und AbsolutePath die Ein- und Ausgangsparameter sind jeweils:

absolutePath = com.tibco.pe.core.Engine.getRepoAgent().getAbsoluteURIFromProjectRelativeURI(relativePath);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top