[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Neil.Lv

  I have added the demo code on the Github now.
  ( Mabye it's a bug with DB.runQuery and DB.use in the two db
vender )

  Here is the address:
  http://github.com/anim510/two_db_demo

  Thanks very much!

Cheers,
  Neil

On Jan 21, 11:26 am, Neil.Lv anim...@gmail.com wrote:
   My email is :   anim...@gmail.com

 On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:

  Mabye it's a bug with DB.runQuery and DB.use in the two db vender 

  Two question: (problem)

  1: I don't know why the HelloWorld snippet code will be execute 2
  times in this code. (See the HelloWorld.scala file.)
  2: The dbDefaultConnectionIdentifier method in the Model that it works
  fine when using Mapper's method such as ModelName.findAll(),
  it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
  can't find the default db identifier)

  The question 2 I test it many times that found this problem.

  In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.

  I comment the code now in the HelloWorld.scala file, you can try it.

  

    I can push the code on the github, and get this errors fatal:
  unable to fork

    So If anyone know what's wrong with it and I can send the demo.tar
  file through the email.

    Thanks very much!

  

  Cheers,
    Neil

  On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:

     The DB.runQuery can works now, but the DB.prepareStatement also
   cant' work.

     Here is the test app address:
    http://github.com/anim510/two_db_demo

   Cheers,
     Neil

   On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:

   Thank you very much,

   But it doesn't work yet, maybe because of using two db connections.

   I'll test it later again.

On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:

 Neil.Lv anim...@gmail.com writes:
  Hi all,

    I use two db connections in my app, and I want to use
  DB.prepareStatement to select
  the records from the second db.

    It failed, Here is the code:
  ###
    def getHotByTid(id : Long) =
      DB.use(bootstrap.liftweb.TwoDB) {
        conn =
       DB.prepareStatement(SELECT * FROM hots WHERE id=? , conn) {
               stmt =
                       stmt.setLong(1, id)
  Log.info(stmt : + stmt)   // The information is correctly now, but
  after call executeUpdate method
                       stmt.executeUpdate()
        }
     }

 Not sure what your problem is really, but I think you should use
 DB.runQuery to execute a select statement

 Ie

   val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length  
 FROM +
                     vehicles_current v +
                     WHERE v.account_id=? +
                     GROUP BY contract_length +
                     ORDER BY contract_length,
                     List(42))

 /Jeppe
-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@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.




Re: [Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread David Pollak
What is wrong with:

DB.use(FirstDB) {
  firstConnection =
  DB.use(SecondDB) {
  secondConnection =

  // do transactional query between two DBs here
}
}

Note that DB.use nests such that the transaction will only be committed when
the last DB.use block for a given ConnectionIdentifier is exited.


On Thu, Jan 21, 2010 at 3:17 AM, Neil.Lv anim...@gmail.com wrote:


  I have added the demo code on the Github now.
  ( Mabye it's a bug with DB.runQuery and DB.use in the two db
 vender )

  Here is the address:
   http://github.com/anim510/two_db_demo

   Thanks very much!

 Cheers,
  Neil

 On Jan 21, 11:26 am, Neil.Lv anim...@gmail.com wrote:
My email is :   anim...@gmail.com
 
  On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:
 
   Mabye it's a bug with DB.runQuery and DB.use in the two db vender 
 
   Two question: (problem)
 
   1: I don't know why the HelloWorld snippet code will be execute 2
   times in this code. (See the HelloWorld.scala file.)
   2: The dbDefaultConnectionIdentifier method in the Model that it works
   fine when using Mapper's method such as ModelName.findAll(),
   it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
   can't find the default db identifier)
 
   The question 2 I test it many times that found this problem.
 
   In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.
 
   I comment the code now in the HelloWorld.scala file, you can try it.
 
   
 
 I can push the code on the github, and get this errors fatal:
   unable to fork
 
 So If anyone know what's wrong with it and I can send the demo.tar
   file through the email.
 
 Thanks very much!
 
   
 
   Cheers,
 Neil
 
   On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:
 
  The DB.runQuery can works now, but the DB.prepareStatement also
cant' work.
 
  Here is the test app address:
 http://github.com/anim510/two_db_demo
 
Cheers,
  Neil
 
On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:
 
Thank you very much,
 
But it doesn't work yet, maybe because of using two db
 connections.
 
I'll test it later again.
 
 On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:
 
  Neil.Lv anim...@gmail.com writes:
   Hi all,
 
 I use two db connections in my app, and I want to use
   DB.prepareStatement to select
   the records from the second db.
 
 It failed, Here is the code:
   ###
 def getHotByTid(id : Long) =
   DB.use(bootstrap.liftweb.TwoDB) {
 conn =
DB.prepareStatement(SELECT * FROM hots WHERE id=? ,
 conn) {
stmt =
stmt.setLong(1, id)
   Log.info(stmt : + stmt)   // The information is correctly
 now, but
   after call executeUpdate method
stmt.executeUpdate()
 }
  }
 
  Not sure what your problem is really, but I think you should use
  DB.runQuery to execute a select statement
 
  Ie
 
val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length
  FROM +
  vehicles_current v +
  WHERE v.account_id=? +
  GROUP BY contract_length +
  ORDER BY contract_length,
  List(42))
 
  /Jeppe

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






