File Adapter BPEL Trigger

Hi,
This should be a really easy thing to do but I'm obviously missing something simple and fundamental.
I want to set up a BPEL process that is initiated by the receipt of a file. All I initially want to get from that trigger is the name of the file and pass that value on to the next step in the chain.
So, I created a new BPEL Process project and added a File Adapter service, filling in all the details for picking up the file from the place that it'll arrive. Reading the "Adapter" manual, I should be able to get the file details (name, directory) by adding UseHeaders="true" into the JCA definition in the File Adapter's WSDL file. I have done this. Doing this creates another WSDL file called fileAdapterInboundHeader.wsdl Now, this is where I get lost. How do I use this?
By default, a new BPEL Process diagram shows a "Client" Partner Link, a receiveInput activity and a replyOutput activity. The receiveInput activity links from the Client Partner Link and the replyOutput activity links back to the Client.
So I'm guessing that I need to replace the Client partner link with my new File Adapter service so that the detection of the file starts my BPEL process, rather than some triggered activity from a client.
This is basically what I've done but it's really not working. How do I get at the filename that's gathered by the File Adapter service? Do I need an XML schema definition to work from?
Perhaps there's a nice simple example of this somewhere that somebody could point me at? I've been searching but not found anything yet.
Thanks,
Andy

