On Tue, Sep 29, 2009 at 4:44 PM, Naftoli Gugenheim <naftoli...@gmail.com>wrote:

>
> Another option: Java has a way to dynamically implement an interface. I
> forgot what the classes are called. You supply a delegate and you can
> pattern match on which method is being invoked. In Java 5 the nonexistent
> method will simply never be invoked, but it won't break code.
>

Dynamic proxy?


>
> -------------------------------------
> Viktor Klang<viktor.kl...@gmail.com> wrote:
>
> On Tue, Sep 29, 2009 at 3:47 PM, Derek Chen-Becker <dchenbec...@gmail.com
> >wrote:
>
> > Can you elaborate on what you mean? I was actually going to look at how
> > log4jdbc does it and see if I could replicate it.
> >
>
> I haven't really tried this, but if you do:
>
> if you implement methods with the correct signatures in the LoggedStatement
> and LoggedPreparedStatement, then wrap the invocations to the wrapped
> instances in a try->catch, and if there's an NoSuchMethodException, return
> some default value?
>
>
>
> >
> > Derek
> >
> > On Tue, Sep 29, 2009 at 5:22 AM, Viktor Klang <viktor.kl...@gmail.com
> >wrote:
> >
> >> Is it possible to have a  bridge trait for the Statement interface?
> >>
> >>
> >> On Tue, Sep 29, 2009 at 12:16 AM, Derek Chen-Becker <
> >> dchenbec...@gmail.com> wrote:
> >>
> >>> No. I hadn't foreseen this issue, but I understand the importance of
> have
> >>> Java 5 support. I'm fine with writing and maintaining multiple versions
> of
> >>> the impls for the various versions, but I wonder if there's any clean
> way to
> >>> manage this with Maven.
> >>>
> >>> Derek
> >>>
> >>>
> >>> On Mon, Sep 28, 2009 at 4:00 PM, David Pollak <
> >>> feeder.of.the.be...@gmail.com> wrote:
> >>>
> >>>> Crud.  This just isn't going to be easy, is it?
> >>>>
> >>>>
> >>>> On Mon, Sep 28, 2009 at 2:04 PM, Derek Chen-Becker <
> >>>> dchenbec...@gmail.com> wrote:
> >>>>
> >>>>> Another issue, which may be more problematic, is that in my case I'm
> >>>>> compiling against the java.sql.Statement interface. If I remove the
> >>>>> troublesome methods so that it compiles for 1.5, it no longer
> compiles for
> >>>>> 1.6 because of the missing methods:
> >>>>>
> >>>>> [WARNING]
> >>>>>
> /home/software/liftweb/lift-mapper/src/main/scala/net/liftweb/mapper/LoggingStatementWrappers.scala:70:
> >>>>> error: class LoggedStatement needs to be abstract, since method
> isPoolable
> >>>>> in trait Statement of type ()Boolean is not defined
> >>>>> [WARNING] class LoggedStatement(underlying : Statement) extends
> >>>>> Statement with DBLog {
> >>>>> [WARNING]       ^
> >>>>> [WARNING]
> >>>>>
> /home/software/liftweb/lift-mapper/src/main/scala/net/liftweb/mapper/LoggingStatementWrappers.scala:267:
> >>>>> error: class LoggedPreparedStatement needs to be abstract, since
> method
> >>>>> setNClob in trait PreparedStatement of type (Int,java.io.Reader)Unit
> is not
> >>>>> defined
> >>>>> [WARNING] class LoggedPreparedStatement (stmt : String, underlying :
> >>>>> PreparedStatement) extends LoggedStatement(underlying) with
> >>>>> PreparedStatement {
> >>>>> [WARNING]       ^
> >>>>>
> >>>>>
> >>>>> Derek
> >>>>>
> >>>>>
> >>>>> On Mon, Sep 28, 2009 at 2:29 PM, David Pollak <
> >>>>> feeder.of.the.be...@gmail.com> wrote:
> >>>>>
> >>>>>>
> >>>>>>
> >>>>>> On Mon, Sep 28, 2009 at 1:19 PM, Derek Chen-Becker <
> >>>>>> dchenbec...@gmail.com> wrote:
> >>>>>>
> >>>>>>> The issue (and I may be overthinking this) is that we need 1.5
> class
> >>>>>>> libraries to compile against if we want to be able to verify that
> the code
> >>>>>>> compiles under 1.5. If I, say, delete my JDK 5 install and decide
> to
> >>>>>>> reinstall it down the road, it's not going to be available without
> a
> >>>>>>> purchased license.
> >>>>>>>
> >>>>>>
> >>>>>> I can stash away a bunch of different copies of the JDK and give
> them
> >>>>>> to you when you need them.
> >>>>>>
> >>>>>> A 32 bit Linux JDK 1.5 should be enough to at least do smoke test
> >>>>>> builds with.
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> Derek
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> On Mon, Sep 28, 2009 at 1:33 PM, David Pollak <
> >>>>>>> feeder.of.the.be...@gmail.com> wrote:
> >>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Mon, Sep 28, 2009 at 11:51 AM, Derek Chen-Becker <
> >>>>>>>> dchenbec...@gmail.com> wrote:
> >>>>>>>>
> >>>>>>>>> My main concern is that after October 30, Java 5 costs money (I'm
> >>>>>>>>> guessing not a trivial amount, either). I can get the JDK right
> now, but if
> >>>>>>>>> some bug in the Java libraries pops up that would prevent things
> from
> >>>>>>>>> working, I don't know how we'll work around that.
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> I don't see the condition under which that could happen.  When we
> >>>>>>>> compile against Java 1.5, we are simply defining the contract
> between our
> >>>>>>>> classes and the library classes.  None of the library "seeps" into
> our code
> >>>>>>>> (this is not true of Scala traits).  So, as long as the running
> library has
> >>>>>>>> the classes/methods that we are calling, we're fine.  Compiling
> against 1.5
> >>>>>>>> simply means that we have fewer calls that we can make.  If there
> is an
> >>>>>>>> issue in 1.5 that a user is experiencing, that is the user's
> issue, not
> >>>>>>>> ours.  If the code compiles (and runs tests) against 1.5 and does
> not
> >>>>>>>> generate the particular issue that the user is seeing under 1.6,
> then that
> >>>>>>>> use has to contact Sun, not us.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> Derek
> >>>>>>>>>
> >>>>>>>>> On Mon, Sep 28, 2009 at 12:29 PM, David Pollak <
> >>>>>>>>> feeder.of.the.be...@gmail.com> wrote:
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> On Mon, Sep 28, 2009 at 11:14 AM, Derek Chen-Becker <
> >>>>>>>>>> dchenbec...@gmail.com> wrote:
> >>>>>>>>>>
> >>>>>>>>>>> I was just about to work on issue #67 (build breaks on Java 5),
> >>>>>>>>>>> but when I went to get a Java 5 JDK to compile/test with, Sun
> says that it's
> >>>>>>>>>>> EOL as of October 30, 2009. I don't have a problem fixing
> things to work
> >>>>>>>>>>> with Java 5, but I don't want to do work that's going to be
> tossed out in a
> >>>>>>>>>>> month.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>> Lift will be JDK 1.5 compatible for at least 1 year (and
> probably
> >>>>>>>>>> longer).  LinkedIn and SAP are both 1.5 shops.  There are tons
> of other Bay
> >>>>>>>>>> Area companies (Wells Fargo, Kaiser, etc.) that are also 1.5
> shops.  For the
> >>>>>>>>>> next 2-3 years, OS X 10.5 will be common and 10.5 + old MacBooks
> == 1.5.
> >>>>>>>>>>
> >>>>>>>>>> It will not be lost work.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>> Derek
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> --
> >>>>>>>>>> Lift, the simply functional web framework http://liftweb.net
> >>>>>>>>>> Beginning Scala http://www.apress.com/book/view/1430219890
> >>>>>>>>>> Follow me: http://twitter.com/dpp
> >>>>>>>>>> Surf the harmonics
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Lift, the simply functional web framework http://liftweb.net
> >>>>>>>> Beginning Scala http://www.apress.com/book/view/1430219890
> >>>>>>>> Follow me: http://twitter.com/dpp
> >>>>>>>> Surf the harmonics
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> Lift, the simply functional web framework http://liftweb.net
> >>>>>> Beginning Scala http://www.apress.com/book/view/1430219890
> >>>>>> Follow me: http://twitter.com/dpp
> >>>>>> Surf the harmonics
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>> --
> >>>> Lift, the simply functional web framework http://liftweb.net
> >>>> Beginning Scala http://www.apress.com/book/view/1430219890
> >>>> Follow me: http://twitter.com/dpp
> >>>> Surf the harmonics
> >>>>
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >>
> >>
> >> --
> >> Viktor Klang
> >>
> >> Blog: klangism.blogspot.com
> >> Twttr: viktorklang
> >>
> >> Lift Committer - liftweb.com
> >> AKKA Committer - akkasource.org
> >> Cassidy - github.com/viktorklang/Cassidy.git
> >> SoftPub founder: http://groups.google.com/group/softpub
> >>
> >>
> >>
> >>
> >
> > >
> >
>
>
> --
> Viktor Klang
>
> Blog: klangism.blogspot.com
> Twttr: viktorklang
>
> Lift Committer - liftweb.com
> AKKA Committer - akkasource.org
> Cassidy - github.com/viktorklang/Cassidy.git
> SoftPub founder: http://groups.google.com/group/softpub
>
>
>
> >
>


-- 
Viktor Klang

Blog: klangism.blogspot.com
Twttr: viktorklang

Lift Committer - liftweb.com
AKKA Committer - akkasource.org
Cassidy - github.com/viktorklang/Cassidy.git
SoftPub founder: http://groups.google.com/group/softpub

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to