-- 
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
-- 

You received this message because you are subscribed to the Google Groups "Lift" group.

To post to this group, send email to lift...@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.



[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Neil.Lv

  The users table in the OneDB, and the hots table in the TwoDB, they
are separated!

  I have changed the method that like this:
###
  # I specify the TwoDB for hots table.
  override def dbDefaultConnectionIdentifier = bootstrap.liftweb.TwoDB


  def getHots3(id : Long) = {
DB.use(bootstrap.liftweb.OneDB) {
  firstConn =
 DB.use(bootstrap.liftweb.TwoDB) {
conn =
 DB.prepareStatement(SELECT * FROM hots WHERE id?, conn) {
 stmt =
 stmt.setLong(1, id)
 stmt.executeUpdate()
}
}
}
  }
###

  But it doesn't work.

  Thanks very much!  :)

Cheers,
  Neil


On Jan 22, 12:49 am, David Pollak feeder.of.the.be...@gmail.com
wrote:
 What is wrong with:

 DB.use(FirstDB) {
   firstConnection =
   DB.use(SecondDB) {
   secondConnection =

   // do transactional query between two DBs here

 }
 }

 Note that DB.use nests such that the transaction will only be committed when
 the last DB.use block for a given ConnectionIdentifier is exited.



 On Thu, Jan 21, 2010 at 3:17 AM, Neil.Lv anim...@gmail.com wrote:

   I have added the demo code on the Github now.
   ( Mabye it's a bug with DB.runQuery and DB.use in the two db
  vender )

   Here is the address:
   http://github.com/anim510/two_db_demo

    Thanks very much!

  Cheers,
   Neil

  On Jan 21, 11:26 am, Neil.Lv anim...@gmail.com wrote:
     My email is :   anim...@gmail.com

   On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:

Mabye it's a bug with DB.runQuery and DB.use in the two db vender 

Two question: (problem)

1: I don't know why the HelloWorld snippet code will be execute 2
times in this code. (See the HelloWorld.scala file.)
2: The dbDefaultConnectionIdentifier method in the Model that it works
fine when using Mapper's method such as ModelName.findAll(),
it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
can't find the default db identifier)

The question 2 I test it many times that found this problem.

In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.

I comment the code now in the HelloWorld.scala file, you can try it.



  I can push the code on the github, and get this errors fatal:
unable to fork

  So If anyone know what's wrong with it and I can send the demo.tar
file through the email.

  Thanks very much!



Cheers,
  Neil

On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:

   The DB.runQuery can works now, but the DB.prepareStatement also
 cant' work.

   Here is the test app address:
  http://github.com/anim510/two_db_demo

 Cheers,
   Neil

 On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:

     Thank you very much,

     But it doesn't work yet, maybe because of using two db
  connections.

     I'll test it later again.

  On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:

   Neil.Lv anim...@gmail.com writes:
Hi all,

  I use two db connections in my app, and I want to use
