Service Type: Messaging Service
Request Message Type . binary Type
Endpoint URI : file:///c:/temp/files
when OSB polls the file, the body is populated with this:
con:binary-content ref="cid:3042380f:12fa58f6644:-7fd8" xmlns:con="http://www.bea.com/wli/sb/context"
you assign a OSB variable as explained here
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/userguide/context.html#wp1104506
assign $body/ctx:binary-content to myBinaryData
then you invoke a java Callout with that myBinaryData variable
This post explains a little more
http://frommyworkshop.blogspot.com/2009/04/send-e-mail-with-attachment-through-osb.html
Here is the Java Callout code
package com.pierre.filefromosb; public class FileFromOSB { public static void processFile(Object param) { System.out.println("class=" + param.getClass().getName()); System.out.println("param=" + param); byte[] bytes = (byte[])param; String content = new String(bytes); System.out.println("content=" + content); } }
the result is:
class=[B
param=[B@47b291
content=ciao
(the file's content was "ciao")
Once you have the binary content (byte[]) of the file you can do anything you want with it.
No comments:
Post a Comment