I've written up this procedure in a bit more detail than RedRocker originally provided so that people like me who are complete noobs to BPEL and JDeveloper can do this more easily. The example I give here takes the filename and writes it to a database table. The table just has a FILE_ID column (automatically populated from a sequence by an ON-INSERT trigger) and a CONTENTS column (where the file name goes):
How-To Get the name of an Input File and store it in a database table column.
1) Assuming that you're using JDeveloper and you have an Application Workspace, right-click on the Application and choose New Project from the context menu.
2) In the New Gallery, select Projects and then choose BPEL Process Project from the Items list:
3) Create an Empty BPEL Process by choosing Empty BPEL Process from the Template dropdown of the BPEL Project Creation Wizard.
4) This will bring up a completely empty BPEL Process in JDeveloer:
5) From the Component Palette (top-right), choose Services and then locate the File Adapter Service in the list.
6) Drag the File Adapter service from the Component panel to one of the Services columns in the main BPEL process designer (centre window). A Wizard will appear.
7) Enter a name for the Service (eg. GetFileName). Fill in the description if you wish.
8) Choose Read from the Operation Type list (adjust the Operation Name if you like):
9) Enter the physical directory (or logical name for one) where the file is to be read from. Decide on whether you want the file to be deleted after it's been read (it won't be re-processed if it's left there since each poll cycle only looks for files that arrived more recently than its previous cycle), and whether to archive the file.
10) Enter appropriate file selection filter criteria (note that for this BPEL example we're not interested in the file's content at all so the "Files contain Multiple Messages" tickbox and "Publish Messages in Batches of" selector are unimportant):
11) Select an appropriate Polling Frequency:
12) Select an Opaque schema (we're not interested in the file's content in this example)
13) Click Finish
14) Click OK to close the Partner Link creation wizard
15) Click Save All.
16) From the Application Navigator, drill down through the newly created BPEL Project, through the Integration Content folder to find your GetFileName Partner link. Expand this and double-click the GetFileName.wsdl file. In the centre panel, click the Source tab (at the bottom):
17) Scroll down to the <jca:operation> tag and add the attribute UseHeaders="true" at the end
18) Click Save All.
19) Return to the main GetFileName BPEL Process designer by clicking the tab name at the top of the centre window. In the Structure panel (bottom-left), expand the Variables folder, followed by the Process folder and click the exposed Variables folder
20) Create a variable by clicking the "Wand +" icon.
21) Give the variable a meaningful name (FileName) and choose Message Type. Click the Browse flashlight:
22) Choose InboundHeader_msg by drilling down as shown:
23) Click OK and OK.
24) In the Component palette (top-right), choose Process Activities from the dropdown list. Locate the Receive activity and drag it to the centre of the middle panel (ie. the BPEL Designer window) into the area marked "Drop Activity Here":
25) Double-click the new Receive activity to bring up the properties dialogue box. On the General tab, give the activity a meaningful name (eg. ReceiveFilename).
Click the Browse flashlight next to the Partner Link field and choose GetFileName from the list. The Operation dropdown will automatically show "Read" which is correct.
26) Click the Auto-Create Variable ("Wand +") icon next to the Variable field. This variable is merely a placeholder for the content of the file being read. Because we've said that the incoming file's schema is Opaque, this variable will not get populated. However, we still need to have a variable. Give the variable a meaningful name (eg. FileContent) and allow the type to be selected automatically and then click OK on the Create Variable dialogue.
27) Given that we'd want the receipt of a file to be individually traceable, ensure that the Create Instance checkbox is ticked on the General tab:
28) Click the Adapters tab. Click the Browse flashlight next to the Header Variable field and select the FileName variable from the list presented and click OK:
29) Click OK on the Receive activity property page to return to the main BPEL Designer screen.
30) At this point, the data is available within the BPEL process but needs to be assigned to something. In this example, the value is going to be written to the FILE_NAME column in a table called ACH_INUPT_FILE. This will be done through an Insert performed by a Database Adapter. The ACH_INUPT_FILE table is configured to have an ON-INTERT trigger which automatically selects a value from a Sequence for its Primary Key value. Therefore simply inserting a row will provide a Unique value in the FILE_ID column.
The next thing we need to do is create the Partner Link that performs the Insert operation. This will create a variable which we can assign the File Name to when this new Service is linked into the process flow.
From the Component panel, choose Services from the dropdown. Locate the Database Adapter service and drag one onto the BPEL Designer page in the Services column.
The Adapter Configuration wizard appears. Enter a meaningful name from the adapter (eg. WriteFileName). Enter a description if you like and click Next.
31) Choose the appropriate Connection from the dropdown list. Click Next.
32) Choose "Perform an Operation on a Table" for the Operation Type and deselect all operations except Insert Only. Click Next.
33) Click the Import Tables button. From the presented table, ensure that the table that's going to hold the data is selected by shuttling the table from the Available panel to the Selected panel. In this case I've selected the ACH_INPUT_FILE table. Click OK.
34) The Select Table panel shows the ACH_INPUT_FILE table. Click Next.
35) In this example there are no further relationships to make, so click Next on the Relationships page:
36) Click Finish. The Database Adapter's Partner Link properties page is displayed. Note that the Partner Link Type and Partner Role are automatically populated from the information gathered in the previous set of dialogue pages. Note that to change any of those values previously entered, click the Define Adapter Service icon. Click OK.
37) In the Components Palette, select Process Activities from the dropdown. Locate the Invoke activity and drag one to the main BPEL process flow and drop it immediately below the ReceiveFilename activity.
38) Double-click the new Invoke activity and the Invoke property panel is shown. On the General tab, give the Invoke activity a meaningful name (eg. InvokeWriteFileName).
Click the Browse flashlight next to the Partner Link field and select WriteFileName from the list of presented services. Click OK.
39) Note that the operation "insert" is automatically populated into the Operation dropdown.
40) Click the Automatically Create Input Variable icon (Wand +) next to the Input Variable field. Accept the default "InvokeWriteFileName_insert_InputVariable". This creates the variable of the right type that's needed by the WriteFileName service.
41) Click OK to close the WriteFileName Invoke activity property sheet. Note that there is a warning flag next to the new Invoke activity. We need to assign the file name to the Invoke activity's Input Variable.
42) From the Component Palette, drag an Assign activity so that it sits between the Receive and the Invoke activities in the BPEL flow.
43) Double-click the new Assign activity and click the General tab. Enter a meaningful name for the activity (eg. AssignFileNameToDBWriteInput).
44) Click the Copy Operation tab. Click the Create button and select Copy Operation from the list of types.
45) In the From panel, choose Expression from the Dropdown list. From the panel, click the XPath Expression Builder icon (highlighted).
46) From the Function list dropdown under the Functions heading, select Conversion Functions. Double-click the "string()" function. This moves the string() function into the Expression panel at the top as shown.
47) In the Expression panel, click inside the ( and ) brackets. Expand the variable FileName in the BPEL Variables panel below and select the fileName element from the InboundFileHeaderType element. Double-click the fileName to move the XPath expression into the Expression panel:
48) Click OK. In the To panel, ensure that the Type dropdown shows Variable. Drill into the InvokeWriteFileName_insert_InputVariable and select the element that the file name is to be assigned to. In the example illustrated, the variable is called "contents" but that's just because the table has that as the field name rather than "filename".
49) Click OK. The Assign property sheet shows the Copy Operation as below:
50) Click OK. The Invoke operation may still show a warning flag. Click the flag to see the errors/warnings. If there are now errors/warnings shown, click OK to dismiss the panel and the flag will disappear. The BPEL Process is complete and can be deployed.
It is long-winded, but it might just help somebody else.
Andy