DB.prepareStatement to select
the records from the second db.

  It failed, Here is the code:
###
  def getHotByTid(id : Long) =
    DB.use(bootstrap.liftweb.TwoDB) {
      conn =
     DB.prepareStatement(SELECT * FROM hots WHERE id=? ,
  conn) {
             stmt =
                     stmt.setLong(1, id)
Log.info(stmt : + stmt)   // The information is correctly
  now, but
after call executeUpdate method
                     stmt.executeUpdate()
      }
   }

   Not sure what your problem is really, but I think you should use
   DB.runQuery to execute a select statement

   Ie

     val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length
   FROM +
                       vehicles_current v +
                       WHERE v.account_id=? +
                       GROUP BY contract_length +
                       ORDER BY contract_length,
                       List(42))

   /Jeppe

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

 --
 Lift, the simply functional web frameworkhttp://liftweb.net
 Beginning Scalahttp://www.apress.com/book/view/1430219890
 Follow me:http://twitter.com/dpp
 Surf the harmonics
-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to 

Re: [Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Ross Mellgren
It doesn't work is not sufficient to diagnose. What behavior did you get, and 
what were you expecting? Were there any errors, log messages, exceptions, etc? 
If so, please copy them. Finally, if you have a reproducible test case please 
post it to github. I note earlier in the thread that you were fiddling with 
github, so if an older example is there, please make sure it's up to date with 
the most recent code.

Thanks,
-Ross

On Jan 21, 2010, at 12:29 PM, Neil.Lv wrote:

 
  The users table in the OneDB, and the hots table in the TwoDB, they
 are separated!
 
  I have changed the method that like this:
 ###
  # I specify the TwoDB for hots table.
  override def dbDefaultConnectionIdentifier = bootstrap.liftweb.TwoDB
 
 
  def getHots3(id : Long) = {
DB.use(bootstrap.liftweb.OneDB) {
  firstConn =
DB.use(bootstrap.liftweb.TwoDB) {
   conn =
DB.prepareStatement(SELECT * FROM hots WHERE id?, conn) {
stmt =
stmt.setLong(1, id)
stmt.executeUpdate()
   }
   }
}
  }
 ###
 
  But it doesn't work.
 
  Thanks very much!  :)
 
 Cheers,
  Neil
 
 
 On Jan 22, 12:49 am, David Pollak feeder.of.the.be...@gmail.com
 wrote:
 What is wrong with:
 
 DB.use(FirstDB) {
   firstConnection =
   DB.use(SecondDB) {
   secondConnection =
 
   // do transactional query between two DBs here
 
 }
 }
 
 Note that DB.use nests such that the transaction will only be committed when
 the last DB.use block for a given ConnectionIdentifier is exited.
 
 
 
 On Thu, Jan 21, 2010 at 3:17 AM, Neil.Lv anim...@gmail.com wrote:
 
  I have added the demo code on the Github now.
  ( Mabye it's a bug with DB.runQuery and DB.use in the two db
 vender )
 
  Here is the address:
  http://github.com/anim510/two_db_demo
 
   Thanks very much!
 
 Cheers,
  Neil
 
 On Jan 21, 11:26 am, Neil.Lv anim...@gmail.com wrote:
   My email is :   anim...@gmail.com
 
 On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:
 
 Mabye it's a bug with DB.runQuery and DB.use in the two db vender 
 
 Two question: (problem)
 
 1: I don't know why the HelloWorld snippet code will be execute 2
 times in this code. (See the HelloWorld.scala file.)
 2: The dbDefaultConnectionIdentifier method in the Model that it works
 fine when using Mapper's method such as ModelName.findAll(),
 it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
 can't find the default db identifier)
 
 The question 2 I test it many times that found this problem.
 
 In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.
 
 I comment the code now in the HelloWorld.scala file, you can try it.
 
 
 
   I can push the code on the github, and get this errors fatal:
 unable to fork
 
   So If anyone know what's wrong with it and I can send the demo.tar
 file through the email.
 
   Thanks very much!
 
 
 
 Cheers,
   Neil
 
 On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:
 
   The DB.runQuery can works now, but the DB.prepareStatement also
 cant' work.
 
   Here is the test app address:
  http://github.com/anim510/two_db_demo
 
 Cheers,
   Neil
 
 On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:
 
