Pregunta

Estoy desarrollando un proceso que va a leer y enviar una imagen en un correo electrónico. Esta imagen es una carpeta dentro de este proceso.

El problema es: ¿cómo consigo la ruta en la que se ejecuta el proceso

Algo así como un 'Server.MapPath' que devuelve la ruta de la imagen en el archivo de sistema.

Gracias de antemano.

¿Fue útil?

Solución

Si existen las imágenes en una carpeta en su BW-proyecto puede utilizar la 'Recuperar Recursos' actividad para llegar al contenido.

Sólo tiene que establecer el ResourcePath con la ruta relativa en su proyecto y lo hará de salida de los datos de base64.

Otros consejos

RetrieveResources de SOAP podría ser una buena solución, pero lanza una NullPointerException para mí en BW 5.4. Tal vez se trata de un error en esta versión.
El problema con respecto a la obtención de un 'camino de la raíz' es que un proyecto BW desplegado no mantiene su estructura de carpetas / archivo original - el desplegador no 'explotar' el archivo EAR. Por lo tanto usted no encontrará la imagen como un archivo separado en el cuadro Servidor de BW
Hay una manera simple de archivos XML de carga dinámica, utilizando la siguiente declaración XPath:.

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

pero, obviamente, un error en archivos binarios. Mi mejor conjetura para almacenar datos binarios dentro de un proyecto BW sería almacenar como una constante de cadena en formato Base64 o Hex.

En caso de que alguien viene a través de esta pregunta (como lo hice hoy en día), esto es una manera de obtener la ruta absoluta de un archivo dentro de la aplicación. El código siguiente se puede utilizar en una actividad "Código de Java", por ejemplo, ser relativePath y rutaAbsoluta los parámetros de entrada y salida, respectivamente:

absolutePath = com.tibco.pe.core.Engine.getRepoAgent().getAbsoluteURIFromProjectRelativeURI(relativePath);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top