JBCL vs infobus?

Both JBCL (Borland's Java Bean Component Library) and Oracle's
implementation of Java infobus standard are shipped with
JDeveloper2.0. They both support data exchange between java
components and the database application. Can anybody tell me
what's the consideration of choosing one over another, what is
the difference between these two class libraries?
I have a client/server database application using java
application, should I choose JBCL or SWING + Oracle's dacf,
which is an infobus implementation? Is there any comment on
JBCL?
null

Thank you for your response.
My 2 cents:
1, It's really frustrated for my other postings not getting any
feedback from Oracle support team. I see so many questions posted
w/o any answer.
2, JBCL is pretty immature. Many controls don't work the way
you expected them to work. And its design has determined its slow
performance.
shaomei
Martin (guest) wrote:
: We tried to work with the infobus and abandoned it after a
while;
: perhaps it is our fault, but we were not able to fill any
: datasets directly from java (i.e. not from dacf.controls).
: We need this feature to beat the performance problem.
: Both JBCL and INFOBUS components seem to be awfully slow
: ( a form with two datasets, rowsets needs 5 -10 secs to open).
: Undoubtly INFOBUS is the future, but for us the oracle
: implementation needs to be augmented; at least we need direct
: access to rowsets (the rowsetinfo is not enough);
: I think we have to wait for a later release to use infobus; we
: are now working with jbcl components and are eager to see the
: just released JBuilder 3 with the modern swing (javax)
: components. Perhaps it will be somewhat faster with the
: jdatastore.
: martin
: Shaomei Ruan (guest) wrote:
: : Both JBCL (Borland's Java Bean Component Library) and Oracle's
: : implementation of Java infobus standard are shipped with
: : JDeveloper2.0. They both support data exchange between java
: : components and the database application. Can anybody tell me
: : what's the consideration of choosing one over another, what is
: : the difference between these two class libraries?
: : I have a client/server database application using java
: : application, should I choose JBCL or SWING + Oracle's dacf,
: : which is an infobus implementation? Is there any comment on
: : JBCL?
null

Similar Messages

  • How to prevent Autoquery in infobus forms

    Hi,
    When an info bus form comes up, it queries the data from the
    table and shows it up. I want to prevent this. How do I do this?
    In jbcl QueryDataSet there was a parameter to specify this
    behaviour. But nothing is seen in infobus documentation. Can
    someone help me please.
    I tried using rowsetInof.publishSession(false). Still the data
    gets quried, only thing is that it is not shown on the
    components. I want to prevent the initial querying totally.
    TIA,
    --Gopal
    null

    Hi
    Thanx. But it doesn't help. When I use
    sessionInfo.publishSession(false),
    if I have 10 rows in the table, it shows 10 blank rows on the
    Grid control to which the rowSet is attached. Moreover, it does
    not allow me to add any values to them. (It allows any value to
    be inserted, but just doesn't save and no validation events
    take place.)
    So I need more help on this.
    Thanks,
    --Gopal
    Dave Henley (guest) wrote:
    : I'm using
    : sessionInfo.publishSession(false);
    : in the init method of my infobus form and it works fine.
    : Gopal (guest) wrote:
    : : Hi,
    : : When an info bus form comes up, it queries the data from the
    : : table and shows it up. I want to prevent this. How do I do
    : this?
    : : In jbcl QueryDataSet there was a parameter to specify this
    : : behaviour. But nothing is seen in infobus documentation. Can
    : : someone help me please.
    : : I tried using rowsetInof.publishSession(false). Still the
    data
    : : gets quried, only thing is that it is not shown on the
    : : components. I want to prevent the initial querying totally.
    : : TIA,
    : : --Gopal
    null

  • JBCL 2.0 and Oracle 8.0.5 Objects Option

    I4m working with JDeveloper 3.1.1.2 using JBCL components and Data Express to connect to an Oracle 8.0.5 database with Objects Option.
    I use a valid SQL like :
    SELECT C.DENOMINACION AS DENOMINACION, C.OBSERVACIONES AS OBSERVACIONES, C.FECHA AS FECHA, C.CONSOLIDADA AS CONSOLIDADA, C.COBERTURAS.NOMBRE AS COBERTURAS, C.ES_DE_UN_TIPO_DE_CONVOCATORIA.DESCRIPCION AS TIPO FROM ELE_CONVOCATORIA_ELECTORAL C
    QueryDataSets work fine and they return references to objects as they were another column of the dataset but when i try to get data inside them through something like:
    queryDataSet1.getString("COBERTURAS");
    i receive:
    borland.jbcl.dataset.DataSetException: Unknown column name: COBERTURAS
    I can4t even count the number of columns, i always get '0' but the queryDataSet shows me in the design panel all the columns correctly.
    Does exist any documentation about what4s happening?
    Must i look for a newer version of JBCL or redoing all the work?
    null

    jdev 3.1.1.2 is designed to work with rdbms 8.1.6, so it provides the rdbms 8.1.6 jdbc drivers with it.
    Since 8.1.5 came out, it has been a known issue that you can not use jdbc 8.1.x jdbc drivers to access oracle 8.0.x objects with them.
    Check the notes section at the bottom of table "Table 2-1 JDBC Driver-Database Compatibility " in thefollowing topic :
    "Requirements and Compatibilities for Oracle JDBC Drivers" located at :
    http://otn.oracle.com/docs/products/oracle8i/doc_library/817_doc/java.817/a83724/getsta1.htm#1008206
    by the way --
    rdbms 8.0.5 went out of support on dec 31, 2000.
    i recommend you upgrade to oracle rdbms 8.1.7 ...
    i hope this helps ...
    null

  • Calling infobus form from another.

    Hi
    Here is a brief description of the problem.
    A simple data form is created using JDeveloper2.0's wizard. It is an Infobus based dataframe,which has a simple gridcontrol fetching data from the dept table. This form is in the pacakge,
    package1.
    Another form is made with a master detail relationship between dept and employee table, in the package, package2.
    Now a button control is added on the first form( which is in package1) and the following code is added to the actionperformed event.
    void buttonControl1_actionPerformed(ActionEvent e) {
    Frame f = new package2.Frame1();
    f.show();
    Essentially, it calls the form in package2 when the button is pressed. Once this action is performed, the login dialog box of the form in package2 appears. After which it throws the following error and shows a blank form.
    DAC-405: SessionInfo: Application module creation failed; className: ConnectionTrade
    JBO-00200: A Generic exception occurred during loading Customizations.
    null
    If I add a button in the second form, (ie. the one in pacage2 having a master detail relationship) and call dept form (in package1) from here, it works.
    We are stuck with this problem, and unable to proceed with deploying the application. As each form need to be called and invoked from a menu.
    Thanks in advance.
    Ravi

    Hi,
    You can do like this :
    mainApplication(Menu)
    +------------ Frame1
    |
    +------------ Frame2
    In MainApp you call your frame, and remove from code the
    windowListener of the frame. Replace the dispose(); in frame
    methods fileExit(ActionEvent e) & processWindowEvent(WindowEvent
    e), by try { finalize(); } catch (java.lang.Throwable ex) {
    ex.getMessage(); }
    It works great.
    Bart
    Gopal (guest) wrote:
    : Hi,
    : I am calling an infobus form from another one. Once I close the
    : called form, I want the control to go back to the calling one.
    : I tried dispose in the called form. It doesnot work. (Gives a
    : null pointer exception and crashes everything). Both the frames
    : are extended from infoframe. What is the right way to do this?
    : Thanx,
    : --Gopal
    null

  • No connections in the combo box of Infobus Data Form Wizard?

    I am trying to create a new project but when I try and select a
    connection, the "Connection" drop-down combo-box is empty. I have
    created 9 connections, but cannot select them. I have tried
    adding a new one and editing but still they do not appear.
    Am I doing something stupidly wrong here?
    Any help would be appreciated,
    Thanks,
    Andy Shiels
    null

    JDeveloper Team (guest) wrote:
    : Andy,
    : The Infobus controls can only talk via the Oracle JDBC drivers
    : (thin and OCI only, not Oracle Lite) to an Oracle database
    : (again, not Oracle Lite), so the wizard will only display
    : connections that meet those criteria.
    : If you have created IIOP connections, or connections that use
    a
    : driver other than the Oracle JDBC Thin or OCI drivers
    (including
    : the Oracle Lite JDBC driver), these connections will not
    appear
    : in the list of available connections to use.
    : L
    : Andy Shiels (guest) wrote:
    : : I am trying to create a new project but when I try and
    select a
    : : connection, the "Connection" drop-down combo-box is empty. I
    : have
    : : created 9 connections, but cannot select them. I have tried
    : : adding a new one and editing but still they do not appear.
    : : Am I doing something stupidly wrong here?
    : : Any help would be appreciated,
    : : Thanks,
    : : Andy Shiels
    I have a similar problem using JDBC-ODBC bridge with MS access
    (just for testing JDeveloper). How do I select the connection,
    get pass the step to move on to the next step in the DB Servlet
    wizard? Thanks.
    null

  • Loading A Blank InfoBus Applet

    I have created an InfoBus Applet and am wondering if there is any way to load it blank(no data on sreen). By default, it executes the master query and brings the results to screen when the applet loads. Is there a property on the master rowset that needs to be set? What functions are available to rowset or sessionInfo which will allow the applet to load blank, and only execute the master query when the user queries via find dialog? Any help would be greatly appreciated.

    Hi,
      This could be a combination of numerous things, check the following
    - Flash Player version used
    - Internet Explorer (IE) version
    - How big is the flash file you trying to load. Try using a smaller version and see if it works. That way we can elimiate flash memory related.
        Make sure all are in the supported platform for Xcelsius 2008 (What Service Pack are you on?).
    Regards,
    Ken

  • How to get JBO error codes in infobus

    Hi,
    I am creating an Infobus based form. I am able to trap the
    errormessages generated by the system using the error manager.
    But I could get only the DAC error codes. I want to get the JBO
    error codes also, since they give more meaningful messages. How
    do I do this using errormanager?
    Please Help
    Thanks,
    Susan
    null

    Please see the reply to the thread "About JBO messages and
    DacfErrorMessageContext"
    - PSW
    Susan Philip (guest) wrote:
    : Hi,
    : I am creating an Infobus based form. I am able to trap the
    : errormessages generated by the system using the error manager.
    : But I could get only the DAC error codes. I want to get the JBO
    : error codes also, since they give more meaningful messages. How
    : do I do this using errormanager?
    : Please Help
    : Thanks,
    : Susan
    null

  • Can't load any classes from infobus.jar (WL 6.0 SP1)

    Hi,
    I am deploying an .ear file, which has one .war file in it. The war file, has
    infobus.jar, inside it under \WEB-INF\lib. Whenever in my servlet code I try to
    load a class from infobus.jar, I get the following exception :
    About to load class javax.infobus.InfoBusDataConsumer<<<<<<<<<<java.lang.ClassNotFoundException: InfoBusDataConsumer
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:178)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:45)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:120)
    at XDILoginForm.init(XDILoginForm.java:99)
    at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:638)
    at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:581)
    at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:526)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1078)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:1022)
    at weblogic.servlet.internal.HttpServer.loadWARContext(HttpServer.java:499)
    at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:421)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.deploy(Application.java:175)
    at weblogic.j2ee.J2EEService.deployApplication(J2EEService.java:173)
    at weblogic.management.mbeans.custom.Application.setLocalDeployed(Application.java:217)
    at weblogic.management.mbeans.custom.Application.setDeployed(Application.java:187)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeSetter(DynamicMBeanImpl.java:1136)
    at weblogic.management.internal.DynamicMBeanImpl.setAttribute(DynamicMBeanImpl.java:773)
    at weblogic.management.internal.DynamicMBeanImpl.setAttribute(DynamicMBeanImpl.java:750)
    at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:256)
    at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1356)
    at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1331)
    at weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:318)
    at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:259)
    at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1356)
    at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1331)
    at weblogic.management.internal.MBeanProxy.setAttribute(MBeanProxy.java:291)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:173)
    at $Proxy7.setDeployed(Unknown Source)
    at weblogic.management.console.pages._panels._mbean._application._jspService(_application.java:303)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:213)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:1265)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1622)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    But if I put the infobus.jar on system classpath , everything works out fine.
    Can somebody tell me, what is going on

    Gseel is right: you try to instantiate an EJB with the BDK.
    Enterprise Java Beans are totally different from graphical/GUI beans. EJBs are thought for dealing with business logic like accessing a database, ldap directory and so on. They run on a application server (simply speaking - a java enabled webserver) and do some processing to handle user requests. Enterprise Java Beans usually don't interact directly with the user, they only do the work in the background and forward their results, which are then rendered for the user. Typically they are employed for handling web requests (a user with a browser), but they can also be used for awt/swing applications. Though - let me repeat - they don't appear visually on the screen.
    The only similarities between those two bean types are the following: they have getter/setter methods for their properties, they implement Serializeable (or a sub-interface like Externalizable, Remote) and they have a default no-argument constructor.
    If you want to run your been you need an application server (your bean is pre-packaged for the Bea Weblogic app-server). If you want to do something graphical, you'll need to search for GUI beans.
    dani3l

  • Accessing value of a textfield mapped to an infobus column

    I am attempting to access the text value of a textfield mapped to an Infobus column.
    In this instance, I am trying to get an account type from the appropriate textfield to pass it to a new query.
    I have tried using getText - this returns a string of "oracle.sql.STRUCT@nnnn" (where nnnn is an hexidecimal bnumber)
    I also tried creating a method on the textfield using code I found here to retrieve the dataItem, map it to an immediate access control and retrieve the value using getValueAsString().
    This approach also returns "oracle.sql.STRUCT@nnnn" of course the numbers are different but as far as I can see, I have know way of knowing if this is the same class or not.
    What I am wanting to do is this....
    jpLookup.getRowSetInfo().setQueryCondition("ACCOUNTTYPENAME" = '"+tfType.getFieldContents()+"'");
    jpLookup.getRowSetInfo().executeQuery();
    for testing, I took out the internal single quotes so I could see what was being generated through the sql error dialog. With them in place, I simply get an empty result set since I don't have any account types of 'oracle.sql.STRUCT@nnnn'
    SO, could someone point me in the right direction??

    TextFieldControl tField = new TextFieldControl();
    ((ImmediateAccess)tField.getDataItem()).getValueAsString();
    Linda

  • Where i can find the .jar file for com.borland.jbcl package

    when i rebuilt my application i met this error message
    package com.borland.jbcl.layout.XYLayout does not exist
    please help
    thanks

    Hi,
    Check out the "download" link at the following address.
    http://cougaar.org/cgi-bin/viewcvs.cgi/jars/lib/jbcl.jar?cvsroot=core
    Hope that help,
    Jack

  • Package com.borland.jbcl.layout does not exist

    im using JBuilder X and getting this error message:
    package com.borland.jbcl.layout does not exist
    considering that JBuilder has some problem i compiled the classes using command prompt but even then the same error appeared. plz help me its part of my final project of a courde.
    Some ppl in diff forums have said that jbcl has been deprecated but making gui in JBuilder is much easier. and i only know of making frames in XYLayout,,,,,,,
    If i dont have the package plz let me know how can i get it and if i have it then tell me how can it get it and where and how to install

    Put the jars or classes in the com.borland.jbcl.layout package into your CLASSPATH. You have referenced them in your program, the compiler is looking for them, but it cannot find them, so it cannot compile your program.

  • How to Commit in InfoBus Data Items

    Hi,
    I created an Applet using JDev2.0. I called the DB schema using
    Connection Manager, InfoBus Data Items, SessionInfo and
    rowSetInfo.
    I customised the UI form using Infoswing. As per my logic, after
    user modified the data and press the SUBMIT button, I should call
    the commit for the rowSetInfo.
    How can I issue commit or how to resolv the modified rowSetInfo.
    Previously I used Jdev1.1 and Borland's dataset and it works
    fine.
    Now, Oracle is not supporting Borland's dataset and AWT. So, now
    I am rewritting the whole application using JDev2.0.
    Thanks in advance.
    Ramesh S.
    null

    Hi,
    If your jsp is of type <ViewName>_SubmitInsertForm.jsp created by JDeveloper,then it should be having NavigationBar,EditCurrentRecord and ViewCurrentRecord, in that order
    If that is the case, you should also see a "Save Changes" Button in the form, which should commit the changes to the database
    --Sandeep                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • To access a sequence.nextval from Infobus applet

    Hi
    I have Infobus Dataform applet which displays the columns of the
    table - timesheets which has a column "line_item" which has to
    get it's value from a database sequence.
    So I followed the approach followed in the Acme - sample
    application ViewMembers.java.
    Which the row added event of the RowsetInfo -
    The following code was added with my Rowset and sequence used.
    void ACME_MEMBERSIter_rowAdded(RowChangeEvent e) throws
    java.sql.SQLException,
    javax.infobus.DuplicateColumnException,
    javax.infobus.ColumnNotFoundException,
    javax.infobus.InvalidDataException
    RowsetAccess rsa = e.getDataItem();
    DbAccess dba = rsa.getDb();
    RowsetAccess seq = null;
    seq = (RowsetAccess)dba.executeRetrieval(
    "select acme_member_id_seq.nextval as
    \"new_id\" from dual",
    "infobus:/oracle/sessionInfo1/new_id",
    null);
    ImmediateAccess nv = null;
    ImmediateAccess column_id = null;
    nv = (ImmediateAccess)seq.getColumnItem("new_id");
    column_id = (ImmediateAccess)rsa.getColumnItem
    ("MEMBER_ID");
    column_id.setValue(nv.getValueAsString());
    This does not work when I run it from Jdeveloper I have debugged
    it an umpteen times and still no clue.
    The statement
    (RowsetAccess)dba.executeRetrieval(
    "select acme_member_id_seq.nextval as
    \"new_id\" from dual",
    "infobus:/oracle/sessionInfo1/new_id",
    null);
    JUST DOES NOT WORK.
    Please help.
    Regards
    Rajs
    null

    Hi Shachar,
    When SEQUENCE_SETUP/RESETUP is called, I need to modify the arbitrary data.
    Arbitrary data can be accessed in 2 ways (as per my knowledge)
    1. GetNewStreamValue() & SetStreamValue() (for this I need AEGP_EffectRef which will be NULL for the new effect when it comes to SEQUENCE_SETUP/RESETUP).
    2. If PF_ParamDef* params is not NULL then,
         PF_Handle                arbH        = params[PARAM_ID]->u.arb_d.value;
        CG_ArbData                *arbP;
        arbP    = reinterpret_cast<CG_ArbData*>(PF_LOCK_HANDLE(arbH));
    In the first way, when SEQUENCE_SETUP/RESETUP is called AEGP_EffectRef is NULL, so I cannot use it.
    In the second way, when SEQUENCE_SETUP/RESETUP is called  PF_ParamDef* params is NULL, so I cannot use it.
    Any ideas?

  • Dynamic Table setup (Infobus)

    Hi,
    I will first describe my environment application and then the problem.
    I want to create an Infobus GridControl, without using the designer. To setup the Rowsetinfo to which the GridControl will be bound, I perform a "select * from TABLE", using a normal JDBC coneection and looking into the metadata. Thus I have the names and types of all attributes. Next I build an array of ColumnInfo objects, in which each object is an AttributeInfo, with the name and type previously obtained, and finally I use the Rowsetinfo.setAttributeInfo().
    The next step is RowsetInfo.setQueryInfo(), in which I'm not sure if the parameters (AppModule and so on) are completely right, but it works.
    Finally I publish the session, and my grid gets populated with the data. Perfect, isn't it?
    My problem starts when I want to insert or delete a row. I can navigate, but not modify, and I get the error: JBO 01206: ViewDefImpl is Read only". How can I avoid this, and be able to insert a row? Deep inside the RowsetInfo, there is a member, mReadOnly, which belongs to another object of class ViewDefImpl, that is set to true. If I build the app using the designer, this property is false, but I do not know how to change it. Any ideas or workarounds will be much appreciated. if you need more information, please contact me.
    By the way, where can I get more in-deep information about InfoSwing components?
    Thank you very much
    Alberto
    null

    Your question is too general. Please refer to the documentation.
    Regards,
    Robin Zimmermann
    Forms Product Management

  • Infobus data form wizard returning ORA-03115

    Hi,
    I was trying to create a single table data form using (JBuilder2
    )infobus data form wizard and during the step 3 (select database
    objects)i got following error:
    >>
    ORA-03115 Unsupported network data taype or representation
    java.sql.SQLException
    <<
    I was connected to Oracle 8.0.5 database runing on AlphaVMS!
    What I am doing wrong ?
    Thanks
    Nadeem
    null

    Nadeem Siddique (guest) wrote:
    : Hi,
    : I was trying to create a single table data form using
    (JBuilder2
    : )infobus data form wizard and during the step 3 (select
    database
    : objects)i got following error:
    : >>
    : ORA-03115 Unsupported network data taype or representation
    : java.sql.SQLException
    : <<
    : I was connected to Oracle 8.0.5 database runing on AlphaVMS!
    : What I am doing wrong ?
    : Thanks
    : Nadeem
    I have tried all the JDBC /JDBC OCI drivers ! and geting the
    same error as mentioned above!
    null

Maybe you are looking for