Thank you very much,
 
But it doesn't work yet, maybe because of using two db
 connections.
 
I'll test it later again.
 
 On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:
 
 Neil.Lv anim...@gmail.com writes:
 Hi all,
 
   I use two db connections in my app, and I want to use
 DB.prepareStatement to select
 the records from the second db.
 
   It failed, Here is the code:
 ###
   def getHotByTid(id : Long) =
 DB.use(bootstrap.liftweb.TwoDB) {
   conn =
  DB.prepareStatement(SELECT * FROM hots WHERE id=? ,
 conn) {
  stmt =
  stmt.setLong(1, id)
 Log.info(stmt : + stmt)   // The information is correctly
 now, but
 after call executeUpdate method
  stmt.executeUpdate()
   }
}
 
 Not sure what your problem is really, but I think you should use
 DB.runQuery to execute a select statement
 
 Ie
 
   val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length
  FROM +
 vehicles_current v +
 WHERE v.account_id=? +
 GROUP BY contract_length +
 ORDER BY contract_length,
 List(42))
 
 /Jeppe
 
 --
 You received this message because you are subscribed to the Google Groups
 Lift group.
 To post to this group, send email to lift...@googlegroups.com.
 To unsubscribe from this group, send email to
 liftweb+unsubscr...@googlegroups.comliftweb%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/liftweb?hl=en.
 
 --
 Lift, the simply functional web frameworkhttp://liftweb.net
 Beginning Scalahttp://www.apress.com/book/view/1430219890
 Follow me:http://twitter.com/dpp
 Surf the harmonics
 -- 
 You 

Re: [Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread David Pollak
On Thu, Jan 21, 2010 at 9:29 AM, Neil.Lv anim...@gmail.com wrote:


  The users table in the OneDB, and the hots table in the TwoDB, they
 are separated!

  I have changed the method that like this:
 ###
  # I specify the TwoDB for hots table.
  override def dbDefaultConnectionIdentifier = bootstrap.liftweb.TwoDB


  def getHots3(id : Long) = {
DB.use(bootstrap.liftweb.OneDB) {
  firstConn =
  DB.use(bootstrap.liftweb.TwoDB) {
conn =
 DB.prepareStatement(SELECT * FROM hots WHERE id?, conn)
 {
 stmt =
 stmt.setLong(1, id)
  stmt.executeUpdate()
}
}
}
  }
 ###

  But it doesn't work.


What do it doesn't work mean?  Does it not compile, if not, what's the
compilation error?   If it's another error, what's the error?  In your
example, you are not using the firstConn connection.  Also, you will get an
exception if you do an executeUpdate with a SELECT statement (this is JDBC,
not Lift).  You must do an executeQuery for a SELECT.



  Thanks very much!  :)

 Cheers,
  Neil


 On Jan 22, 12:49 am, David Pollak feeder.of.the.be...@gmail.com
 wrote:
  What is wrong with:
 
  DB.use(FirstDB) {
firstConnection =
DB.use(SecondDB) {
secondConnection =
 
// do transactional query between two DBs here
 
  }
  }
 
  Note that DB.use nests such that the transaction will only be committed
 when
  the last DB.use block for a given ConnectionIdentifier is exited.
 
 
 
  On Thu, Jan 21, 2010 at 3:17 AM, Neil.Lv anim...@gmail.com wrote:
 
I have added the demo code on the Github now.
( Mabye it's a bug with DB.runQuery and DB.use in the two db
   vender )
 
Here is the address:
http://github.com/anim510/two_db_demo
 
 Thanks very much!
 
   Cheers,
Neil
 
   On Jan 21, 11:26 am, Neil.Lv anim...@gmail.com wrote:
  My email is :   anim...@gmail.com
 
