Hierarchical Trees: Creating and populating

How would I go about it if was to have hierarchical trees and populate them with dynamic data that changes at runtime with the occurence of an event such as clicking of a button?
I use Forms version 6.0.8.8.0.

Did you read the documentation? It explains how to use hierarchical trees.
Regards,
Robin Zimmermann
Forms Product Management

Similar Messages

  • Query on Creating and Populating I$ table on different condition

    Hi,
    I have a query on creating and populating I$ table on different condition.In which condition the I$ table is created??And These condition are mentioned below:
    1)*source and staging area* are on same server(i.e target is on another server)
    2)*staging area and Target* are on same server(i.e source is on another server)
    3)*source,staging area and Target* are on *3 different* server
    4)source,staging area and Target are on same server
    Thanks

    I am not very much clear about your question. Still trying my best to clear it out.
    In your all above requirement I$ table will be created.
    If staging same as target ( One database,one user) then all temp tables will be created under this user
    If staging is different than target ( One database,two user (A,B)) then all temp tables will be created under this user A (lets consider) and data will be inserted to the target table that is present in user B
    If staging is different than target ( Two database,two user (A1,A2), not recommended architecture) then all temp tables will be created under this user A1 (database A1) and data will be inserted to the target table that is present in user A2 (database A2)
    If source,staging,target will under one database then No LKM is required,IKM is sufficient to load the data into target. Specifically for this you can see one example given by Craig.
    http://s3.amazonaws.com/Ora/ODI-Simple_SELECT_and_INSERT-interface.swf
    Thanks.

  • Forms Builder-hierarchical tree(expanding and collapsing nodes)

    hi friends,
    can anyone help me with populating my hierarchical tree form by using codes for collapsing and expanding?
    for instance when_button_pressed:
    tree_control.expand_all(tree_control.v_item_name); //this is for expanding all the nodes in the tree structure
    well, i have an sql statement in my record group which in turn defines the structure of the hierarchical tree.
    Is it possible to just use the codes 'tree_control.expand_all(tree_control.v_item_name);' like that in the when-button-pressed trigger?
    Thanks for any help :)

    Hi
    can anyone help me with populating my hierarchical tree form by using codes for collapsing and expanding?
    Pls have a look here ....
    Hope this helps...
    Regards,
    Amatu Allah.

  • Faces: programmatically creating and populating iterator in a backing bean?

    Rather than relying on bindings in pageDefs, I'm attempting to create and populate a JUIterator binding in a backing bean. The goal is to allow the backing bean accessible to any web page as a session bean without having to hard code the iterator in every page's pageDef file.
    I haven't had any success on finding a demonstration showing how to do this programmatically and have come up with the following code as a hack:
    DCDataControl dataControl = bindingContainer.findDataControl("AppModuleDataControl");
    ApplicationModule appModule = dataControl.getApplicationModule();
    JUIteratorBinding iterator = new JUIteratorBinding(appModule, "SingleRowView1", "SingleRowView1Iterator");
    bindingContainer.addIteratorBinding(iterator);
    iterator.setRangeStart(0); // Exception raised here
    iterator.setRangeSize(1); // Or here
    iterator.executeQuery();  // Or here
    Row row = iterator.getCurrentRow();Note the SingleRowView1 is a VO exposed through my ADF BC AppModule and returns a single row and column.
    At the appropriate line marked "Exception raised here" an exception is thrown. On this line and the next 2 lines, it doesn't matter if I comment out one or the other, any 3 will raise an exception showing I've a problem with the iterator setup I guess?
    Anybody any hints on how we would construct the iterator dynamically? Do I have to create the individual attributes for the iterator? Have I not done something in correctly creating the iterator?
    Any help appreciated.
    Regards,
    CM.

    Chris,
    I don't have an answer for you but in JDeveloper 11 templating allows you to create a pagedef file that then is inherited by all pages. So chances are that what you build today is no longer needed tomorrow
    Frank

  • Trouble creating and populating an array of objects.

    I'm trying to create/populate an array of objects with consisting of a {string, double, integer}, and am having trouble getting this theory to work in Java. Any assistance provided would be greatly appreciated. Following are the two small progs:
    public class HairSalon
    { private String svcDesc; private double price; private int minutes;
    //Create a constructor to initialize data members
    HairSalon( )
    svcDesc = " "; price = 0.00; minutes = 0;
    //Create a constructor to receive data
         HairSalon(String s, double p, int m)
         svcDesc = s; price = p; minutes = m;
    //Create methods to get the data members
    public String getSvcDesc( )
         return svcDesc;
    public double getPrice( )
         return price;
    public int getMinutes( )
         return minutes;
    public class SortSalon
         public static void main(String[ ] args)
         SortSalon [] sal = new SortSalon[6];
    //Construct 6 SortSalon objects
              for (int i = 0; i < sal.length; i++)
              sal[i] = new SortSalon();
    //Add data to the 6 SortSalon objects
         sal[0] = new SortSalon("Cut"; 10.00, 10);
         sal[1] = new SortSalon("Shampoo", 5.00, 5);           sal[2] = new SortSalon("Sytle", 20.00, 20);
         sal[3] = new SortSalon("Manicure", 15.00, 15);
         sal[4] = new SortSalon("Works", 30.00, 30);
         sal[5] = new SortSalon("Blow Dry", 3.00, 3);
    //Display data for the 6 SortSalon Objects
         for (int i = 0; i < 6 ; i++ )
         { System.out.println(sal[i].getSvcDesc( ) + " " + sal.getPrice( ) + " " + sal[i].getMinutes( ));
         System.out.println("End of Report");

    Hey JavaMan5,
    That did do the trick! Thanks for the assistance. I was able to compile and run the program after adding my sorting routine. Do you happen to see anything I can do to clean it up further, or does it look ok? Thanks again,
    Ironjay69
    public class SortSalon
         public static void main(String[ ] args) throws Exception
         HairSalon [] sal = new HairSalon[6];      
         char selection;
    //Add data to the 6 HairSalon objects
         sal[0] = new HairSalon("Cut", 10.00, 10);
         sal[1] = new HairSalon("Shampoo", 5.00, 11);      
         sal[2] = new HairSalon("Sytle", 20.00, 20);
         sal[3] = new HairSalon("Manicure", 15.00, 25);
         sal[4] = new HairSalon("Works", 30.00, 30);
         sal[5] = new HairSalon("Blow Dry", 3.00, 3);
    System.out.println("How would you like to sort the list?");
         System.out.println("A by Price,");
         System.out.println("B by Time,");
         System.out.println("C by Description.");
         System.out.println("Please enter a code A, B or C, and then hit <enter>");
              selection = (char)System.in.read();
    //Bubble Sort the Array by user selection
              switch(selection)
              case 'A':
              BubbleSortPrice(sal, sal.length);
                   break;
                   case 'a':
              BubbleSortPrice(sal, sal.length);
                   break;
                   case 'B':
              BubbleSortTime(sal, sal.length);                    break;
                   case 'b':
              BubbleSortTime(sal, sal.length);
                   break;
                   case 'C':
              BubbleSortService(sal, sal.length);
                   break;
                   case 'c':
              BubbleSortService(sal, sal.length);
                   break;
                   default:
              System.out.println("Invalid Selection, Randomly Sorted List!");
    //Display data for the 6 HairSalon Objects
              for (int i = 0; i < sal.length ; i++ )
         System.out.println(sal.getSvcDesc( ) + " " + sal[i].getPrice( ) + " " + sal[i].getMinutes( ));
              System.out.println("___________");
              System.out.println("End of Report");
    public static void BubbleSortPrice(HairSalon[] array, int len)
    // Sorts the items in an array into ascending order by price
    int a, b;
    HairSalon temp;
    int highSubscript = len - 1;
    for(a = 0; a < highSubscript; ++a)
         for(b= 0; b < highSubscript; ++b)
         if(array.getPrice() > array[b + 1].getPrice())
              temp = array[b];
              array[b] = array [b + 1];
              array[b + 1] = temp;
    public static void BubbleSortTime(HairSalon[] array, int len)
    // Sorts the items in an array into ascending order by time
         int a, b;
         HairSalon temp;
         int highSubscript = len - 1;
         for(a = 0; a < highSubscript; ++a)
              for(b= 0; b < highSubscript; ++b)
         if(array[b].getMinutes() > array[b + 1].getMinutes())
         temp = array[b];
         array[b] = array [b + 1];
         array[b + 1] = temp;
    public static void BubbleSortService(HairSalon[] array, int len)
    // Sorts the items in an array into ascending order by time
         int a, b;
         HairSalon temp;
         int highSubscript = len - 1;
         for(a = 0; a < highSubscript; ++a)
         for(b= 0; b < highSubscript; ++b)
         if(array[b].getSvcDesc().compareTo( array[b + 1].getSvcDesc()) > 0)
                   temp = array[b];
                   array[b] = array [b + 1];
                   array[b + 1] = temp;

  • Creating and populating portal domain

    I have created a portal domain on 8.1 platform using configuration wizard the problem
    is that I the domain is empty and I need thelibraries available on the sample
    portal how I am supposed to get to the my portal domain since I thought they would
    be provided automaticall once creating portal domain ,in other words what would
    be the standard way doing this .

    The admin portal exists as part of a portal application; it modifies the
    state of the portal resources in the application it's part of. If
    there's no app (such as with a new portal domain), there's no admin portal.
    You should use Workshop to create a new portal application on your new
    portal domain. In Workshop, use the menus: File|New|Application...,
    choose Portal Application, choose the name of application, choose the
    directory to put the application, then browse the Server field to the
    config.xml of the portal domain you created.
    If the server isn't already running, you can use Tools|WebLogic
    Server|Start Server to start it, at which point Workshop will deploy the
    new portal application to you domain, and you will be able to access the
    admin portal (including on the menu from Portal|Portal Administration...
    Greg
    Lara Man wrote:
    Hi Folks,
    I wanted to create my own portal domain in WebLogic 8.1 portal and I used the
    Weblogic domain wizard(config.cmd) and created a portal based domain.When I try
    to access the potal admin console (http://localhost:7001/PortalAppAdmin/portal.portal),
    it shows 404 error.
    How do I access the portal admin console in my own domain? Do I need to tweak
    anything in configuration?
    Thanks
    -Lara

  • Is it possible to create hierarchical tree report (not group tree) CR2008?

    Hi,
    Is it possible to create hierarchical tree kind report using CR 2008(no group tree in the report)?  The report somewhat look like below and a node can have multiple Child and so and so. Is there any magical way either as a chart or any object which supports the below structure.
                                                          Parent1
                                           Child1              Child2             Child3             Child4          Child5
                     Child1A     Child1B      Child1C
        Child1Aa  Child1Ab
    its hierarchical tree  structure and it should be in detail section of the report so that print in paper is possible.
    Please help first of all, can we able to create a report in above structure(each item needs to be surronuded with box and the each last child will contain a table valued data.
    (if I post this thread, it may look like plain text, please consider the above data as a hierarchical tree  structure with child having N number of children)
    Thanks

    Moved from .NET Development - Crystal Reports forum to Crystal Reports Design forum.
    Ludek

  • Scroll Event on a hierarchical tree

    Is it possible to intercept a scroll event on a hierarchical
    tree item, and how much the tree has been scrolled?
    many thanks in advance,
    Michele Pantaleo
    null

    Hello,
    I was able to reproduce your issue fast.I was able, also to find a solution to your issue, solution that came after performing several tests.
    What i found out:
    --the expansion begins from root and ends with the last leaf.That is why the scroll bar stays at the bottom.
    --if you click on leaf node and then click expansion(which after the while loop has the following code:
    node := Ftree.Find_Tree_Node(htree, '');
    Ftree.Set_Tree_Selection(htree, node, Ftree.SELECT_ON);)
    it will work to achieve what you want.
    Here is the full procedure for the expanded tree that lets the scroll bar at the top:
    PROCEDURE explose_tree IS
    node ftree.node;
    htree ITEM;
    state varchar2(30);
    state1 varchar2(30);
    BEGIN
    -- Search the tree identifiant --
    htree := Find_Item('block2.tree4');
    -- Search the root --
         node := Ftree.Find_Tree_Node(htree, '');
         --Ftree.Set_Tree_Selection(htree, node, Ftree.SELECT_ON);
    -- Expand all nodes --
    WHILE NOT Ftree.ID_NULL(node) LOOP
    state := Ftree.Get_Tree_Node_Property(htree, node, Ftree.NODE_STATE);
    IF state = Ftree.COLLAPSED_NODE THEN
    Ftree.Set_Tree_Node_Property(htree, node, Ftree.NODE_STATE, Ftree.EXPANDED_NODE);
    elsIF state = Ftree.LEAF_NODE then --this is the key that help to solve your problem
         Ftree.Set_Tree_Selection(htree, node, Ftree.SELECT_ON);
    END IF;
    node := Ftree.Find_Tree_Node(htree, '', ftree.find_NEXT,Ftree.NODE_LABEL,'', node);
    END LOOP;
    -- Now go the root --
         node := Ftree.Find_Tree_Node(htree, '');
    --you need to select the root, otherwise the scroll bar will be at the bottom     
    Ftree.Set_Tree_Selection(htree, node, Ftree.SELECT_ON);
    end;
    Regards,
    Alex

  • How do we create Hierarchical tree??

    Can I get help on creating hirerchical tree with detailed description ?? I tried basing hierarchical item on query but it didn't work.Do i need to specifically give code for populating it ??
    Also I need help on basing it on Record Group ??
    Is there any rule for having specific no of columns for a tree ??

    You can create Hierarchical Tree in two ways.
    One using "connect by prior" and another
    by Adding columns and row to record group at run time.
    If your table has Self reference Key then
    you can create using connect by prior.
    Otherwise you have to go for second one.
    Go and check the navwiz.fmb in oracle demo files.
    Following example is from navwiz.fmb
    (open navwiz.pll and then check refresh_tree)
    In this example they used both.For Emp they used connect by prior.
    PROCEDURE refresh_trees(p_view VARCHAR2) IS
    cursor cursor_dept is
    select dname, deptno
    from dept
    order by dname;
    cursor cursor_emp(p_dno number) is
    select ename, empno
    from emp
    where deptno = p_dno
    order by ename;
    v_i number;
    v_ignore number;
    rg_emps recordgroup;
    rg_depts recordgroup;
    v_init_state groupcolumn;
    v_level groupcolumn;
    v_label groupcolumn;
    v_icon groupcolumn;
    v_value groupcolumn;
    begin
    if p_view = 'EMP' then
    --the emps hierarchy
    rg_emps := find_group('EMPS');
    if not id_null(rg_emps) then
    delete_group(rg_emps);
    end if;
    rg_emps := create_group_from_query('EMPS',
    'select 1, level, ename, NULL, to_char(empno) ' &#0124; &#0124;
    'from emp ' &#0124; &#0124;
    'connect by prior empno = mgr ' &#0124; &#0124;
    'start with mgr IS NULL');
    v_ignore := populate_group(rg_emps);
    ftree.set_tree_property('navigator.nav_display', ftree.record_group, rg_emps);
    else
    --the organization
    rg_depts := find_group('DEPTS');
    if not id_null(rg_depts) then
    delete_group(rg_depts);
    end if;
    rg_depts := create_group('DEPTS');
    v_init_state := add_group_column(rg_depts, 'init_state', number_column);
    v_level := add_group_column(rg_depts, 'level', number_column);
    v_label := add_group_column(rg_depts, 'label', char_column, 40);
    v_icon := add_group_column(rg_depts, 'icon', char_column, 20);
    v_value := add_group_column(rg_depts, 'value', char_column, 5);
    v_i := 1;
    for deptrec in cursor_dept loop
    add_group_row(rg_depts, v_i);
    set_group_number_cell(v_init_state, v_i, 1);
    set_group_number_cell(v_level , v_i, 1);
    set_group_char_cell (v_label , v_i, deptrec.dname);
    set_group_char_cell (v_icon , v_i, NULL);
    set_group_char_cell (v_value , v_i, to_char(deptrec.deptno));
    v_i := v_i + 1;
    for emprec in cursor_emp(deptrec.deptno) loop
    add_group_row(rg_depts, v_i);
    set_group_number_cell(v_init_state, v_i, 1);
    set_group_number_cell(v_level , v_i, 2);
    set_group_char_cell (v_label , v_i, emprec.ename);
    set_group_char_cell (v_icon , v_i, NULL);
    set_group_char_cell (v_value , v_i, to_char(emprec.empno));
    v_i := v_i + 1;
    end loop;
    end loop;
    ftree.set_tree_property('navigator.nav_display', ftree.record_group, rg_depts);
    end if;
    My query******
    procedure refresh1 is
    v_i number;
    v_ignore number;
    Rg_Menus recordgroup;
    rg_depts recordgroup;
    Begin
    Rg_Menus := find_group('MENUS');
    If not id_null(Rg_Menus) then
    delete_group(Rg_Menus);
    End If;
    Rg_Menus := create_group_from_query('MENUS',
    'select 1, level, item_name, NULL, item_id ' &#0124; &#0124;
    'from Item_all '
    &#0124; &#0124;' where Item_id in (select Item_id from Item_access_all where role_id in
    (select role_id from org_access_all where user_id =
    (select gsp_user_id from users_all where upper(user_name) = upper(USER))
    and code = :global.code) )
    and item_id not in (select item_id from item_Exception where Code = :Global.Code)' &#0124; &#0124;
    'connect by prior item_name = main_name ' &#0124; &#0124;
    'start with item_name = ''MAIN''');
    v_ignore := populate_group(Rg_Menus);
    ftree.set_tree_property('tree_blk.tree_menu', ftree.record_group,Rg_Menus);
    Exception
    When Others then
    Bell;
    Message('You cannot Access any menu item...');
    Raise Form_trigger_Failure;
    End;
    viji.
    null

  • Creating a Hierarchical Tree in Forma 6i

    Hi Gurus,
    We are using forms 6i and oracle 9i. In oracle forms i have one control block and another control block. When we click on one column repname ,the other control block displays the
    corresponding info for the sales rep name. eg. Lets say i pick John the salesrep in the other
    control block it displays its code,geography region etc.
    I want to create a hierarchical tree in the other block where it is displaying the salesrep info.
    So i want when i click on the sales rep name(the other control block measure)
    then it should the code,geography region etc in the form of hierarchical tree in the other control
    block. If the sales rep name is not clicked then the control block having the salesrep info should be hidden.
    I would appreciate your help.
    Thanks,
    PSO

    place your treeitem in the layout. The treeitem has to the only item in the block and property "Single record" has to be true.
    To populate your tree with data you can either
    - use a query to populate a treeitem have a look at this thread Tree Menu
    - use the Ftree.Add_Tree_Node built-in and program your own logic.

  • Hierarchical Tree IN Oracle FORMS6i and oracle 9i

    Hi ,
    I have written all the scenarios as follows. Please write in steps to do this.
    I have the follwing scenario to create the hierarchical tree.
    The display is as follows when the user comes to this screen.
    CTRLBLK1 CTRLBLK2
    SCOTT This block is hidden
    John
    The way I want it when the user is clicking scott it is displaying the records in the other block
    the full tree expanded not collapasble.
    Scenario1
    CTRLBLK1 CTRLBLK2
    SCOTT President
    VP
    Manager
    Same is over here in scenario2
    Scenario2
    CTRLBLK1 CTRLBLK2
    John President
    VP
    Manager
    Clerk
    The tree should be displayed not collapsed. What is way to do the above
    in forms. I tried to do the way suggested in OTN. But i didnot reached to the solution.
    The way I want it when the user is clicking scott it is displaying the records in the other block
    the full tree expanded not collapasble.
    Pls help.
    Thanks,
    PS

    1) create a item Hierarchical Tree,
    ANS: The tree is created
    2) put this to pull in data to the Tree
    DECLARE
    l_query VARCHAR2(500);
    BEGIN
    l_query := '';
    FTREE.SET_TREE_PROPERTY ( c_tree_blk_item_nm, FTREE.QUERY_TEXT, l_query );
    FTREE.POPULATE_TREE ( c_tree_blk_item_nm );
    go_node ( c_tree_root_node );
    IF FTREE.GET_TREE_PROPERTY (c_tree_blk_item_nm, FTREE.NODE_COUNT ) = 1 THEN
    po_found := FALSE;
    ELSE
    po_found := TRUE;
    END IF;
    END;
    Ans: I wrote this code in WHEN_NEW_FORM_INSTANCE trigger. But the code didnot got compiled . I did cut and paste of query too.
    Pls help me in defining the c_tree_blk_item_nm and go_node ( c_tree_root_node ). I was thinking some code of this type would work.
    The code itself didnot got compiled. It didnot ran.
    3) put this coding into WHEN-TREE-NODE-SELECTED trigger under the item, this is to populate the data to other block when u select the tree node.
    IF :SYSTEM.TRIGGER_NODE_SELECTED = 'TRUE' THEN
    GO_BLOCK ( 'BK_AGT' );
    EXECUTE_QUERY;
    SYNCHRONIZE;
    end if;
    BK_AGT is the 2nd control block .
    Help me in solution for this scenario in creating the hierarchical tree in forms6i.
    -KJJJ

  • Call forms and reports from a hierarchical tree node.

    Hello,
    I am new in pl/sql programming and I have some dificulties. I have created a hierarchical tree, in order to use it as a menu in an application that I am trying to develope. The problem is that I do not know how can I make the last nodes to be either a form or a report and when somebody double clicks on these nodes the form or the report will run. What is more, should I use the when-tree-node-selected trigger or the when-tree-node-activated?
    Thank you in advance,
    Vag

    Hi ,
    In Oracle Forms , a hierarchical tree is developed through the use of a sql statement and column which defines the order of leaves...
    Visit the on-line help of Forms10g to find out the details , and the triggers as well...
    Something else...post this question to Oracle Forms to get more detailed answer...
    Regards,
    Simon

  • Call forms and reports through a hierarchical tree node.

    Hello,
    I am new in pl/sql programming and I have some dificulties. I have created a hierarchical tree, in order to use it as a menu in an application that I am trying to develope. The problem is that I do not know how can I make the last nodes to be either a form or a report and when somebody double clicks on these nodes the form or the report will run. What is more, should I use the when-tree-node-selected trigger or the when-tree-node-activated? I use forms 6i.
    Thank you in advance,
    Vag
    Message was edited by:
    user537672

    Thank you very much for your reply. I tried what you said and managed to create a when-tree-node-activated trigger that works fine. The only problem is that I do not know how to find the last 3 characters of every node in order to make the form understand if it is a form or a report. I mean that the name of each node maybe of different length so I do not know how exactly to use the substr().
    Thank you
    Vag

  • Newbei tries to create hierarchical tree

    hi all;
    I'm pretty new to the oracle forms and I'm trying to create a system similar to forum.
    I have created the following table at the database;
    create table tblFrmData(
    frmID number(2), -- forum ID
    frmNodeID number(5),
    frmParentNodeID number(5), -- the NodeID of the parent branch
    frmSubject varchar(100), -- the subject ( will be the label of tree)
    frmBody varchar(1000), -- the body of the message (will be the data of the tree)
    Now I want to create a tree depending on the data in this table
    I have created the tree with dragging and droping from the toolbar at forms. The name is tree8. It is in block3.
    I have also created a record group and named it as RG. The select statement used while creating the RG was
    select -1, frmNodeID, frmSubject,'', frmBody from tblFrmData
    after that I have modified when-new-item-instance trigger of tree8 as following
    declare
    htree ITEM;
    begin
    htree:=Find_Item('block3.htree8');
    Ftree.Set_Tree_Property(htree, Ftree.RECORD_GROUP, 'rg');
    end;
    this trigger was compiled without error.
    when I save the form and try to run it the following error is given! And I do not know how to solve it although I have readed the referances and looked at the old questions in this forum.
    frm-32089: trees must be in single row, single item blocks.
    hierarchical tree item TREE8
    Block: BLOCK3
    Form: FORM_TREE
    frm-30085:Unable to adjust form for output
    I'm waiting for your answers
    regards
    erdem seherler

    Just ensure that the Hierarchical Tree you have created is the only Item present in that Data Block.
    Move all other items to a new Data Block.

  • How to create a graph representing a big tree(parents and children are know

    How to create a graph representing a big tree(parents and children are known)?
    Thank you so much!
    Also, I need to write the graph into a jpg/gif file or display the graph in the web browser.
    I got a code from JGraph and can create the graph I want, although unextendable. However, JGraph define the graph as class Gscene instead of Img or BufferedImg or RenderedImg. Therefore, I couldn't use ImageIO.write(image, ext, file) to write the graph into a jpg file.

    aiGrace wrote:
    How to create a graph representing a big tree(parents and children are known)?Hierarchical data structures are covered here all the time. Please search before you post. This topic has been covered over and over.
    Thank you so much!
    Also, I need to write the graph into a jpg/gif file or display the graph in the web browser. I got a code from JGraph and can create the graph I want, although unextendable. However, JGraph define the graph as class Gscene instead of Img or BufferedImg or RenderedImg. Therefore, I couldn't use ImageIO.write(image, ext, file) to write the graph into a jpg file.Did you read the JGraph API? I'm guessing it exposes a method to get the image data somehow.

Maybe you are looking for