Similar Messages

  • File Adapter BPEL Process getting switched off

    The file adapter BPEL process reads a csv file which has a series of records in itfrom /xfer/chroot/data/aramex/accountUpdate/files. In between reading the files, the BPEL process gets switched off. The below snippet is the error we found in the domain.log. Anybody can you please suggest what to do?
    <2010-11-25 16:22:28,025> <WARN> <PreActivation.collaxa.cube.ws> <File Adapter::Outbound>
    java.io.FileNotFoundException: /xfer/chroot/data/aramex/accountUpdate/files/VFQ-251120101_1000.csv (No such file or directory)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:106)
    at oracle.tip.adapter.file.FileUtil.copyFile(FileUtil.java:947)
    at oracle.tip.adapter.file.inbound.ProcessWork.defaultArchive(ProcessWork.java:2341)
    at oracle.tip.adapter.file.inbound.ProcessWork.doneProcessing(ProcessWork.java:614)
    at oracle.tip.adapter.file.inbound.ProcessWork.processMessages(ProcessWork.java:445)
    at oracle.tip.adapter.file.inbound.ProcessWork.run(ProcessWork.java:227)
    at oracle.tip.adapter.fw.jca.work.WorkerJob.go(WorkerJob.java:51)
    at oracle.tip.adapter.fw.common.ThreadPool.run(ThreadPool.java:280)
    at java.lang.Thread.run(Thread.java:619)
    <2010-11-25 16:22:28,025> <INFO> <PreActivation.collaxa.cube.ws> <File Adapter::Outbound> Processer thread calling onFatalError with exception /xfer/chroot/data/aramex/accountUpdate/files/VFQ-251120101_1000.csv (No such file or directory)
    <2010-11-25 16:22:28,025> <FATAL> <PreActivation.collaxa.cube.activation> <AdapterFramework::Inbound> [Read_ptt::Read(root)]Resource Adapter requested Process shutdown!
    <2010-11-25 16:22:28,025> <INFO> <PreActivation.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - performing endpointDeactivation for portType=Read_ptt, operation=Read
    <2010-11-25 16:22:28,025> <INFO> <PreActivation.collaxa.cube.ws> <File Adapter::Outbound> Endpoint De-activation called in adapter for endpoint : /xfer/chroot/data/aramex/accountUpdate/files/
    <2010-11-25 16:22:28,095> <WARN> <PreActivation.collaxa.cube.ws> <File Adapter::Outbound> ProcessWork::Delete failed, the operation will be retried for max of [2] times
    <2010-11-25 16:22:28,095> <WARN> <PreActivation.collaxa.cube.ws> <File Adapter::Outbound>
    ORABPEL-11042
    File deletion failed.
    File : /xfer/chroot/data/aramex/accountUpdate/files/VFQ-251120101_1000.csv as it does not exist. could not be deleted.
    Delete the file and restart server. Contact oracle support if error is not fixable.
    at oracle.tip.adapter.file.FileUtil.deleteFile(FileUtil.java:279)
    at oracle.tip.adapter.file.FileUtil.deleteFile(FileUtil.java:177)
    at oracle.tip.adapter.file.FileAgent.deleteFile(FileAgent.java:223)
    at oracle.tip.adapter.file.inbound.FileSource.deleteFile(FileSource.java:245)
    at oracle.tip.adapter.file.inbound.ProcessWork.doneProcessing(ProcessWork.java:655)
    at oracle.tip.adapter.file.inbound.ProcessWork.processMessages(ProcessWork.java:445)
    at oracle.tip.adapter.file.inbound.ProcessWork.run(ProcessWork.java:227)
    at oracle.tip.adapter.fw.jca.work.WorkerJob.go(WorkerJob.java:51)
    at oracle.tip.adapter.fw.common.ThreadPool.run(ThreadPool.java:280)
    at java.lang.Thread.run(Thread.java:619)
    <2010-11-25 16:22:28,315> <ERROR> <PreActivation.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "cube delivery": Process state off.
    The process class "BulkAccountUpdateFileConsumer" (revision "1.0" ) has not been turned on. No operations on the process or any instances belonging to the process may be performed if the process is off.
    Please consult your administrator if this process has been turned off inadvertently.

    This patch is not for 10.1.3.1.
    I have provided a response to on the following post
    BPEL Process Going into Dead State Automatically.
    cheers
    James

  • Using Logical Directory property in Assign File Adapter BPEL

    Hi,
    I wanted to use The Logical Directory which I created while making File Adapter in a BPEL process in 11g, in an assign activity.
    How it can be done?
    Thanks in advance
    Sharat

    I have already created a binding property for Logical Directory in Composite.xml. The thing is I want to set it through em, and check inside BPEL whether it is null or not. Only after that the File Adapter should be invoked.
    I wanted to avoid exception if the binding property is not set by the user.
    The solution lies in the word "exception" itself, just put the "invoke" activity inside a scope and on that scope attach a catch activity with "Binding Exception". If the file adapter is not able to find the file path, it will raise the excetption and "catch" will catch and inside catch I am able to put any activity which can end the process gracefully.
    Sharat

  • How to make BPEL File Adapter read only new files?

    Hello
    we have BPEL processes that define to run from bpel component - file adatper-
    when a file come into location that it is path on the linux server . the bpel start run when "File Adapter" bpel component recognize that new file come to the location. its PollingFrequency define to 5. property name="DeleteFile" value="false" so the files remaine there.
    we want to migrate the bpel to new SOA version so we did export and deploy to new SOA Domain.
    the location of the file adapter is the same.
    but when the BPEL processes deployed its start to run for all the files that are in this location- that the file adapter define on .
    even the original soa tooks those files and start the BPEL processes for each one of them. also the new SOA that we did deploy to the BPEL processes take those files even if they are very old.
    we want the file adatper we take only new files . the start point is the time when we do deploy to the process so if we do deploy in 10:00 am we dont want this bpel will take files from 9:00 or earlier time
    Please help , how we can do this?
    Thanks

    thank you
    do you kno hat the value means in the example:
    Java mon amour: File Adapter metadata with SOA Suite
    <property name="jca.file.LastModifiedTime" value="1293041258635">
    what should I rite for read only the files that are only neer then yesterday?

  • Why cant poll a file more than once using File Adapter..

    Hi All,
    When we run webservice, as I am using File Adapter to read/write the file information.
    Usually, File Adapter reads once every file and it wont read again the same file whcih already red.
    Where and How this status maintained by File Adapter/BPEL in the system.
    Where this will be avvailable and why cant File Adapter read/poll the same file.
    Pls can any one of you share your ideas on the same.
    Thanks.

    Hi,
    Tried to get some information around where ftp adapter stores the timestamp but couldnt find anything useful.
    But we have a table for File adapter which captures the processing information (FILEADAPTER_IN )
    I dont have the setup for FTP adapter to run an example. If you could try the below we can clarify that the timestamp is not stored in memory.
    Configure as usual for a folder with a file pattern for FTP adapter.
    Drop a file to process it and then restart the SOA Suite and try to drop the same file with same timestamp to see wheather FTP adapter picks up or not.
    Ideally i feel once you restart the SOA Suite it should pick up the file, if still not picks up the file for second time then we need to dig indepth to see where this information is stored.
    btw what is your usecase ?
    Thanks,
    Vijay
    Edited by: veejai24 on 11-Apr-2012 03:43

  • Need  file adapter polling with read operation to be triggered by a BPEL without using synchronous read

    The scenario is:-
    Web Service Client -->input-->BPEL-->if input valid-->trigger file adapter with read operation--> receive file
    i am not able to stop the polling until it is required to trigger the polling.
    As soon as i deploy the composite the file adapter starts polling without waiting for input.
    Since i am using two receive activities, the second one which is suppose to receive file from file adapter is always showing pending state. (asynchronous callback)

    Hi there,
    IMHO the traditional read is used only as inbound operation, that means
    that it starts polling the input folder as soon as the composite gets
    deployed - which is the same you are experiencing.
    In your case you need an outbound operation that needs to be invoked at
    a certain moment. I don't know what are the reasons not to use sync
    read, but this is the only outbound read operation supported by the
    adapter. If you can not use the sync read, then you would have to design
    some custom solution where you call a web service or EJB for instance
    that reads the desired files.
    Another option I can think of, though have not use personally is using
    the adapters programatically in Java - take a look at this blog post as
    it seems related to this topic -
    https://technology.amis.nl/2012/01/22/using-the-oracle-weblogic-technology-adapters-with-custom-java-message-driven-bean-mdb-triggered-by-file-adapter-part-of-the-story/.
    Hope this helps,
    A.

  • 2 BPEL Processes doing Read at same directory in File Adapter.

    Hi,
    I am using File Adapter for Read operation. Normally we would make a Logical Directory for reading files at that location. There is a design design scenario where 2 BPEL processes will need to read file from same File location.
    Incase such a design is implemented, will it work? And if yes, what will the precedence for reading file by BPEL processes. Also, will both of them read the files or one will be reading the file?
    OR
    Is there any other way that the same design can be implemeted??
    I am using Oracle SOA 10.1.3.4 and JDeveloper 10.1.3.4.
    Will really appreciate if someone can help in this regard.
    Thanks for the needful.
    Cheers,
    Varun

    Hi Varun
    As per the best practice guide :
    The file and FTP adapters support the high availability feature for the active-passive
    topology. Perform the following steps to configure the adapter for this feature:
    1. Create a shared folder on a highly available file system. This folder must have
    write permissions and must be accessible from all systems running the file and
    FTP adapters.
    2. Open the pc.properties file available in the SOA_ORACLE_
    HOME\bpel\system\service\config directory on each node.
    3. Set oracle.tip.adapter.file.controldirpath to the shared folder name.
    This is the shared folder that stores the control files for the adapter.
    4. Restart the servers.
    Note that in the case of Oracle ESB, you must rename SOA_ORACLE_
    HOME\integration\esb\config\pc.
    You can use a trigger file .tg to notify the second process that it can pick the file which the first process has written into the folder.
    Regards
    A

  • How to find EOF in BPEL File adapter

    Hi All,
    I am using file adapter in BPEL(SOA 11G) to read a csv file. The CSV file is very large so we have are processing the files in batched of 20000 records.I am inserting the records form CSV file to a staging table and after that I am invoking a concurrent Program for further processing.This is working fine and BPEL is initiating no of instances based on the file size.
    The issue here is, I want to submit the concurrent program only once when all the records are stored in staging table, I mean to say the BPEL Process should process the file in batches and then insert them in to the staging table. Once all the records from the file are stored in the table, then only the Concurrent Program should get submitted.
    I am using DB Adapter for invoking a PL/SQL API and from there we are submitting concurrent Program.
    Please help me on this to solve this.
    Thanks!

    It is possible to register a Java Listener class, which can/will be invoked, when a last batch in the file, is read. Code for invoking the concurrent Program can be written in side this class.
    Refer to following document on how to register the Java Listener class
    http://docs.oracle.com/cd/E23943_01/integration.1111/e10231/adptr_file.htm#CACJBIGD
    Moreover, as an alternate to the above approach, chunk read interaction specs can be implemented along with the Sync File Read for your scenario( However,This will be a whole re-write, considering your current approach. Good News is, there is full-fledged example readily available for this in oracle docs).
    Here is the link if you would like to implement the Chunk Read.
    http://docs.oracle.com/cd/E23943_01/integration.1111/e10231/adptr_file.htm#BABJFCBH
    Mark the posting appropriately as "hlepful" or "correct answer", if your issue is solved.

  • File Adapter vs BPEL interaction issue on high availability environment

    Hi all,
    i would really appreciate your help on a matter i'm facing about a composite (SCA) deployed on a clustered environment configured for high availability. To help you better understand the issue i briefly describe what my composite does. Composite's instances are started by means of an Inbound File Adapter which periodically polls a directory in order to check if any file with a well defined naming convention is available. The adapter is not meant to read the file content but only its properties. Furthermore, the adapter automatically makes a backup copy of the file and doesn't delete the file. Properties read by the adapter are provided to a BPEL process which obtains them using the various "jca.file.xyz" properties (configurable in any BPEL receive activity) and stores them in some of its process variables. How the BPEL process uses these properties is irrilevant to the issue i'd like to pose to your attention.
    The just described interaction between the File Adapter and the BPEL process has always worked in other non-HA environments. The problem i'm facing is that this interaction stops to work when i deploy the composite in a clustered environment configured for high availability: the File Adapter succeeds to read the file but no BPEL process instance gets started and the composite instance gets stuck (that is, it keeps always running until you don't manually abort it!).
    Interesting to say, if I put a Mediator between the File Adapter and the BPEL, the Mediator instance gets started, that is the file's properties read by the adapter are passed to the mediator, but then the composite gets stuck again 'cos even the mediator doesn't seem to be able to initiate the BPEL process instance.
    I think the problem lies in the way i configured either the SOA infrastructure for HA or the File Adapter or BPEL process in my composite. To configure the adapter, i followed the instructions given here:
    http://docs.oracle.com/cd/E14571_01/integration.1111/e10231/adptr_file.htm#BABCBIAH
    but maybe i missed something. Instead, i didn't find anything about BPEL configuration for HA with SOA Suite 11g (all the material i found refers to SOA Suite 10g).
    I've also read in some posts that for using the db as a coordinator between the file adapters deployed on the different nodes of the cluster, the db must be a RAC! Is that true or is possible to use even another type of oracle db?
    Please, let me know if someone of you has already encountered (and solved :)) a problem like this!
    Thanks in advance,
    Bye!

    Hi,
    thanks for your prompt reply. Anyway, i had already read through out that documentation and tried all settings suggested in it without any luck! I'm thinking the problem could be related to the Oracle DB used in the clustered environment, which is not RAC while all documentation i read about high availability configuration always refers to a RAC db. Anyone knows if a RAC Oracle DB is strictly needed for file adapter configuration in HA cluster?
    Thanks, bye!
    Fabio

  • ESB or BPEL file adapter and special characters

    Hi,
    We have a scenario where we import rows from .csv file through an ESB project into a database. We use the file adapter for this. There appears to be a problem with special characters (like é). Both in the ESB control (with variable tracking) and in the database, they appear as upside down questionmarks (¿). I've tried doing the same with a BPEL project (file adapter as client PL) and in the BPEL console, I also see strange characters instead of the expected special characters (diamond shaped characters, like ♦ to be precise).
    I can't find anything about character sets of character set conversions in the documentation. What am I missing?
    Regards,
    Arjan

    see
    http://download-west.oracle.com/docs/cd/B31017_01/inte
    grate.1013/b28994/nfb.htm#CIAEFBHHI've looked into the properties mentioned. They are set when you go through the wizard. Everything is set to UTF-8, which should provide me with all special characters I need.
    BPEL does the exact same thing, so I'm starting to believe that the problem really is with the file adapter.
    Regards,
    Arjan

  • File Adapter use in BPEL

    Hi All,
    Can you please share some useful information on File Adapter? Is it possible to make use of 2 or more file adapters in a single BPEL Process.
    Scenario is:
    First to read a file from one location.
    Has to place the reaqd file in a different location.
    Club this file with other file in a differnt location, and put that clubbed/merged file in a different location.
    EX: Read from A
    Write to B ( Read another file in B and merge the file A content with in it)
    PLace the (A+B) file in location c with in a different Location.
    Is it possible to read or write a file of size more than 10 MB, how much size does a File Adapter supports? how to read or write files of more size ( more than 10 MB Size)?
    Edited by: user12679330 on Aug 3, 2010 5:35 AM

    hi',
    Read file1 copy the contents to temp_file1, then write that to locationA, in the same process do a synchronous read for file2 and copy the contents to temp_file2, now while writing the file back with contents (file1+file2) you will require a new XSD which will have mapping for both the file elements, and then you can pass the value of temp_file1 and temp_file2 to this file adapter.
    -Yatan

  • Two Files merging using File adapter in Bpel 2.0

    Hi All,
    I have two different files (File 1 and 2) of same format(Two columns each)  , now i want to merge these two files using their data and form a consolidated file (File 3 with four columns).
    Please advise on how to make it possible using file adapter.
    Example:
    File 1 Format: A1 and A2 - are two columns of number and sring type
    File 2 Format : B1 and B2 - are two columns of number and string type
    Consolidated File 3 Format : A1 B1 A2 B2 - forming a single row if A1=B1 and also populating A2 and B2.
    Thanks
    Karthick.

    Hi Karthick,
    I would say read both files completely. Then create a transform and select both messages as an input creating one output. With XSLT it should not be too hard to combine the two inputs. You could loop on one file and then select each row from the other file. That output can be written to file.
    I don't know what triggers the process, but you could either let bpel be triggered by the polling on one file and read the other synchronously. Or read both files synchronously.
    Regards,
    Martien

  • How to get the read input file name in bpel process using File Adapter.

    Hi,
    I am reading a .txt file from configured directory using File Adapter.
    I had configured file adapter to read file with naming pattern “SalesOrder.*\.txt”.
    Now I had requirement to access the actual file name in bpel process eg: “SalesOrder123.txt”
    How can I get the file name in bpel process.
    Any help is appreciated.
    Vidya.

    1) create a variable of message type. Click on Browse Message type. Here you select Message Type-->Project WSDL Files -->fileAdapterInboundHeader-->Message Types-->Inboundheader_msg. Then click OK
    2)Next dbl Click on teh receive Activity which is receing your File from teh File Adapter. Go to the Adapter Tab. Click on Browse variable and select the variable that you had just created above.
    This would get the File name in the variable declared

  • File Adapter to EJB  in BPEL

    Hi,
    I have one XML file that i am reading using File Adapter in BPEL process. after reading i want to pass those values to EJB Adapter.
    I used Trasform to mapp output variables of File Adapter to Input parameter of EJB service.
    But the Invoke process is not happening.
    How to Pass values from File Adapter to EJB ?
    Thanks

    Hi Sonia
    It is not possible to achieve this using debatching. In fact, the use of the Debatching technique is appropriate when your requirement is exactly the opposed: When you need to run instances simultaneously.
    If you need to process each record sequentially, you should consider using just one instace (not using debatching and let the process reads the entire file), using a while and considering your XML as an array, processing each record as a single unit.
    If the CSV file is too big, you should consider using a process A that breaks the file into smaller files and copy sequentially the small pieces to a directory where process B is reading the entire file.
    []´s
    Marcelo

  • How to start a BPEL Process using the File Adapter

    Hi
    I would like to automatically start a BPEL Process when I store a file in a specific directory. Can this be done using the File Adapter?.
    Regards,
    Néstor Boscán

    Yes, there are samples of how to do this in the BPEL samples directory.