On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:
 
 Mabye it's a bug with DB.runQuery and DB.use in the two db vender
 
 
 Two question: (problem)
 
 1: I don't know why the HelloWorld snippet code will be execute 2
 times in this code. (See the HelloWorld.scala file.)
 2: The dbDefaultConnectionIdentifier method in the Model that it
 works
 fine when using Mapper's method such as ModelName.findAll(),
 it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe
 it
 can't find the default db identifier)
 
 The question 2 I test it many times that found this problem.
 
 In the test app , the Hot.getHots2 and Hot.getHots3 method can't
 work.
 
 I comment the code now in the HelloWorld.scala file, you can try
 it.
 
 
 
   I can push the code on the github, and get this errors fatal:
 unable to fork
 
   So If anyone know what's wrong with it and I can send the
 demo.tar
 file through the email.
 
   Thanks very much!
 
 
 
 Cheers,
   Neil
 
 On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:
 
The DB.runQuery can works now, but the DB.prepareStatement also
  cant' work.
 
Here is the test app address:
   http://github.com/anim510/two_db_demo
 
  Cheers,
Neil
 
  On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:
 
  Thank you very much,
 
  But it doesn't work yet, maybe because of using two db
   connections.
 
  I'll test it later again.
 
   On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk
 wrote:
 
Neil.Lv anim...@gmail.com writes:
 Hi all,
 
   I use two db connections in my app, and I want to use
 DB.prepareStatement to select
 the records from the second db.
 
   It failed, Here is the code:
 ###
   def getHotByTid(id : Long) =
 DB.use(bootstrap.liftweb.TwoDB) {
   conn =
  DB.prepareStatement(SELECT * FROM hots WHERE id=? ,
   conn) {
  stmt =
  stmt.setLong(1, id)
 Log.info(stmt : + stmt)   // The information is correctly
   now, but
 after call executeUpdate method
  stmt.executeUpdate()
   }
}
 
Not sure what your problem is really, but I think you should
 use
DB.runQuery to execute a select statement
 
Ie
 
  val (_,result) = DB.runQuery(SELECT COUNT(*),
 contract_length
FROM +
vehicles_current v +
WHERE v.account_id=? +
GROUP BY contract_length +
ORDER BY contract_length,
List(42))
 
/Jeppe
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Lift group.
   To post to this group, send email to lift...@googlegroups.com.
   To unsubscribe from this group, send 

