How to search BLOB in BPEL xml_documents

Hi,
We have several hundred transactions that run on a single day through BPEL.
For production support, I need to be able to access the XML document associated with an instance. This I do by clicking on the Instance --> Flow tab --> click on Acitvity --> view xml document.
This is ok for recent records, but what about if I want to access, say, something from last month?
I use the filter criteria but sometimes I end up having to click through several pages before I can get to the corresponding one.
Also, it would be great to be able to search for a specific string in the XMLs it so that I dont have to click through each one in roughly the same time period to find the one I'm looking for.
I can use orabpel.bpel_process_instances and filter by process name etc, but I cant open the BLOB in the xml_document table, which has the payload.
There seems to be something on this : Extract BPEL instance execution log from database tables but I cant see a resolution.
Anyone have any ideas?
thanks!

I see the BIN (BLOB) column in ORABPEL.XML_DOCUMENT stores the data as a GZIP. If you save this data in a file (for example, with SQLDeveloper -> [...] -> Save as) and uncompress it, the resultant file contains Java serialization data, version 5 (open it with a text editor...you'll barely see the XML).
For this reason, I think it is not possible to make an really efficient search tool that looks in the BPEL instances' XML.
If I really had to do it, I'd try programming a Java class that takes a (very short) date range, and check row by row, uncompressing and interpreting the java serialization data (you'll have to find the connection between ORABPEL.CUBE_INSTANCE and ORABPEL.XML_DOCUMENT and maybe other tables). I haven't play with the ORABPEL tables.
Besides, I guess not all the XML is stored in XML_DOCUMENT.
My two cents.
Sorry my english.