Maybe you are looking for

  • As soon as I login with iChat, I get an error from MobileMe!

    Hey, I've had this issue for a while, and my work around for it was just not using iChat. However, I want to use iChat now so I need a proper resolution. Now I have mobile me with my [email protected] address, and I have my iChat account with [email 

  • Date Calculate difference between 2 days using DateField

    Hi, I have 2 dateFields on stage. I hav2 a text box ,which I want to display, the number of days difference, when I select datefield1 and then datefield2. The code I have is not working, can you please point me in the right direction ? I have done th

  • Sub contracting process BOM - In case of material to be disassemble

    How to create the reverse BOM in case of Material to be dis assemble at the vendor end. In this case we will be issuing one assembly to the Sub contracting vendor and he has to dis- assemble the assembly in 4 or 5 different components. How to create

  • Help with skillbuilder popup window

    All, Iam trying to create a tooltip on the close(X) icon of the popup page so whenever you move mouse on it or hover over the icon it gives you the tool-tip like(click the icon to close etc). I tried something like this but it didn't pick it, $(docum

  • How to config JSSE for UDDI4J???

    Hi, i am using uddi4j to access uddi registries. As you know, when you use the publish api, it use the https connection.so we need to do some configurations for JSSE. I have downloaded JSSE,but i just don't know how to config it in the java.security