[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Neil.Lv

  Thanks guys very very much!

  I'm using the Windows XP,  I  reset the height buffer for the CMD
now, and can see the full error message now.

  The code can work fine now ( it's so strange that I run this code on
the another computer , and it's all OK... )

  Maybe I need to delete all the target files.

  :)

Cheers,
  Neil

On Jan 22, 3:09 am, Naftoli Gugenheim naftoli...@gmail.com wrote:
 If you are using Windows and CMD.EXE does not hold enough lines to view the 
 error, click the control menu of the CMD window and click Properties, then on 
 the Layout tab you set the height of the screen buffer size.

 -

 Neil.Lvanim...@gmail.com wrote:

 Here is the lastest code now, g...@github.com:anim510/two_db_demo.git

 start server and visit:http://localhost:8080/and get this error, In
 the cmd I can't see all the error message,
 here is the all the message on the cmd screen.

 
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72.apply(LiftSession.scala:1041)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72.apply(LiftSession.scala:1041)
 at net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$
 $processOrD
 efer(LiftSession.scala:1026)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1040)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1034)
 at scala.Seq$class.flatMap(Seq.scala:294)
 at scala.xml.NodeSeq.flatMap(NodeSeq.scala:34)
 at net.liftweb.http.LiftSession.processSurroundAndInclude
 (LiftSession.sc
 ala:1033)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1054)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1034)
 at scala.Seq$class.flatMap(Seq.scala:294)
 at scala.xml.NodeSeq.flatMap(NodeSeq.scala:34)
 at net.liftweb.http.LiftSession.processSurroundAndInclude
 (LiftSession.sc
 ala:1033)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1$
 $anonfun$apply
 $2.apply(Surround.scala:37)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1$
 $anonfun$apply
 $2.apply(Surround.scala:34)
 at net.liftweb.common.Full.map(Box.scala:330)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1.apply
 (Surround
 .scala:34)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1.apply
 (Surround
 .scala:33)
 at net.liftweb.common.Full.flatMap(Box.scala:332)
 at net.liftweb.builtin.snippet.Surround$.render(Surround.scala:
 33)
 at net.liftweb.builtin.snippet.Surround$$anonfun$dispatch$1$
 $anonfun$app
 ly$1.apply(Surround.scala:29)
 at net.liftweb.builtin.snippet.Surround$$anonfun$dispatch$1$
 $anonfun$app
 ly$1.apply(Surround.scala:29)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61$$anonfun$apply$63.apply(LiftSession.scala:846)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61$$anonfun$apply$63.apply(LiftSession.scala:830)
 at net.liftweb.common.EmptyBox.openOr(Box.scala:372)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61.apply(LiftSession.scala:830)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61.apply(LiftSession.scala:830)
 at net.liftweb.common.EmptyBox.openOr(Box.scala:372)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply
 $58.apply(Lift
 Session.scala:829)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply
 $58.apply(Lift
 Session.scala:829)
 at net.liftweb.http.S$.doSnippet(S.scala:1677)
 at net.liftweb.http.LiftSession$$anonfun$18.apply
 (LiftSession.scala:827)

 at net.liftweb.http.LiftSession$$anonfun$18.apply
 (LiftSession.scala:826)

 at net.liftweb.common.Full.map(Box.scala:330)
 at net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$
 $processSni
 ppet(LiftSession.scala:826)
 at net.liftweb.http.LiftSession$$anonfun
 $_defaultLiftTagProcessing$1.app
 ly(LiftSession.scala:942)
 at net.liftweb.http.LiftSession$$anonfun
 $_defaultLiftTagProcessing$1.app
 ly(LiftSession.scala:930)
 at net.liftweb.util.NamedPF.apply(NamedPartialFunction.scala:
 33)
 at net.liftweb.util.NamedPF$.apply(NamedPartialFunction.scala:
 79)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72$$anonfun$apply$73$$anonfun$apply$74$$anonfun$apply
 $75.apply(LiftS
 ession.scala:1044)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 

