Erratic AbstractMethodError when calling equals() on interfaces

I am getting java.lang.AbstractMethodError or NPEs when calling methods that were defined in java.lang.Object on objects declared as interfaces. The following code executes normally, but sometimes (erratically) I am getting these errors. The code is part of a complex application; I have not been able to reproduce the errors in a small example.
The following code snipped shows where the error occurrs. Important to know is that the variable 'settings' is declared as private final IInterfaceSettings;, where IInterfaceSettings is declared as Java interface.
    public int hashCode(){
        int result = 83;
        result+=(this.settings==null)?0:this.settings.hashCode();  // error occurs here
        return result;
    }An explicit cast to Object seems to solve the problem; it never occurred again until now.
    public int hashCode(){
        int result = 83;
        result+=(this.settings==null)?0:((Object)this.settings).hashCode();
        return result;
    }Daniel

Define hashCode() in the interface itself. You will probably end up with something like the following:
interface IInterfaceSettings {
abstract public int hashCode();
// other methods follow
class InterfaceSettingsImpl implements IInterfaceSettings {
final public int hashCode() {
return super.hashCode(); // should resolve to Object
Also, if you are going to implement hashCode, you might as well implement equals() so collections behavior is as exepcted.
- Saish
"My karma ran over your dogma." - Anon

Similar Messages

  • ACCESS_VIOLATION at AdobeOwl.dll when call Indesign com interface from windows service

    ACCESS_VIOLATION at AdobeOwl.dll when call Indesign CS3 COM interface from windows service application.
    Does anyone know how to workaround this issue ?

    As AdobeOwl.dll file is missing or corrupted, you need to get a new dll file. Here are the steps to replace setup.dll file
    Step 1. You can download missing AdobeOwl.dll here:
    http://dllcentral.com/AdobeOwl.dll/1.0.92/download/
    Step 2. Paste this file into your system32 or SyWOW64 folder.
    Step 3. Navigate to your System32(32Bit OS) or SyWOW64(64Bit OS) Folder.
    Note: The location of System32 and SyWOW64 is
    C:Windows\System32 (If you are using 32Bit Windows)
    C:\Windows\SysWOW64 (if you are using 64Bit Windows)
    Step 4. Paste the AdobeOwl.dll file into this folder.
    Step 5. Try to run it. It might work now. If not, restart your computer to restore it effectively.

  • Load Error with return code 7000 when call sqlldr in interface.

    Hi All,
    I have created a interface to load data from 'File' to 'Oracle' in ODI 11g.
    Below are the running order of this interface.
    1 - Loading - SrcSet0 - Drop work view
    2 - Loading - SrcSet0 - Drop Temp Table
    3 - Loading - SrcSet0 - Create Temp table
    4 - Loading - SrcSet0 - Create Work View
    5 - Loading - SrcSet0 - Generate CTL file
    6 - Loading - SrcSet0 - Call sqlldr
    We are getting the following error while running the step 6.
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (most recent call last):
      File "<string>", line 22, in <module>
    Load Error: See C:\home\oracle\joc\odi/AIM.log for details
      at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
      at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
      at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
    And it return code 7000 indicated in 'Execution Statistics'.
    If anyone has encountered a similar issue and able to solve it, please share your thoughts with me.
    Thanks in advance for your help.
    Dicksam

    This forum is dedicated to supporting the use of Maven with FMW and the new Oracle Maven Repository.  Given that ODI does not currently provide Maven support, you are unlikely to get a response in this forum.  You might want to try posting in a different forum dedicated to Data Integration, such as the Master Data Management forum.

  • BW error:  "invalid call sequence for interface when recording changes"

    I am getting the error "invalid call sequence for interface when recording changes" when I try to activate a datasource in BW.  Any ideas on how to resolve this error?
    Thanks.

    I already tried that.  This is what's happening..  When I get this error, if I try again it will activate and gets collected into a transport.  I moved this transport to our QA system.  As soon as I try to execute an infopackage under this datasource in QA, I get the error datasource   xxxxx must be activated.   Before the excecution of the infopackage, the datasource is in "Active version executable".   After I get the error message "datasource must be activated", the datasource in the QA system changes to "Active version not executable".   I am not sure all these issues are related back to the "invalid call sequence" error I am getting when I try to activate the data source.
    I also tried recollecting the transport from our Dev system to QA and it still gives the above errors.
    Any help?
    Thanks.

  • Error in interface mapping  when calling a xsl file

    Hi,
    Using XSLT I am calling another XSL file  into my main xsl file.I have added both the zip files into  a single zip file and imported in my imported archive.But when i do the interface mapping testing i get an error 'Transformer configuration exception occurred when loading XSLT xslt1.xsl'.
    What should i do?

    Dear Sidhvin,
    First test your XSLT in the editor (for example STYLUS STUDIO). In Editor run your mapping and have a look whether you are getting the required result.
    if you are  getting the required result of XSLT then use it in the scenario and after importing this activate it and then run the interface.
    hope this time you will not get any error
    Thanks
    Sandeep
    PS: if helpful Reward points

  • Prevent RCV Txn Processor from calling Payables Open Interface Import

    When we create ASBN and run Receiving Transaction Processor, it automatically inserts invoice data into AP_INVOICES_INTERFACE and AP_INVOICE_LINES_INTERFACE then triggers Payables Open Interface Import.
    We have tried to set PO: Create ASBN invoices using AP interface tables to No but this creates the invoice via API instead of via the interface. We would still like to use the interface but we need to call Payables Open Interface Import manually.
    How can we do this?
    Thanks in advance.
    Anna Fajardo

    That is correct, the documentation does specify not to populate a value into this field, however there is no harm in doing so.
    Alternatively, if you are not using the Payables Open Interface Workflow, then you could either populate a value of "Y" or "S" into the WORKFLOW_FLAG column, to prevent the invoices from getting imported.
    Or you could just supply a dummy value for the org_id column in the interface table
    Edited by: pillair on Aug 1, 2012 1:10 AM

  • Error when calling a package function

    any insight why my object is erroring out when calling a function. the error is
    oracle.apps.fnd.framework.OAException: java.sql.SQLException: ORA-06502: PL/SQL: numeric or value error: character to number conversion error
    ORA-06512: at line 1
    it errors out when the cs.execute() is . is it the placement ? thanks for the help....
    then pkg func is xxx.get_log
    Get_Log(rmode IN NUMBER , doc_type IN VARCHAR2 DEFAULT 'TEL', doc_id IN VARCHAR2 DEFAULT NULL,
    doc_num IN VARCHAR2 DEFAULT NULL -- , p_out out varchar2 --
    RETURN varchar2 IS....
    the co
    Serializable paramDocLocatorParamList [] = {paramRMODE, paramDOC_TYPE, paramDOC_ID, paramDOC_NUM, p_out };
    OAApplicationModule am = (OAApplicationModule)pageContext.getApplicationModule(webBean);
    OADBTransaction dbtrans;
    OAViewObject docLocator = (OAViewObject)am.findViewObject("DocLocatorVO1");
    rtxt0.setValue(pageContext, "here it is" + am.invokeMethod("getHTMLString", paramDocLocatorParamList));
    docLocator.executeQuery();
    // am.invokeMethod("getHTMLString", paramDocLocatorParamList);
    the impl
    public String getHTMLString ( String paramRMODE, String paramDOC_TYPE, String paramDOC_ID, String paramDOC_NUM, String p_out )
    System.out.println("Entering The AM Impl");
    CallableStatement st = null;
    OADBTransaction txn = (OADBTransaction)getDBTransaction();
    Connection conn = txn.getJdbcConnection();
    String sql = " BEGIN :5 := test_proc.get_log(:1, :2, :3, :4 ); END; ";
    CallableStatement cs = txn.createCallableStatement(sql,1);
    String ErrorExist = "";
    String getHTML = "";
    try
    cs.setString(1, paramRMODE);
    cs.setString(2, paramDOC_TYPE);
    cs.setString(3, paramDOC_ID);
    cs.setString(4, paramDOC_NUM);
    cs.setString(5,p_out); // --param   
    /* cs.registerOutParameter(1,Types.CHAR);
    cs.registerOutParameter(2,Types.CHAR);
    cs.registerOutParameter(3,Types.CHAR);
    cs.registerOutParameter(4,Types.CHAR);*/
    cs.registerOutParameter(5,Types.CHAR);
    cs.execute();
    getHTML = cs.getString(5 ) ;
    /* System.out.println("getHTML is " + getHTML );
    cs.close();
    // if ( "E".equals(ErrorExist))
    /// throw new OAException ("Payment Request Is Already Cancelled" );
    catch (SQLException sqle)
    try { cs.close(); }
    catch (Exception e) {}
    throw OAException.wrapperException(sqle);
    String doctype = paramDOC_TYPE;
    String docnum = paramDOC_NUM;
    String html ;
    System.out.println( "paramDOC_TYPE in IMPL is " + doctype) ;
    System.out.println( "paramDOC_Numb in IMPL is " + docnum) ;
    return getHTML;

    resolved.....
    public String getHTMLString (String p_out , String rmode, String doc_type, String doc_id, String doc_num )
    System.out.println("");
    System.out.println("Entering The AM Impl");
    // System.out.println("Passing getDocAbbrForHTML in IMPL -------> " +getDocAbbrForHTML     );
    // System.out.println("Passing paramDOC_NUM in IMPL -------> " + paramDOC_NUM );
    System.out.println("Passing getDocAbbrForHTML in IMPL -------> " +doc_type     );
    System.out.println("Passing paramDOC_NUM in IMPL -------> " + doc_num );
    CallableStatement st = null;
    OADBTransaction txn = (OADBTransaction)getDBTransaction();
    Connection conn = txn.getJdbcConnection();
    String sql = " BEGIN :1 := test_proc.get_log(:2, :3, :43, :5 ); END; ";
    CallableStatement cs = txn.createCallableStatement(sql,1);
    String ErrorExist = "";
    String getHTML = "";
    try
    cs.setString(2, rmode);
    cs.setString(3, doc_type);
    cs.setString(4, doc_id);
    cs.setString(5, doc_num);
    cs.registerOutParameter(1,Types.VARCHAR);
    cs.execute();
    getHTML = cs.getString(1 ) ;

  • Unable to do goods movement when calling BAPI_PRODORDCONF_CREATE_TT

    Hi,
    I have used BAPI_PRODORDCONF_CREATE_TT as RFC.
    When I run the bapi with that of input payload seperately production order confirmation and goodsmovement  are done successfully.
    But when I run the interface then only production order confirmation is successfull while goodsmovement is unsuccessfull.
    Any help on this please?
    Thanks in advance,
    Rohan.

    Hello Rohan,
    I you are using BPM to call two RFC's seperately for prd.conf and goods movement, then, try to incorporate a Wait step in the BPM!
    Regards,
    Jilan

  • "Missing port information" when calling web service

    I have implemented a web service that works fine as long as I use primitive types as arguments and return types, but when I add a method that takes a user-defined class as an argument, I receive the following error when calling any of the methods in the web service:
    [java] java.rmi.RemoteException: received fault: "Missing port information"
    (code: "Server" namespace: "http://schemas.xmlsoap.org/soap/envelope/"); nested
    exception is:
    [java] received fault: "Missing port information" (code: "Server" names
    pace: "http://schemas.xmlsoap.org/soap/envelope/")
    [java] java.rmi.RemoteException: received fault: "Missing port information"
    (code: "Server" namespace: "http://schemas.xmlsoap.org/soap/envelope/"); nested
    exception is:
    [java] received fault: "Missing port information" (code: "Server" names
    pace: "http://schemas.xmlsoap.org/soap/envelope/")
    [java] received fault: "Missing port information" (code: "Server" namespace
    : "http://schemas.xmlsoap.org/soap/envelope/")
    [java] at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingS
    ender.java:321)
    [java] at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.
    java:211)
    [java] at qsws.MyItf_Stub.HelloWorld(Unknown Source)
    [java] at qsws.WSClient.main(Unknown Source)
    The class I pass as an argument implements Serializable and a user-defined interface and it has two public member variables (int and String).
    Anyone know why I receive this error?
    /Magnus

    I am also seeing this same error. I have rebuilt and redeployed the service several times, but am still stuck getting this error. Strangely enough, the Tomcat server where the service is hosted is not reporting this type of error. Instead, it is recording an error 500 (Server Internal Error) each time I try to execute one of my services. I trimmed out the meat of the service and configured it so that it would echo the input parameters to the output (they are actually in/out params) but even this reduced configuration gives an error 500. I am inclined to suspect my deployment, but I have checked it several times against the examples.
    Anyone else see the error 500 reported as missing port information?

  • I am trying to generate purchase order and i create a BAPI also which is active. But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)".

    i am trying to generate purchase order and i create a BAPI also which is active.
    But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)".

    Hi,
    Yeah i tried my Z_BAPI in R3 and then giving some ERROR.
    This is my CODE-
    FUNCTION ZBAPIPOTV2.
    *"*"Local Interface:
    *"  IMPORTING
    *"     VALUE(POHD) TYPE  ZPOHD OPTIONAL
    *"     VALUE(POITEM) TYPE  ZPOITEM OPTIONAL
    *"  TABLES
    *"      RETURN STRUCTURE  BAPIRET1 OPTIONAL
    data: ls_pohd type bapimepoheader,
             ls_pohdx TYPE bapimepoheaderx,
             lt_poit TYPE TABLE OF bapimepoitem,
             lt_poitx TYPE TABLE OF bapimepoitemx,
             ls_poit TYPE bapimepoitem,
             ls_poitx TYPE bapimepoitemx.
       MOVE-CORRESPONDING pohd to ls_pohd.
       MOVE-CORRESPONDING poitem to ls_poit.
       ls_pohdx-comp_code = 'x'.
       ls_pohdx-doc_type = 'x'.
       ls_pohdx-vendor = 'x'.
       ls_pohdx-purch_org = 'x'.
       ls_pohdx-pur_group = 'x'.
       ls_poit-po_item = '00010'.
       APPEND ls_poit to lt_poit.
       ls_poitx-po_item = '00010'.
       ls_poitx-po_itemx = 'x'.
       ls_poitx-material = 'x'.
       ls_poitx-plant = 'x'.
       ls_poitx-quantity = 'x'.
       APPEND ls_poitx to lt_poitx.
    CALL FUNCTION 'BAPI_PO_CREATE1'
       EXPORTING
         POHEADER                     = ls_pohd
        POHEADERX                    =  ls_pohdx
    *   POADDRVENDOR                 =
    *   TESTRUN                      =
    *   MEMORY_UNCOMPLETE            =
    *   MEMORY_COMPLETE              =
    *   POEXPIMPHEADER               =
    *   POEXPIMPHEADERX              =
    *   VERSIONS                     =
    *   NO_MESSAGING                 =
    *   NO_MESSAGE_REQ               =
    *   NO_AUTHORITY                 =
    *   NO_PRICE_FROM_PO             =
    *   PARK_COMPLETE                =
    *   PARK_UNCOMPLETE              =
    * IMPORTING
    *   EXPPURCHASEORDER             =
    *   EXPHEADER                    =
    *   EXPPOEXPIMPHEADER            =
      TABLES
        RETURN                       = return
        POITEM                       = lt_poit
        POITEMX                      = lt_poitx
    *   POADDRDELIVERY               =
    *   POSCHEDULE                   =
    *   POSCHEDULEX                  =
    *   POACCOUNT                    =
    *   POACCOUNTPROFITSEGMENT       =
    *   POACCOUNTX                   =
    *   POCONDHEADER                 =
    *   POCONDHEADERX                =
    *   POCOND                       =
    *   POCONDX                      =
    *   POLIMITS                     =
    *   POCONTRACTLIMITS             =
    *   POSERVICES                   =
    *   POSRVACCESSVALUES            =
    *   POSERVICESTEXT               =
    *   EXTENSIONIN                  =
    *   EXTENSIONOUT                 =
    *   POEXPIMPITEM                 =
    *   POEXPIMPITEMX                =
    *   POTEXTHEADER                 =
    *   POTEXTITEM                   =
    *   ALLVERSIONS                  =
    *   POPARTNER                    =
    *   POCOMPONENTS                 =
    *   POCOMPONENTSX                =
    *   POSHIPPING                   =
    *   POSHIPPINGX                  =
    *   POSHIPPINGEXP                =
    *   SERIALNUMBER                 =
    *   SERIALNUMBERX                =
    *   INVPLANHEADER                =
    *   INVPLANHEADERX               =
    *   INVPLANITEM                  =
    *   INVPLANITEMX                 =
    ENDFUNCTION.
    i am trying to generate purchase order and i create a BAPI also which is active. But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)". 

  • JTextField update problem when called from PropertyChangeEvent

    Hi,
    I'm trying to create forms that can be dynamically loaded with Class.forname(formName).
    Those forms should always inherit some methods that make it easy to pass data to
    them and receive data from them. The idea is that the data comes from a table which
    sends a hashmap (String column/JTextField-name + String Value pairs) with firePropertyChanged
    as soon as a new row is seleceted. The JTextFields in the form are marked with setName("FieldName") that has to correspond to the name of the columns of the table.
    My problem is that I can't update the fields in my form when I'm calling getRow(HashMap)
    from within propertyChangeEvent but that's necessary to keep the forms flexible.
    JTextFieldName.setText(newText) just won't work. But it works when I call getRow(HashMap)
    from the constructor. SwingWorker and threads to update the form didn't help.
    I don't need to call pack() / update() / repaint() on the JFrame, do I ??
    update() / validate() / repaint() etc. didn't work on the JTextField themselves.
    Below is the code for one of the test-forms (just a JPanel that is inserted in a frame)
    with all of it's methods. Does anybody have a solution to this problem ??
    Thanks for taking time for that !!
    Benjamin
    * testTable.java
    * Created on 15. April 2004, 16:12
    package viewcontrol.GUI;
    * @author gerbarmb
    import javax.swing.*;
    import java.awt.*;
    import java.beans.*;
    import java.util.*;
    public class testTable extends javax.swing.JPanel
              implements
                   java.awt.event.KeyListener,
                   java.beans.PropertyChangeListener {
          * public static void main(String[] argv) { testTable tt = new testTable();
          * JFrame jf = new JFrame(); jf.setContentPane(tt); jf.setVisible(true); }
         /** Creates new customizer testTable */
         public testTable() {
              initComponents();
              HashMap hm = new HashMap();
               * Only for debugging, to see that the method getRow() works when
               * called from the constructor.
               hm.put("ttext", "TEst");
               this.getRow(hm);
          * This method is called from within the constructor to initialize the form.
          * WARNING: Do NOT modify this code. The content of this method is always
          * regenerated by the FormEditor.
         private void initComponents() {//GEN-BEGIN:initComponents
              java.awt.GridBagConstraints gridBagConstraints;
              jLabel1 = new javax.swing.JLabel();
              textIn = new javax.swing.JTextField();
              jLabel2 = new javax.swing.JLabel();
              intIn = new javax.swing.JTextField();
              jLabel3 = new javax.swing.JLabel();
              numIn = new javax.swing.JTextField();
              jLabel4 = new javax.swing.JLabel();
              dateIn = new javax.swing.JTextField();
              jLabel5 = new javax.swing.JLabel();
              dateTimeIn = new javax.swing.JTextField();
              jLabel6 = new javax.swing.JLabel();
              jCheckBox1 = new javax.swing.JCheckBox();
              keepValues = new javax.swing.JCheckBox();
              jButton1 = new javax.swing.JButton();
              setLayout(new java.awt.GridBagLayout());
              jLabel1.setText("Text");
              add(jLabel1, new java.awt.GridBagConstraints());
              textIn.setName("ttext");
              textIn.setPreferredSize(new java.awt.Dimension(100, 21));
              textIn.addActionListener(new java.awt.event.ActionListener() {
                   public void actionPerformed(java.awt.event.ActionEvent evt) {
                        textInActionPerformed(evt);
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridwidth = 2;
              add(textIn, gridBagConstraints);
              jLabel2.setText("Integer");
              add(jLabel2, new java.awt.GridBagConstraints());
              intIn.setName("tint");
              intIn.setPreferredSize(new java.awt.Dimension(50, 21));
              add(intIn, new java.awt.GridBagConstraints());
              jLabel3.setText("Number");
              add(jLabel3, new java.awt.GridBagConstraints());
              numIn.setName("tnum");
              numIn.setPreferredSize(new java.awt.Dimension(50, 21));
              add(numIn, new java.awt.GridBagConstraints());
              jLabel4.setText("Date");
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridx = 0;
              gridBagConstraints.gridy = 1;
              add(jLabel4, gridBagConstraints);
              dateIn.setName("tdate");
              dateIn.setPreferredSize(new java.awt.Dimension(50, 21));
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridx = 1;
              gridBagConstraints.gridy = 1;
              add(dateIn, gridBagConstraints);
              jLabel5.setText("DateTime");
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridx = 2;
              gridBagConstraints.gridy = 1;
              add(jLabel5, gridBagConstraints);
              dateTimeIn.setName("tidate");
              dateTimeIn.setPreferredSize(new java.awt.Dimension(80, 21));
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridy = 1;
              add(dateTimeIn, gridBagConstraints);
              jLabel6.setText("Bit");
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridy = 1;
              add(jLabel6, gridBagConstraints);
              jCheckBox1.setName("tbit");
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridy = 1;
              add(jCheckBox1, gridBagConstraints);
              keepValues.setText("keep values");
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridx = 7;
              gridBagConstraints.gridy = 3;
              add(keepValues, gridBagConstraints);
              jButton1.setText("Send");
              jButton1.addActionListener(new java.awt.event.ActionListener() {
                   public void actionPerformed(java.awt.event.ActionEvent evt) {
                        jButton1ActionPerformed(evt);
              gridBagConstraints = new java.awt.GridBagConstraints();
              gridBagConstraints.gridx = 7;
              gridBagConstraints.gridy = 2;
              add(jButton1, gridBagConstraints);
         }//GEN-END:initComponents
         private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
              sendRow();
         }//GEN-LAST:event_jButton1ActionPerformed
         private boolean sendRow() {
              java.util.HashMap hm = new java.util.HashMap();
              Component[] cs = this.getComponents();
              for (int i = 0; i < cs.length; i++) {
                   if (((Component) cs).getName() != null) {
                        if (cs[i] instanceof JCheckBox) {
                             String value = ((JCheckBox) cs[i]).isSelected() ? "1" : "0";
                             hm.put(cs[i].getName(), value);
                        } else if (cs[i] instanceof JCheckBox) {
                             hm.put(cs[i].getName(), ((JTextField) cs[i]).getText());
              } // end for
              firePropertyChange("rowChanged", null, hm);
              return true;
         private void getRow(java.util.HashMap hm) {
              //if (! this.keepValues.isSelected()) {
              Component[] cs = this.getComponents();
              for (int i = 0; i < cs.length; i++) {
                   if (cs[i].getName() != null && hm.containsKey(cs[i].getName())) {
                        Component component = cs[i];
                        String componentName = cs[i].getName();
                        String componentValue = (String) hm.get(component.getName());
                        if (cs[i] instanceof JTextField) {
                             // output for debugging
                             System.out.println("Setting " + cs[i].getName() + " = "
                                       + componentValue);
                             ((JTextField) component).setText(componentValue);
                        } else if (cs[i] instanceof JCheckBox) {
                             // output for debugging
                             System.out.println("JCheckBox found");
                             JCheckBox cb = (JCheckBox) component;
                             boolean selected = (componentValue == null ? false : (componentValue.equals("1")
                                       ? true
                                       : false));
                             ((JCheckBox) component).setSelected(selected);
              } // end for
              /* Uncomment this code snippet to retrieve the text that has been set
              for the components (that means JTextFields)
              This is just for debugging !
              Component[] cs = this.getComponents(); for (int i = 0; i < cs.length;
              i++) { if (cs[i].getName() != null) { if (cs[i] instanceof
              JTextField) { System.out.println("Value of " +cs[i].getName() + " = " +
              ((JTextField) cs[i]).getText()); } } } // end for
         private void textInActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_textInActionPerformed
         }//GEN-LAST:event_textInActionPerformed
         public void keyPressed(java.awt.event.KeyEvent e) {
              if (e.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER) {
                   sendRow();
         public void keyReleased(java.awt.event.KeyEvent e) {
         public void keyTyped(java.awt.event.KeyEvent e) {
         public void propertyChange(java.beans.PropertyChangeEvent evt) {
              if (evt.getPropertyName().equals("newRow")) {
                   final PropertyChangeEvent finalEvt = evt;
                   Runnable makeChanges = new Runnable () {
                        public void run() {
                             getRow((java.util.HashMap) finalEvt.getNewValue());
         // Variables declaration - do not modify//GEN-BEGIN:variables
         private javax.swing.JTextField dateIn;
         private javax.swing.JTextField dateTimeIn;
         private javax.swing.JTextField intIn;
         private javax.swing.JButton jButton1;
         private javax.swing.JCheckBox jCheckBox1;
         private javax.swing.JLabel jLabel1;
         private javax.swing.JLabel jLabel2;
         private javax.swing.JLabel jLabel3;
         private javax.swing.JLabel jLabel4;
         private javax.swing.JLabel jLabel5;
         private javax.swing.JLabel jLabel6;
         private javax.swing.JCheckBox keepValues;
         private javax.swing.JTextField numIn;
         private javax.swing.JTextField textIn;
         // End of variables declaration//GEN-END:variables

    The problem of the change in the form not being comitted is that
    I forgot SwingUtilities.invokeLater(makeChanges); in the bottom
    part in public void propertyChange(java.beans.PropertyChangeEvent evt)
    after having created a new Runnable.
    Changes to the UI often have to be comitted by SwingUtitlities.invokeLater()
    though I don't know that much about Swing yet.
    Thanks to everybody who tried to solve that problem.
    Benjamin

  • Why are Java SASLFactories missing when called via PL/SQL but not from JRE?

    Hi
    This may be quite a technical point about SASL and JCE Providers etc OR it may just be a question about how Oracle PL/SQL interfaces with Java.
    The background is that I am trying to get a Java opensource library to run in Oracle DB - this is for specialized communication from Database to other servers.
    The library uses a SASL mechanism to authenticate with the server and this (appears) to rely on JCE Providers installed and provided by the JRE.
    I have some Java code working which uses the library - this runs OK in NetBeans/Windows environment and also using Linux/Oracle JRE directly such as:
      +# $ORACLE_HOME/jdk/bin/java -classpath "./MyMain.jar:./OtherSupport.jar" package.TestClient+
    However it refuses to work (throws a NullPointerException) when called from PL/SQL.
      +FUNCTION send_a_message (iHost IN VARCHAR2,+
         iPort IN NUMBER,
        +iLogin IN VARCHAR2,+
        +iPasswd IN VARCHAR2,+
         iRecipient IN VARCHAR2,
         iMessage IN VARCHAR2) RETURN NUMBER
       AS LANGUAGE JAVA
       NAME package.TestClient.sendATextMessage(java.lang.String, int, java.lang.String, java.lang.String, java.lang.String, java.lang.String) return int';
    In the Java code this is:
       public static int sendATextMessage(String iHost,
         int iPort,
         String iLogin,
         String iPasswd
         String iRecipient,
         String iMessage)
    I've tracked the issue down to there being no SaslClientFactories (via Sasl.getSaslClientFactories()) showing when called from PL/SQL whereas 3 are available when run from within Java directly. This via:
       Enumeration<SaslClientFactory> facts = Sasl.getSaslClientFactories();
       System.out.println("Found Sasl Factories [" & (facts != null)  & "] size[" & Collections.list(facts).size() & "]");
    So, is there some aspect of Java initialisation that I'm missing when calling from PL/SQL (which means SASL factories aren't getting loaded into JRE) or is there something different in SASL setup?
    Any pointers appreciated.
    Thanks
    Dave

    Ok, after a bit of reading and general hacking about I have got this working.
    What I hadn't initially understood/remembered is that for a Stored Procedure the JVM installed on file system with Oracle isn't actually used - java code is loaded into the database and hence a different set of base functions are available. The following is a good explanation of this http://docs.oracle.com/cd/B14117_01/java.101/b12021/appover.htm#BGBIBDAJ
    So "out of the box" the Oracle Database appears to come loaded with only two of the Sun security providers i.e. no com.sum.security.SASL
    >
    OBJECT_NAME             OBJECT_TYPE     STATUS   TIMESTAMP
    com/sun/security/auth/NTSid  JAVA CLASS    VALID   2013-02-14:14:08:57
    com/sun/security/jgss/GSSUtil    JAVA CLASS    VALID   2013-02-14:14:08:57
    >
    This is from:
    >
    SELECT
      object_name,
      object_type,
      status,
      timestamp
    FROM
      user_objects
    WHERE
      (object_name NOT LIKE 'SYS_%' AND
       object_name NOT LIKE 'CREATE$%' AND
       object_name NOT LIKE 'JAVA$%' AND
       object_name NOT LIKE 'LOADLOB%') AND
       object_type LIKE 'JAVA %' AND
       object_name LIKE 'com/sun/security%'
    ORDER BY
      object_type,
      object_name;
    >
    My solution (which may well be a work-around) is the following:
    1) Downloaded JDK Source and extracted "com.sun.security.sasl" java code to my project
    2) Added following code to my Stored Procedure ()
    >
    Enumeration<SaslClientFactory> saslFacts = Sasl.getSaslClientFactories();
    if (!saslFacts.hasMoreElements()) {
      System.out.println("Sasl Provider not pre-loaded");
      int added = Security.addProvider(new com.sun.security.sasl.Provider());
      if (added == -1) {
        System.out.println("Sasl Provider could not be loaded");
        System.exit(added);
      else {
        System.out.println("Sasl Provider added");
    >
    3) Built my JAR file with the sasl package embedded (note: could only find Java 6 code, so had to comment out some GSS lines - but wasn't intending to use these)
    4) Loaded JAR to oracle via "loadjava".
    5) Add permissions (only found this out after a couple of failed runs)
    >
    call dbms_java.grant_permission('XMPP', 'SYS:java.security.SecurityPermission', 'putProviderProperty.SunSASL', '' );
    call dbms_java.grant_permission('XMPP', 'SYS:java.security.SecurityPermission', 'insertProvider.SunSASL', '' );
    >
    6) Run gives the following:
    >
    Sasl Provider not pre-loaded
    Sasl Provider added
    ...etc...
    >
    It works!. I confess I'm not sure of the implications of this for multiple calls/performance and if it will need to be added for each stored procedure call - may post back.
    For completeness I should point out that after my load the Security providers look like this:
    >
    OBJECT_NAME             OBJECT_TYPE     STATUS   TIMESTAMP
    com/sun/security/auth/NTSid    JAVA CLASS    INVALID  2013-02-15:09:11:36
    com/sun/security/jgss/GSSUtil    JAVA CLASS    INVALID  2013-02-15:09:11:37
    com/sun/security/sasl/Provider    JAVA CLASS    VALID    2013-02-15:10:03:21
    >
    i.e. the original couple are "INVALID" !
    Dave
    Edited by: 946763 on Feb 26, 2013 2:35 AM

  • A problem about GP Background CO call caf remote interface

    Hi, Guys.
         My server is CE. 
         When I developed my background co for my gp process, I tried to call a local interface of a ejb which is from a caf project.
         After I finished it and tested it by CO Test, it worked fine.
         But when I tried to test it by starting a process, I got an error meassage.
         Below is error message:
    javax.ejb.EJBException: ASJ.ejb.005042 (Failed in component: demo.sap.com/ca_flowear) Exception raised from   invocation of private java.lang.Object com.sap.caf.rt.interceptors.LogInterceptor.aroundInvoke(javax.interceptor.InvocationContext) throws java.lang.Exception method on bean instance com.sap.demo.ca_flow.modeled.as.flow.appsrv.as_currenprocessor.AS_CurrenProcessorBeanImpl@7973ae6f for bean demo.sap.com/ca_flowearannotation|demo.sap.comca_flowejbmodule.jarannotation|com.sap.demo.ca_flow.modeled.as.flow.appsrv.as_currenprocessor.AS_CurrenProcessor in application demo.sap.com/ca_flow~ear.; nested exception is: java.lang.NullPointerException: while trying to invoke the method com.sap.engine.frame.core.thread.ThreadContext.getContextObject(int) of an object loaded from local variable 'tc"
    I have no idea how to solve it.
    I promise that it works fine when I test it by CO Test.
    Thanks a lot.

    Hi, all.
    My problem looks like that my background co can`t find com/sap/caf/eu/gp/co/api/IGPBackgroundCallableObject.
    I have checked this class which exists in  caf/eu/gp/api and I have added it to my ear project with every kind of dependency including build time, design time, deploy time, and runtime.
    Did I miss anything?
    I really have no idea what I can do now.

  • Webservice call to XI Interface through SOAP Adapter from a Web application

    I  am getting  the following error, when I try to call the XI Interface using soap adapter from a web application.
    ERROR  :
    SystemError:
              <context>XIAdapter</context>
              <code>ADAPTER.JAVA_EXCEPTION</code>
              <text><![CDATA[
    com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException
    at some time i am getting the following error.
    faultCode: HTTP
    faultSubcode:
    faultString: (500)Internal Server Error
    faultActor:
    faultNode:
    faultDetail:
         {}:return code:  500
    &lt;SAP:Error&gt;&lt;SAP:Category&gt;XIServer&lt;/SAP:Category&gt;&lt;SAP:Code&gt;RCVR_DETERMINATION.NO_RECEIVER_CASE_BE&lt;/SAP:Code&gt;&lt;SAP:Stack&gt;No receiver could be determined&lt;/SAP:Stack&gt;&lt;/SAP:Error&gt;
         HttpErrorCode:500
    (500)Internal Server Error
    can any of  one help to resolve this.
    Thanks  in advance

    Ganie
    You are getting the exception at very first point of Pipeline Service i.e Receiver Determination, do compare the namespace, Sender Interface Name & Sender Service name with the payload you are sending from web-application, they must be exactly same.
    The best way to get the test payload is suggested in above reply.

  • Entries removed from cache when calling get()

    Hi. Have a problem where entries seems to be removed from the cache when calling get(). The problem occurs after the cluster has been idle (no calls to get or put) for a while. When I then call get for an entry that I know should be in the cache i can see, via an listener, that an entry is removed from the cache and the get call returns null.
    My cache is wrapped in a class that does not expose any remove methods so I know that there is no calls to remove. Below is a log showing the debug print from when the removal is done and a thread dump on the thread that does the remove.
    Attached you will find both a cache configuration and the code that produces the log below. Note that there is some code missing from the example but the missing code is only interfaces or datawrappers.
    Hopefully someone can help me solve my problem.
    Best Regards
    Marcus
    12539019 [] INFO ClientConnectionPortCacheImpl$DebugCacheListener - Entry removed - [1, null (null)]
    java.lang.Exception: Stack trace
    at java.lang.Thread.dumpStack(Unknown Source)
    at com.ongame.server.domain.casino.cluster.impl.ClientConnectionPortCacheImpl$DebugCacheListener.entryRemoved(ClientConnectionPortCacheImpl.java:121)
    at com.ongame.server.framework.cluster.cache.impl.coherence.CoherenceCacheFactory$CoherenceCacheDelegator$CacheEventAdapter.entryDeleted(CoherenceCacheFactory.java:212)
    at com.tangosol.util.MapEvent.dispatch(MapEvent.java:199)
    at com.tangosol.util.MapEvent.dispatch(MapEvent.java:164)
    at com.tangosol.util.MapListenerSupport.fireEvent(MapListenerSupport.java:550)
    at com.tangosol.coherence.component.util.SafeNamedCache.translateMapEvent(SafeNamedCache.CDB:7)
    at com.tangosol.coherence.component.util.SafeNamedCache.entryDeleted(SafeNamedCache.CDB:1)
    at com.tangosol.util.MapEvent.dispatch(MapEvent.java:199)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.DistributedCache$ViewMap$ProxyListener.dispatch(DistributedCache.CDB:22)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.DistributedCache$ViewMap$ProxyListener.entryDeleted(DistributedCache.CDB:1)
    at com.tangosol.util.MapEvent.dispatch(MapEvent.java:199)
    at com.tangosol.coherence.component.util.CacheEvent.run(CacheEvent.CDB:18)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.Service$EventDispatcher.onNotify(Service.CDB:14)
    at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:34)
    at java.lang.Thread.run(Unknown Source)<br><br> <b> Attachment: </b><br>coherence-java-example.txt <br> (*To use this attachment you will need to rename 455.bin to coherence-java-example.txt after the download is complete.)<br><br> <b> Attachment: </b><br>coherence-cfg-example.txt <br> (*To use this attachment you will need to rename 454.bin to coherence-cfg-example.txt after the download is complete.)

    Hi Marcus,
    Your configs clearly show that you cannot have eviction.
    From what you have described, you are almost certainly seeing eviction.
    I conclude that the config that is being used is not the config that you intend to get used. To verify this, you can look at the logs to see what config is getting used. I believe you will see what configuration is being used when that config file is loaded. For example, in version 3.2:
    2006-11-22 19:32:13.068 Tangosol Coherence DGE 3.2/367 <Info> (thread=main,
    member=1): Loaded cache configuration from resource
    "jar:file:/C:/java/opt/coherence320b367/tangosol/lib/coherence.jar!/coherence-cache-config.xml"
    Having seen this same problem before (encountering it myself and seeing others encounter it), we added that logging to be clear which config file was being used. If you use the command line tool, it will additionally show you the cache config for the cache that is being accessed when you type the "cache xxx" command (xxx being the name of the cache).
    Peace,
    Cameron.

Maybe you are looking for

  • Duplicate a Text Field on Every Page of a Document?

    Today I wrote my first vb.net/adobe app.  I managed to open the pdf doc in adobe and create a named text field.  I managed to insert a java script that gets the current date when the document is open and updates the text field.  I would like to dupli

  • Reconnecting missing tracks all at once?

    When in the library I often click on a track only to find that the track is unconnected.  If I then use Windows Explorer I always end up finding the missing track which I presumably misfiled.  I then cut & paste the track into the folder 'Automatical

  • Mac pro 13 inch running slow.

    y MAC PRO 13 INCH HAS 150 GB OF WHICH I HAVE 55 GB LEFT IN THE HARD DRIVE IT IS RUNNING VERY SLOW.  I HAVE A LOT OF MUSIC AND PHOTOS I USE ITUNES MATCH.  Intel Core 2 Duo 2 GB 1067 MHz NVIDIA GeForce 9400M 256 MB  Mac OS X Lion 10.7.4.   Should i mov

  • Asset report-ar02

    Hiii experts, when the user runs ar02... they  find that some document type example AF documents  are not reflected in the report... i found that the report is based on transaction type and there are 2 types of transaction type in it... 1) asset tran

  • IPhone device unable to start (code 10) Windows XP

    I just reformatted my hard drive and installed a clean copy of the most recent iTunes. I also updated XP through Windows update and have my USB 2.0 drivers installed. Everything else is running fine, including my other USB devices. My phone is recogn