Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Problem in invoking JavaBean from Oracle 9i / Forms 6i.

Problem in invoking JavaBean from Oracle 9i / Forms 6i.

From: Koshy Varghese <koshyvarghese_at_hotmail.com>
Date: 20 May 2002 22:37:30 -0700
Message-ID: <4ddff066.0205202137.11f23bf3@posting.google.com>


Hi,

        I have written a Javabean program which I invoke from Oracle Forms. The program is designed to pass a parameter from Oracle Form(Ver 6i) to the java bean and get a parameter back to the form. The Javabean is called on "When-Button-Pressed" event of a Form button. The problem is, Form doesn't seem to invoke the bean at all. There seems to be no communication between the Oracle Form and the Javabean at runtime.  

        On-click of the Form button though all test messages in the Form trigger are being displayed (Even message before and after the Set_Custom_Property & Get_Custome_Property). The only issue is the Form variable doesn't show the returned value from the bean.

	So the big question is - Whether the bean is invoked at all or not.
	If YES then how to check it and if NO then how to communicate with
the bean from Oracle Form.
	I am attaching the code of Javabean and trigger code.

Thanks & Regards,

NOTE : All the ClassPath for the JavaBean has been set properly and the Form is also recognizing the Implementation Class for the Javabean.


        The Trigger Code is,


	Declare
		setNewMsg varchar2(2000) := 'Hello World';
		getData varchar2(2000);
		BeanHdl   Item;
	Begin

	BeanHdl := find_item('Block3.MYBEAN');
	If NOT ID_NULL(BeanHdl) Then
		Message('Before Set');
		SET_CUSTOM_PROPERTY(BeanHdl,1,'setMessage',setNewMsg);
		Message('Before Get');
		getData := GET_CUSTOM_PROPERTY(BeanHdl,1,'getMessage');
		SYNCHRONIZE;
		Message(getData);
		Message('After Get');
		Message(' ');
	Else
		Message('The ID is null');
		Message(' ');
	End If;

	END;

---------------------------------------------------------------------
	The Bean Code is,
---------------------------

	  package oracle.forms.beans;

	   import java.awt.*;
	   import java.io.*;
	   import java.beans.*;

	   import oracle.forms.ui.*;
	   import oracle.forms.properties.*;
	   import oracle.forms.handler.*;
	   import oracle.ewt.lwAWT.*;


	   public class SimpleTestBean extends VBean {  
   
   
	        public static final ID SETMESSAGE =
ID.registerProperty("setMessage");
	        public static final ID GETMESSAGE =
ID.registerProperty("getMessage");
            
	        private String msg = "";
        
	        public String newMessage() {
        		return msg;
	        }
    
	        public Object getProperty(ID id) {  
        		try {  
        			if (id == GETMESSAGE) {  
				return newMessage();
		}
                        return super.getProperty(id);

}
catch (Exception e) { e.printStackTrace(); return null;
}
} public boolean setProperty(ID id, Object value) { try { if (id == SETMESSAGE) { msg = (String) value; } return super.setProperty(id, value); } catch (Exception e) { e.printStackTrace(); return false;
}
} } ---------------------------------------------------------------------
Received on Tue May 21 2002 - 00:37:30 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US