Re: [Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Naftoli Gugenheim
'mvn clean' deletes them for you.

-
Neil.Lvanim...@gmail.com wrote:


  Thanks guys very very much!

  I'm using the Windows XP,  I  reset the height buffer for the CMD
now, and can see the full error message now.

  The code can work fine now ( it's so strange that I run this code on
the another computer , and it's all OK... )

  Maybe I need to delete all the target files.

  :)

Cheers,
  Neil

On Jan 22, 3:09 am, Naftoli Gugenheim naftoli...@gmail.com wrote:
 If you are using Windows and CMD.EXE does not hold enough lines to view the 
 error, click the control menu of the CMD window and click Properties, then on 
 the Layout tab you set the height of the screen buffer size.

 -

 Neil.Lvanim...@gmail.com wrote:

 Here is the lastest code now, g...@github.com:anim510/two_db_demo.git

 start server and visit:http://localhost:8080/and get this error, In
 the cmd I can't see all the error message,
 here is the all the message on the cmd screen.

 
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72.apply(LiftSession.scala:1041)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72.apply(LiftSession.scala:1041)
 at net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$
 $processOrD
 efer(LiftSession.scala:1026)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1040)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1034)
 at scala.Seq$class.flatMap(Seq.scala:294)
 at scala.xml.NodeSeq.flatMap(NodeSeq.scala:34)
 at net.liftweb.http.LiftSession.processSurroundAndInclude
 (LiftSession.sc
 ala:1033)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1054)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1.app
 ly(LiftSession.scala:1034)
 at scala.Seq$class.flatMap(Seq.scala:294)
 at scala.xml.NodeSeq.flatMap(NodeSeq.scala:34)
 at net.liftweb.http.LiftSession.processSurroundAndInclude
 (LiftSession.sc
 ala:1033)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1$
 $anonfun$apply
 $2.apply(Surround.scala:37)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1$
 $anonfun$apply
 $2.apply(Surround.scala:34)
 at net.liftweb.common.Full.map(Box.scala:330)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1.apply
 (Surround
 .scala:34)
 at net.liftweb.builtin.snippet.Surround$$anonfun$render$1.apply
 (Surround
 .scala:33)
 at net.liftweb.common.Full.flatMap(Box.scala:332)
 at net.liftweb.builtin.snippet.Surround$.render(Surround.scala:
 33)
 at net.liftweb.builtin.snippet.Surround$$anonfun$dispatch$1$
 $anonfun$app
 ly$1.apply(Surround.scala:29)
 at net.liftweb.builtin.snippet.Surround$$anonfun$dispatch$1$
 $anonfun$app
 ly$1.apply(Surround.scala:29)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61$$anonfun$apply$63.apply(LiftSession.scala:846)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61$$anonfun$apply$63.apply(LiftSession.scala:830)
 at net.liftweb.common.EmptyBox.openOr(Box.scala:372)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61.apply(LiftSession.scala:830)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply$58$
 $anonfun$a
 pply$61.apply(LiftSession.scala:830)
 at net.liftweb.common.EmptyBox.openOr(Box.scala:372)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply
 $58.apply(Lift
 Session.scala:829)
 at net.liftweb.http.LiftSession$$anonfun$18$$anonfun$apply
 $58.apply(Lift
 Session.scala:829)
 at net.liftweb.http.S$.doSnippet(S.scala:1677)
 at net.liftweb.http.LiftSession$$anonfun$18.apply
 (LiftSession.scala:827)

 at net.liftweb.http.LiftSession$$anonfun$18.apply
 (LiftSession.scala:826)

 at net.liftweb.common.Full.map(Box.scala:330)
 at net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$
 $processSni
 ppet(LiftSession.scala:826)
 at net.liftweb.http.LiftSession$$anonfun
 $_defaultLiftTagProcessing$1.app
 ly(LiftSession.scala:942)
 at net.liftweb.http.LiftSession$$anonfun
 $_defaultLiftTagProcessing$1.app
 ly(LiftSession.scala:930)
 at net.liftweb.util.NamedPF.apply(NamedPartialFunction.scala:
 33)
 at net.liftweb.util.NamedPF$.apply(NamedPartialFunction.scala:
 79)
 at net.liftweb.http.LiftSession$$anonfun
 $processSurroundAndInclude$1$$an
 onfun$apply$72$$anonfun$apply$73$$anonfun$apply$74$$anonfun$apply
 $75.apply(LiftS
 ession.scala:1044)
 at 