Similar Messages

  • How to search the indexes in 11g Enterprise Manager Console

    Hi,
    After setting the Indexes using Java Embedding for a process, can you please tell me how to search the indexes in 11g Enterprise Manager Console for the particular process.In 10g BPEL Console we have the option of searching the Instances based on Indexes we already set at process level which is inbuilt in 10g. I need the same in 11g .
    Thanks,
    Sagar.

    Hi Sagar,
    You can define composite sensors in your composite.
    Then you will get fields in enterprise manager of that composite instance.(the sensors you have defined will be displayed here)
    You can enter the values based on what you want to search the instance. :)
    Regards
    PavanKumar.M

  • How to put blob data in OS (help!?)

    hi,
    I am a beginner in oracle. Now i use sql*loader and put some jpg,rm files in blob(jpg->blob) , but,in reverse, i don't know how to extract blob and put it in my OS(blob->jpg).......>_<
    thanks
    d.t.

    Hi All,
    after searching lot on SDN, i found out that OLE concepts can not be used in WD ABAP environment. Please let me know if i am correct or not.
    as of now, i am building the excel and using below method to create it.
    *Create the Excel File
      cl_wd_runtime_services=>attach_file_to_response(
      i_filename = lv_filename
      i_content = lv_xstring
      i_mime_type = 'application/msexcel'
      i_in_new_window = abap_false
      i_inplace = abap_false ).
    The problem in above method is  that, i can not format the excel as i wanted. for e.g. i wanted to put values in particular cell, make it BOLD, italic etc.
    Is there any way to achive this? Please let me know.
    Thanks,
    Chandra

  • How to search a specific topic in a forum?

    How to search a specific topic in a forum? who can offer me a solution. I'm really appreciate it.

    Enter something in the box next to the words Advanced Search at the upper right and click on the button to display a list of search hits. Then, in the box to the right of the list, click on the word help to bring this Search Help and Tips page up:
    http://search.java.sun.com/search/java/help.jsp

  • How to search whether a seat is available or not?

    Hi,
    I am developing a form in admin module for a call centre where there is a requirement to check whether a seat is available or not? The form contains a search window which the user enters the date in Location,catergory,From_date,to_date,time_from,time_to fields.
    For example if he enters time_from as 06:00and time_from as 14:00 .That means the seat is occupied for 8 hours but is available for the remaining 16 hours. So the search result should show this seat also in the availability list. Every seat hava a unique seat_id.
    another situation is a seat can be allocated between 22:00 and 06:00.That means it is crossing the day.That means that means in a day the seat is allocated from 00:00 - 06:00 and 22:00-23:59. How to search for this?
    The seat can be allocated for any number of hours in a day. It can be 2 hours .3 hours or 4 hours....means there is no particular time slot system.
    Can this be done using a sql query or plsql procedure?
    can anybody help me in this regard
    Thanking you,
    Deekshit

    Hi
    U can use the following query in function.
    SELECT CASE dumm
    WHEN 'X'
    THEN 'OK'
    END
    FROM (SELECT NVL (dummy, 'Y') dumm
    FROM DUAL
    WHERE TO_DATE (new_date_entered in varchar format, 'hh24:mi:ss') BETWEEN TO_DATE
    (date_from in varchar format,
    'hh24:mi:ss'
    AND TO_DATE
    (date_to in varchar format,
    'hh24:mi:ss'
    But need to b careful when the dates r changing. U can check dat by comparing time_from nd time_to values...in case of date change time_from value will be greater than time_to value(assumption==> seat can't be blocked for more than 12 hours). U can actually use the same query by reversing the conditions.. hope this will solve the problem
    Message was edited by:
    Arpit

  • How to search a text in text area?

    Hi All,
    I want to search a text in the text area and it should be like searching by the Find Dialog Box with upward direction or downward direction with case sensitive option.
    I know searching text in a file. But I dont know how to search in the above manner.
    PLz help me.
    Thanx in advance.
    regards

    Ok, starting from the code you sent, I can help with the below code:
       private void findText() {
          // your searching stuff here...
       }Regards.

  • How to search for file in jsp page

    i need help on how to search for a file in a folder where there is a lot of subfolder.like how u search in a document in windows. i need a complete codes in jsp page.
    thank you in advance.
    Message was edited by:
    n_dilah

    no i need to do a search engine in jsp page which is the j2ee.
    i type smth than tat file from any folder will appear the same way when u need to search your file in a document in windows.
    well can u nice people tell me where i can get the codes bcos i stinks when it come to programming.
    thank you very very very much.

  • How to search a special string in txt file and return it's position in txt file?

    How to search a special string in txt file and return it's position in txt file?

    I just posted a solution for a similar question here:  http://forums.ni.com/ni/board/message?board.id=170​&view=by_date_ascending&message.id=362699#M362699
    The top portion can search for the location of a string, while the bottom portion is to locate the position of a character.  Both can search for a character.
    The position of the character within the file is displayed in the indicator(s).
    R

  • How to search data from a context node.

    Hi Friends,
    Thanks for ur help for previous problem . I am facing some other problem i.e how to
    search data from a context node.
    i have a context node :-
    Car(main node) which consist of details, owners, engine and Brand  as its sub node.
    the value attibutes of difft nodes are:-
    Car-  category
    Details-  Mileage, Price, registration_no, miles_used
    owner -  name, phnno,addrs
    Brand -  main_brand, co_brand
    Engine- Bhp,Rpm
    Now i have to apply a search criteria on the basis of price, miles_used .
    pls help to implement that .
    Thanks & regards
    Pravin jha

    Hi PRAVIN,
                       What I can understand from your problem is that, you have a list with various properties and you want to display them and search them in your WD App. If I am correct, use the following approach:
    Instead of using "details, owners, engine and Brand" Nodes, use the attributes inside the parent node. i.e in the node Car, add all the attributes viz. Mileage, Price, registration_no, miles_used, name, phnno,addr etc.
    Now you can create a table of this node "Car" and can easily search on the basis of any criteria.
    I hope this solves your issue. If you are looking for something else, please revert, I'll be happy to help you.
    Cheers!!!
    Umang

  • How to search this value in oracle database to find out the table

    Hi expert,
    I know there is a value in oracle database, please show me how to search this value in oracle database to find out the table holding this value.
    Many Thanks,

    918440 wrote:
    Hi friends,
    this question is really practical, I already know there is value from application saved in database, I want to search the whole database to figure out which table the value is contained.write SQL that writes SQL to query every table.
    Handle:     918440
    Status Level:     Newbie
    Registered:     Mar 2, 2012
    Total Posts:     20
    Total Questions:     10 (10 unresolved)
    why do you waste time here when you NEVER get any answer to any question you post?

  • How to search records in a standard table with * ?

    Hi everyone,
    Can anyone tell me how to search records in a standard table with * ?
    That is, in screen if user type * abc * for searching the records in which the field MC_STEXT contains 'abc'. What the code should be? How to complete the code below?
      SELECT SINGLE objid FROM p1000  INTO p1000-objid,
      WHERE MC_STEXT = ? .
    Thanks!

    Hi
    There are several way to do that, probably just as some guys wrote the easier way is to use LIKE in WHERE condition and the sign % instead of *:
    V_STRING = '%ABC%'.
    SELECT SINGLE objid FROM p1000 INTO p1000-objid,
    WHERE MC_STEXT LIKE V_STRING.
    U can also use a range (just like select-options):
    RANGES: R_MC FOR P1000-MC_STEXT.
    R_MC-LOW = 'ABC'.
    R_MC(3) = 'ICP'.
    APPEND R_MC.
    SELECT SINGLE objid FROM p1000 INTO p1000-objid,
    WHERE MC_STEXT IN R_MC.
    Max

  • How to search table in R3 and XI?

    hi pals,
    how to search table in R3..like if i go to se16..then if in enter *ara  then f8 should give table details..is it right..
    or se 16 i have to give ara    like this..plz correct me how to search in se16 or other than this tcode se11 only...is it right...if any other way i can search table plz tell me...
    thanks
    Ruban

    Hi,
    Please try these ...
    1. Go to transaction SE11.
    2. Enter Database table with KNA1.
    3. Click on Display button.
    4. System will display the detail components/fields of table KNA1.
    5. Click on Contents button (CTRLShiftF10) to see contents of table KNA1.
    Regards,
    Ferry Lianto

  • How to search a network/external hard drive in finder?

    I use my Macbook at work where I am required to save all files I work on to a network hard drive on our server. I also have to be able to find and access files from the network drive for customers. In Snow Leapord I had the ability to type in the search bar in finder and it would search the entire network drive and find what I was looking for very quickly. Lots of people at work access the network drive, and every one of them has a different sense of organization. The ability to search is an absolute must in order to find anything. After upgrading to Lion, I discovered that the ability to search a networked or external hard drive has been removed. Lion only allows me to search my local hard drive in my Macbook. Does anyone know how to search a network hard drive in Lion? If not I am going to have to eat the 30 bucks and downgrade back to Snow Leopard. I have scoured through every little preference and option and have found nothing that even sounds remotely like it has anything to do with the search feature. Anyone please help, if not I am going to have to break out the time machine backups and remove this broken os from my computer.

    system preferences, spotlight, privacy, add the network or external hard drive and then remove it from the privacy list. it should start to reindex this drive. You'll experience some slowness while this is happening and depending on how big your network is, it might take a really long time. But after that, you should be able to search in them as well. You can also organize what types of files show first so you can navigate to them easier.
    hope this helps

  • How to search for particular string in array?

    I am struggling to figure out how to search array contents for a string and then delete the entry from the array if it is found.
    The code for a program that allows the user to enter up to 20 inventory items (tools) is posted below; I apologize in advance for it as I am also not having much success grasping the concept of OOP and I am certain it is does not conform although it all compiles.
    Anyway, if you can provide some assistance as to how to go about searching the array I would be most grateful. Many thanks in advance..
    // ==========================================================
    // Tool class
    // Reads user input from keyboard and writes to text file a list of entered
    // inventory items (tools)
    // ==========================================================
    import java.io.*;
    import java.text.DecimalFormat;
    public class Tool
    private String name;
    private double totalCost;
    int units;
      // int record;
       double price;
    // Constructor for Tool
    public Tool(String toolName, int unitQty, double costPrice)
          name  = toolName;
          units = unitQty;
          price = costPrice;
       public static void main( String args[] ) throws Exception
          String file = "test.txt";
          String input;
          String item;
          String addItem;
          int choice = 0;
          int recordNum = 1;
          int qty;
          double price;
          boolean valid;
          String toolName = "";
          String itemQty = "";
          String itemCost = "";
          DecimalFormat fmt = new DecimalFormat("##0.00");
          // Display menu options
          System.out.println();
          System.out.println(" 1. ENTER item(s) into inventory");
          System.out.println(" 2. DELETE item(s) from inventory");
          System.out.println(" 3. DISPLAY item(s) in inventory");
          System.out.println();
          System.out.println(" 9. QUIT program");
          System.out.println();
          System.out.println("==================================================");
          System.out.println();
          // Declare and initialize keyboard input stream
          BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
          do
             valid = false;
             try
                System.out.print(" Enter an option > ");
                input = stdin.readLine();
                choice = Integer.parseInt(input);
                System.out.println();
                valid = true;
             catch(NumberFormatException exception)
                System.out.println();
                System.out.println(" Only numbers accepted. Try again.");
          while (!valid);
          while (choice != 1 && choice != 2 && choice != 9)
                System.out.println(" Not a valid option. Try again.");
                System.out.print(" Enter an option > ");
                input = stdin.readLine();
                choice = Integer.parseInt(input);
                System.out.println();
          if (choice == 1)
             // Declare and initialize input file
             FileWriter fileName = new FileWriter(file);
             BufferedWriter bufferedWriter = new BufferedWriter(fileName);
             PrintWriter dataFile = new PrintWriter(bufferedWriter);
             do
                addItem="Y";
                   System.out.print(" Enter item #" + recordNum + " name > ");
                   toolName = stdin.readLine();
                   if (toolName.length() > 15)
                      toolName = toolName.substring(0,15); // Convert to uppercase
                   toolName = toolName.toUpperCase();
                   dataFile.print (toolName + "\t");
                   do
                      valid = false;
                      try
                         // Prompt for item quantity
                         System.out.print(" Enter item #" + recordNum + " quantity > ");
                         itemQty = stdin.readLine();
                         // Parse integer as string
                         qty = Integer.parseInt (itemQty);
                         // Write item quantity to data file
                         dataFile.print(itemQty + "\t");
                         valid=true;
                      catch(NumberFormatException exception)
                         // Throw error for all non-integer input
                         System.out.println();
                         System.out.println(" Only whole numbers please. Try again.");
                   while (!valid);
                   do
                      valid = false;
                      try
                         // Prompt for item cost
                         System.out.print(" Enter item #" + recordNum + " cost (A$) > ");
                         itemCost = stdin.readLine();
                         // Parse float as string
                         price = Double.parseDouble(itemCost);
                         // Write item cost to data file
                         dataFile.println(fmt.format(price));
                         valid = true;
                      catch(NumberFormatException exception)
                         // Throw error for all non-number input (integers
                      // allowed)
                         System.out.println();
                         System.out.println(" Only numbers please. Try again.");
                   while (!valid);
                   // Prompt to add another item
                   System.out.println();
                   System.out.print(" Add another item? Y/N > ");
                   addItem = stdin.readLine();
                   while ((!addItem.equalsIgnoreCase("Y")) && (!addItem.equalsIgnoreCase("N")))
                      // Prompt for valid input if not Y or N
                      System.out.println();
                      System.out.println(" Not a valid option. Try again.");
                      System.out.print(" Add another item? Y/N > ");
                      addItem = stdin.readLine();
                      System.out.println();
                   // Increment record number by 1
                   recordNum++;
                   if (addItem.equalsIgnoreCase("N"))
                      System.out.println();
                      System.out.println(" The output file \"" + file + "\" has been saved.");
                      System.out.println();
                      System.out.println(" Quitting program.");
            while (addItem.equalsIgnoreCase("Y"));
    // Close input file
    dataFile.close();
       if (choice == 2)
       try {
          Read user input (array search string)
          Search array
          If match found, remove entry from array
          Confirm "deletion" and display new array contents
       catch block {
    } // class
    // ==========================================================
    // ListToolDetails class
    // Reads a text file into an array and displays contents as an inventory list
    // ==========================================================
    import java.io.*;
    import java.util.StringTokenizer;
    import java.text.DecimalFormat;
    public class ListToolDetails {
       // Declare variable
       private Tool[] toolArray; // Reference to an array of objects of type Tool
       private int toolCount;
       public static void main(String args[]) throws Exception {
          String line, name, file = "test.txt";
          int units, count = 0, record = 1;
          double price, total = 0;
          DecimalFormat fmt = new DecimalFormat("##0.00");
          final int MAX = 20;
          Tool[] items = new Tool[MAX];
          System.out.println("Inventory List");
          System.out.println();
          System.out.println("REC.#" + "\t" + "ITEM" + "\t" + "QTY" + "\t"
                + "PRICE" + "\t" + "TOTAL");
          System.out.println("\t" + "\t" + "\t" + "\t" + "PRICE");
          System.out.println();
          try {
             // Read a tab-delimited text file of inventory items
             FileReader fr = new FileReader(file);
             BufferedReader inFile = new BufferedReader(fr);
             StringTokenizer tokenizer;
             while ((line = inFile.readLine()) != null) {
                tokenizer = new StringTokenizer(line, "\t");
                name = tokenizer.nextToken();
                try {
                   units = Integer.parseInt(tokenizer.nextToken());
                   price = Double.parseDouble(tokenizer.nextToken());
                   items[count++] = new Tool(name, units, price);
                   total = units * price;
                } catch (NumberFormatException exception) {
                   System.out.println("Error in input. Line ignored:");
                   System.out.println(line);
                System.out.print(" " + count + "\t");
                System.out.print(line + "\t");
                System.out.print(fmt.format(total));
                System.out.println();
             inFile.close();
          } catch (FileNotFoundException exception) {
             System.out.println("The file " + file + " was not found.");
          } catch (IOException exception) {
             System.out.println(exception);
          System.out.println();
       //  Unfinished functionality for displaying "error" message if user tries to
       //  add more than 20 tools to inventory
       public void addTool(Tool maxtools) {
          if (toolCount < toolArray.length) {
             toolArray[toolCount] = maxtools;
             toolCount += 1;
          } else {
             System.out.print("Inventory is full. Cannot add new tools.");
       // This should search inventory by string and remove/overwrite matching
       // entry with null
       public Tool getTool(int index) {
          if (index < toolCount) {
             return toolArray[index];
          } else {
             System.out
                   .println("That tool does not exist at this index location.");
             return null;
    }  // classData file contents:
    TOOL 1     1     1.21
    TOOL 2     8     3.85
    TOOL 3     35     6.92

    Ok, so you have an array of Strings. And if the string you are searching for is in the array, you need to remove it from the array.
    Is that right?
    Can you use an ArrayList<String> instead of a String[ ]?
    To find it, you would just do:
    for (String item : myArray){
       if (item.equals(searchString){
          // remove the element. Not trivial for arrays, very easy for ArrayList
    }Heck, with an arraylist you might be able to do the following:
    arrayList.remove(arrayList.indexOf(searchString));[edit]
    the above assumes you are using 1.5
    uses generics and for each loop
    [edit2]
    and kinda won't work it you have to use an array since you will need the array index to be able to remove it. See the previous post for that, then set the value in that array index to null.
    Message was edited by:
    BaltimoreJohn

  • How to show BLOB type Column ? In XE

    How to show BLOB type Column as image in APEX report area? (In XE)
    I did it with the following procedure
    create or replace PROCEDURE MY_IMAGE_DISPLAY (p_image_id IN NUMBER)
    AS
    l_mime VARCHAR2 (255);
    l_length NUMBER;
    l_file_name VARCHAR2 (2000);
    lob_loc BLOB;
    BEGIN
    SELECT 'JPEG', MLOGO, 'IMAGE', DBMS_LOB.getlength (MLOGO)
    INTO l_mime, lob_loc, l_file_name, l_length
    FROM CARS_TABLE
    WHERE M_ID = p_image_id;
    OWA_UTIL.mime_header (NVL (l_mime, 'application/octet'), FALSE);
    HTP.p ('Content-length: ' || l_length);
    OWA_UTIL.http_header_close;
    WPG_DOCLOAD.download_file (lob_loc);
    END my_image_display;
    GRANT EXECUTE ON my_image_display TO PUBLIC;
    and executed the following command
    CREATE PUBLIC SYNONYM my_image_display FOR shema_name.my_image_display;
    but under XE , I can not see synonym? why?

    sakrami,
    Your question really belongs in the XE forum:
    Oracle Database Express Edition (XE)
    I think this posting addresses your question:
    Re: Handling of pictures changed? Item values not properly updated in Beta
    Joel

Maybe you are looking for

  • Document or report for assessment and reversed assessment?

    Hi guyz, Is there any document or report for assessment and reversed assessment? I need to find documentation as a proof for any execution and reversal of assessment, such as journal entry or report line items that is showing debit or credit for the

  • How can I get a list of emails in my inbox listed by sender and how many emails are in the box from each one, in a concise list.

    I need a List: Name of sender and how many emails from that sender: ex: Wife - 50 Boss - 75 ESPN - 200 It would best to get them in a excel sheet so I can print, review and then make decisions to delete entire names that I know longer communicate wit

  • What can be upgraded in Compaq nx9420?

    I read the official manuals and searched here, got nowhere. I know you can upgrade the RAM to 4 GB but what else is upgradable in a Compaq nx9420? I'm willing to beef up just about everything: CPU, Motherboard, Vid Card. I read the motherboard has an

  • Bind variable inside a package

    Can we declare a bind variable inside a package specification? CREATE OR REPLACE PACKAGE GET_EMPLOYEEDETAILS IS PROCEDURE GET_FIRSTNAME(E_ID IN EMPLOYEES.EMPLOYEE_ID%TYPE, F_NAME OUT EMPLOYEES.FIRST_NAME%TYPE); VARIABLE O VARCHAR2(20); END GET_EMPLOY

  • Fading out/in a graph

    Is it possible with LabView to show a graph only if a certain button is pushed? I'd like to make diagram with several measurement point, displayed as numbers for a given time. If one is ineterested in the time-dependency it should be possible to fade