I suggest you email the postgresql-jdbc list and ask someone to implement
it. The list is very active and people are usually quite responsive.

-mike

> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Julian
> Richardson
> Sent: Saturday, March 17, 2001 3:56 AM
> To: Orion-Interest
> Cc: '[EMAIL PROTECTED]'
> Subject: RE: Orion with PostgreSQL (oid)
>
>
> Hi Armin,
>
> A bit of further digging (sorry to other listers, last couple of emails on
> this were sent to Armin only) into the source for the Postgres
> JDBC drivers
> for version 7.0 reveals the following little snippet:
>
>       public void setBinaryStream(int parameterIndex, InputStream x, int
> length) throws SQLException
>       {
>               throw new PSQLException("postgresql.prep.is");
>       }
>
> - I guess somebody hasn't gotten around to implemening it yet :-(   (that
> "postgresql.prep.is" error translates to the "InputStream as parameter not
> supported" error you mentioned)
>
> If you really need this to work with postgres I suppose that leaves a few
> options:
>
> 1) wrap the Postgres drivers and use the Large Objects API behind
> the scenes
> 2) fix the Postgres 7.0 drivers! (I think it's open-source right, and
> anybody can dive in and sort stuff out?)
> 3) Use BMP in Orion and use the (non-portable) Postgres Large Objects API
> there
> 4) downgrade to Postgres 6.5 where I assume this worked (there
> are people on
> the list using Postgres via JDBC, right?)
> 5) Wait for this to be fixed (I assume it's fairly high on the
> Postgres bug
> list)
>
> option 6 is to give up and use another database (which I personally don't
> like the sound of having used up a day or so getting postgres
> installed and
> configured! Depends how long it'll take to work around the
> problems though)
>
>
> cheers
>
> Jules
>
>
> > ----------
> > From:       Armin Michel[SMTP:[EMAIL PROTECTED]]
> > Sent:       16 March 2001 09:49
> > To:         Orion-Interest
> > Subject:    Orion with PostgreSQL (oid)
> >
> > I got some problems with PostgreSQL and Orion when using blobs (oids in
> > the table).
> >
> >
> > I checked:
> > http://www.postgresql.org/users-lounge/docs/7.0/programmer/jdbc6519.htm
> >
> > In the above page you can read the following example:
> >
> > <snip>
> >
> >  To insert an image, you would use:
> >
> >  File file = new File("myimage.gif");
> >  FileInputStream fis = new FileInputStream(file);
> >  PreparedStatement ps = conn.prepareStatement("insert into images values
> >  (?,?)");
> >  ps.setString(1,file.getName());
> >  ps.setBinaryStream(2,fis,file.length());
> >  ps.executeUpdate();
> >  ps.close();
> >  fis.close();"
> >
> >  </snip>
> >
> >  This does a PreparedStatement.setBinaryStream(int,InputStream,int); -
> >  Exactly what Orion did!
> >
> >  Here is the interesting part of the Exception.printStackTrace(); :
> >
> >  <snip>
> >
> >  > Nested exception is:
> >  > InputStream as parameter not supported
> >  > at java.lang.Throwable.(Throwable.java:84)
> >  > at java.lang.Exception.(Exception.java:35)
> >  > at java.sql.SQLException.(SQLException.java:100)
> >  > at
> >  > org.postgresql.util.PSQLException.(PSQLException.java:22)
> >  > at
> >  >
> > org.postgresql.jdbc2.PreparedStatement.setBinaryStream(PreparedStatement
> >  > .java:417)
> >  > at com.evermind.sql.ao.setBinaryStream(JAX)
> >
> >  </snip>
> >
> >  So, this would lead to the conclusion, that Orion just tries to use a
> >  standard JDBC-API. Maybe Orion uses a special subclass of InputStream
> > and
> >  the JDBC-Driver doesn't correctly account for this situation. In the
> > JDBC
> >  API it reads:
> >
> >  <snip>
> >  Note: This stream object can either be a standard Java stream object or
> >  your own subclass that implements the standard interface.
> >  </snip>
> >
> >  This would blame the JDBC-driver then?
> >
> >  Yours
> >
> >  Armin
> >
>


Reply via email to