[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-21 Thread Neil.Lv


On Jan 22, 10:06 am, Naftoli Gugenheim naftoli...@gmail.com wrote:
 'mvn clean' deletes them for you.

 -

 Got it, Thank you very much!

Cheers,
  Neil

-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@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.



[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-20 Thread Neil.Lv

   Thank you very much,

   But it doesn't work yet, maybe because of using two db connections.

   I'll test it later again.


On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:
 Neil.Lv anim...@gmail.com writes:
  Hi all,

    I use two db connections in my app, and I want to use
  DB.prepareStatement to select
  the records from the second db.

    It failed, Here is the code:
  ###
    def getHotByTid(id : Long) =
      DB.use(bootstrap.liftweb.TwoDB) {
        conn =
       DB.prepareStatement(SELECT * FROM hots WHERE id=? , conn) {
               stmt =
                       stmt.setLong(1, id)
  Log.info(stmt : + stmt)   // The information is correctly now, but
  after call executeUpdate method
                       stmt.executeUpdate()
        }
     }

 Not sure what your problem is really, but I think you should use
 DB.runQuery to execute a select statement

 Ie

   val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length  FROM +
                     vehicles_current v +
                     WHERE v.account_id=? +
                     GROUP BY contract_length +
                     ORDER BY contract_length,
                     List(42))

 /Jeppe
-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@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.




[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-20 Thread Neil.Lv


Mabye it's a bug with DB.runQuery and DB.use in the two db vender 

Two question: (problem)

1: I don't know why the HelloWorld snippet code will be execute 2
times in this code. (See the HelloWorld.scala file.)
2: The dbDefaultConnectionIdentifier method in the Model that it works
fine when using Mapper's method such as ModelName.findAll(),
it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
can't find the default db identifier)

The question 2 I test it many times that found this problem.

In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.

I comment the code now in the HelloWorld.scala file, you can try it.



  I can push the code on the github, and get this errors fatal:
unable to fork

  So If anyone know what's wrong with it and I can send the demo.tar
file through the email.

  Thanks very much!



Cheers,
  Neil

On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:
   The DB.runQuery can works now, but the DB.prepareStatement also
 cant' work.

   Here is the test app address:
  http://github.com/anim510/two_db_demo

 Cheers,
   Neil

 On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:

 Thank you very much,

 But it doesn't work yet, maybe because of using two db connections.

 I'll test it later again.

  On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:

   Neil.Lv anim...@gmail.com writes:
Hi all,

  I use two db connections in my app, and I want to use
DB.prepareStatement to select
the records from the second db.

  It failed, Here is the code:
###
  def getHotByTid(id : Long) =
DB.use(bootstrap.liftweb.TwoDB) {
  conn =
 DB.prepareStatement(SELECT * FROM hots WHERE id=? , conn) {
 stmt =
 stmt.setLong(1, id)
Log.info(stmt : + stmt)   // The information is correctly now, but
after call executeUpdate method
 stmt.executeUpdate()
  }
   }

   Not sure what your problem is really, but I think you should use
   DB.runQuery to execute a select statement

   Ie

 val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length  FROM +
   vehicles_current v +
   WHERE v.account_id=? +
   GROUP BY contract_length +
   ORDER BY contract_length,
   List(42))

   /Jeppe
-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@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.




[Lift] Re: How to use prepareStatement to select *** from DB (two db vender)?

2010-01-20 Thread Neil.Lv

  My email is :   anim...@gmail.com

On Jan 21, 11:17 am, Neil.Lv anim...@gmail.com wrote:
 Mabye it's a bug with DB.runQuery and DB.use in the two db vender 

 Two question: (problem)

 1: I don't know why the HelloWorld snippet code will be execute 2
 times in this code. (See the HelloWorld.scala file.)
 2: The dbDefaultConnectionIdentifier method in the Model that it works
 fine when using Mapper's method such as ModelName.findAll(),
 it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe it
 can't find the default db identifier)

 The question 2 I test it many times that found this problem.

 In the test app , the Hot.getHots2 and Hot.getHots3 method can't work.

 I comment the code now in the HelloWorld.scala file, you can try it.

 

   I can push the code on the github, and get this errors fatal:
 unable to fork

   So If anyone know what's wrong with it and I can send the demo.tar
 file through the email.

   Thanks very much!

 

 Cheers,
   Neil

 On Jan 21, 1:56 am, Neil.Lv anim...@gmail.com wrote:

The DB.runQuery can works now, but the DB.prepareStatement also
  cant' work.

Here is the test app address:
   http://github.com/anim510/two_db_demo

  Cheers,
Neil

  On Jan 21, 1:16 am, Neil.Lv anim...@gmail.com wrote:

  Thank you very much,

  But it doesn't work yet, maybe because of using two db connections.

  I'll test it later again.

   On Jan 21, 12:44 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote:

Neil.Lv anim...@gmail.com writes:
 Hi all,

   I use two db connections in my app, and I want to use
 DB.prepareStatement to select
 the records from the second db.

   It failed, Here is the code:
 ###
   def getHotByTid(id : Long) =
 DB.use(bootstrap.liftweb.TwoDB) {
   conn =
  DB.prepareStatement(SELECT * FROM hots WHERE id=? , conn) {
  stmt =
  stmt.setLong(1, id)
 Log.info(stmt : + stmt)   // The information is correctly now, but
 after call executeUpdate method
  stmt.executeUpdate()
   }
}

Not sure what your problem is really, but I think you should use
DB.runQuery to execute a select statement

Ie

  val (_,result) = DB.runQuery(SELECT COUNT(*), contract_length  FROM 
+
vehicles_current v +
WHERE v.account_id=? +
GROUP BY contract_length +
ORDER BY contract_length,
List(42))

/Jeppe
-- 
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to lift...@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.