RE: problem with serialization - Mailing list pgsql-jdbc

From Dave Cramer
Subject RE: problem with serialization
Date
Msg-id 021c01c1163d$0474e3b0$8201a8c0@inspiron
Whole thread Raw
In response to Re: problem with serialization  (candreol <Christophe.Andreoli@consol.de>)
List pgsql-jdbc
Chris,
 
 
This will work, the fields have to be public to for introspection
 
 /*
 *  Java sample program
 */
 
 import java.io.*;
 import java.sql.*;
 import org.postgresql.util.*;
 
 public class lili implements  Serializable
 {
 
  public String myString;
  public int myNumber;
 
  public lili()   throws ClassNotFoundException, FileNotFoundException, IOException, SQLException
  {
 
    myString="theString";
    myNumber=4;
  }
  public boolean equals(lili l)
  {
    return (l.myString.equals(this.myString) && myNumber == this.myNumber);
  }
  private void testmethod(){};
  public void testmethod2x(){};
 
  public static void main(String args[])
  {
    org.postgresql.Connection conn=null;
    try {
      lili mylili = new lili();
      lili test = null;
      Class.forName("org.postgresql.Driver");         // load database interface
                                                                                                    // connect to the database
      conn = (org.postgresql.Connection)DriverManager.getConnection("jdbc:postgresql://alpha.ebox.com/davec", "davec",   "");     // works
      // test of serialisation
      org.postgresql.util.Serialize.create(conn, mylili);     // makes problems
      org.postgresql.util.Serialize s = new Serialize(conn,mylili);
      int oid  = s.store(mylili);
      test = (lili)s.fetch(oid);
      if (mylili.equals(test)){
        System.out.println("Success");
      }else{
        System.out.println("Failure");
      }
    } catch(Exception exc){
      System.err.println("Exception caught.\n" + exc);
      exc.printStackTrace();
    }finally{
      try {
        if (conn != null) conn.close();
      } catch (Exception ex){
      ;
      }
    }
  }
 
}
-----Original Message-----
From: pgsql-jdbc-owner@postgresql.org [mailto:pgsql-jdbc-owner@postgresql.org] On Behalf Of candreol
Sent: July 26, 2001 4:02 AM
To: dave@fastcrypt.com; pgsql-jdbc@postgresql.org
Subject: Re: [JDBC] problem with serialization

 

Hi Dave,
thank you!
It would be nice if you fix it. I had some problems with compiling , I would be very happy if could send me a new jar.

  chris
 
 

Dave Cramer wrote:

 That is definately a bug. Chris; do you have a way to compile the source? I can fix it and provide you with a driver to test if you need ?Dave
-----Original Message-----
From: Nandu [mailto:cr_nandu@yahoo.com]
Sent: July 26, 2001 4:32 AM
To: candreol; Dave@micro-automation.net; pgsql-jdbc@postgresql.org
Subject: RE: [JDBC] problem with serialization
 
I think i know the problem, as the Serialise class of  postgres there is a line of code which will never work.It is like:if(!rs.next()) {        // they print something here like        System.out.println(" Driver Manager: " + rs.getString()) //which will always be null because getString() will return null when rs.next() == false}I feel that it is a bug with the Serialise implementation in postgresComment that line out and u won't get Null pointer problem.Cheers,Nandu.
-----Original Message: pgsql-jdbc-owner@postgresql.org [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of candreol
Sent: 26 July 2001 07:35
To: Dave@micro-automation.net; pgsql-jdbc@postgresql.org
Subject: Re: [JDBC] problem with serialization
 
Hi Dave,

The code is very small. It is just a test :

 /*
         *  Java sample program
         */

        import java.io.*;
        import java.sql.*;
        import org.postgresql.util.Serialize;

        public class lili implements  Serializable
        {

       String myString;
       int myNumber;

            public lili()   throws ClassNotFoundException, FileNotFoundException, IOException, SQLException
            {

        myString="theString";
       myNumber=4;
            }

          private void testmethod(){};
           public void testmethod2x(){};

            public static void main(String args[])
            {
                try {
                    lili mylili = new lili();
                  Class.forName("org.postgresql.Driver");         // load database interface
                                                                                                    // connect to the database
     org.postgresql.Connection conn = (org.postgresql.Connection)DriverManager.getConnection("jdbc:postgresql://localhost:5432/onlinechess", "postgres",   "mypassword");     // works
      // test of serialisation
      org.postgresql.util.Serialize.create(conn, mylili);     // makes problems
 

                } catch(Exception exc)
                {
                    System.err.println("Exception caught.\n" + exc);
                    exc.printStackTrace();
                }
            }
        }
 
 
 
 
 
 
 

Dave Cramer wrote:

Chris,

Can you send us your code. Or a snippet?

Dave
 


 
 

Hi! I am new here.

I did a small test to try object serialization with the
org.postgresql.util.Serialize class.

I get the following exception  when I try to use the at
org.postgresql.util.Serialize.create Method. :

java.lang.NullPointerException
at org.postgresql.jdbc2.ResultSet.getString(ResultSet.java:148)
  at org.postgresql.util.Serialize.create(Serialize.java:241)
at org.postgresql.util.Serialize.create(Serialize.java:220)

I looked at  create in Serialization.java and saw that
the exception occurs at getString although I have no table corresponding
to the class I want to serialize.
    if(!rs.next()){
       //   String lolo=rs.getString(1);}
     }

Although the resultset is empty (because the table is absent) , why
getString  has been run ?

Can you help me  ?

   Chris

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://www.postgresql.org/search.mpl

pgsql-jdbc by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: [SQL] Re: When PostgreSQL compliant JDBC 2.0?
Next
From: Daniel Fisher
Date:
Subject: Large Objects