[Lift] email validation configuration

2010-03-05 Thread GA
Hello guys,

could you please let me know where I can find information about how to 
configure the email validation for the MegaProtoUser?

I do not know how to tell Lift about our SMTP server, Authentication data, etc. 
I was searching in the wiki and this list but I could not find anything.

Thanks in advance,

GA

-- 
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] Parsed JSON values do not match with class constructor

2010-02-11 Thread GA
Hello guys,

I am having a very strange error parsing JSON messages. Everything was working 
perfect until I introduce a new array in the message. It supposed to be a very 
small change, but the system seems to be parsing java data types instead of 
scala data types.

This is the error message:

net.liftweb.json.MappingException: Parsed JSON values do not match with class 
constructor
args=129567,248,1,1,0,0, String
arg 
types=java.lang.Long,java.lang.Long,java.lang.Long,java.lang.Long,scala.BigInt,scala.BigInt,java.lang.String
constructor=public 
com.tribes.ga.api.FeedAPI$FilterLogging$2(long,long,long,long,float,float,java.lang.String)

I do not know how to solve this. There is another array in the same structure 
that works just fine.

This is the JSON message coming into the API:

{lastSync:Thursday, February11,2010,
tribeId:1,
filterLogging:[{passMarkApplied:0,thresholdApplied:0,entryId:129567,evaluationDescription:String,objectFiltered:1,filterApplied:1,sourceId:248}],
history:7,
deviceId:1036,
source:248,
showNews:true,
userId:1049,
syncFlag:false,
showNewsChanged:false,
updatedFeeds:[]}

The error is with the array filter. I am parsing it with the following code 
(this is an extraction of the entire definition):

case class FilterLogging(entryId: Long,
 sourceId: Long,
 objectFiltered: Long,
 filterApplied: Long,
 passMarkApplied: Float,
 thresholdApplied: Float,
 evaluationDescription: String
)

case class UpdatedSource(userId: Long,
 deviceId: Long,
 tribeId: Long,
 syncFlag: Boolean,
 lastSync: String,
 history: Int,
 source: Long,
 updatedFeeds: List[UpdatedFeeds],
 filterLogging: List[FilterLogging]
)

val json = parse(req.body.map(bytes = new String(bytes, UTF-8)) 
openOr )
val request: UpdatedSource = json.extract[UpdatedSource]


Any ideas?

Thanks in advance,

GA




-- 
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: Parsed JSON values do not match with class constructor

2010-02-11 Thread GA
That's exactly what I've just found out. :-)

As a workaround I am forcing the client app to send 0.0.

are you saying that the bug is fixed in Lift 2.0-M2?

Thanks for the answer,

cheers,

GA


On Feb 11, 2010, at 5:42 PM, Joni Freeman wrote:

 Hi,
 
 I believe this bug is already fixed in trunk. If I'm right, the
 problem was missing conversion from JInt to float. You could fix it by
 changing these values passMarkApplied:0,thresholdApplied:0 to
 passMarkApplied:0.0,thresholdApplied:0.0
 
 But it would be great if you have time to test with latest snapshot.
 It worked for me at least.
 
 Cheers Joni
 
 On Feb 11, 6:11 pm, GA my_li...@me.com wrote:
 Hello guys,
 
 I am having a very strange error parsing JSON messages. Everything was 
 working perfect until I introduce a new array in the message. It supposed to 
 be a very small change, but the system seems to be parsing java data types 
 instead of scala data types.
 
 This is the error message:
 
 net.liftweb.json.MappingException: Parsed JSON values do not match with 
 class constructor
 args=129567,248,1,1,0,0, String
 arg 
 types=java.lang.Long,java.lang.Long,java.lang.Long,java.lang.Long,scala.BigInt,scala.BigInt,java.lang.String
 constructor=public 
 com.tribes.ga.api.FeedAPI$FilterLogging$2(long,long,long,long,float,float,java.lang.String)
 
 I do not know how to solve this. There is another array in the same 
 structure that works just fine.
 
 This is the JSON message coming into the API:
 
 {lastSync:Thursday, February11,2010,
 tribeId:1,
 filterLogging:[{passMarkApplied:0,thresholdApplied:0,entryId:129567,evaluationDescription:String,objectFiltered:1,filterApplied:1,sourceId:248}],
 history:7,
 deviceId:1036,
 source:248,
 showNews:true,
 userId:1049,
 syncFlag:false,
 showNewsChanged:false,
 updatedFeeds:[]}
 
 The error is with the array filter. I am parsing it with the following 
 code (this is an extraction of the entire definition):
 
 case class FilterLogging(entryId: Long,
  sourceId: Long,
  objectFiltered: Long,
  filterApplied: Long,
  passMarkApplied: Float,
  thresholdApplied: Float,
  evaluationDescription: String
 )
 
 case class UpdatedSource(userId: Long,
  deviceId: Long,
  tribeId: Long,
  syncFlag: Boolean,
  lastSync: String,
  history: Int,
  source: Long,
  updatedFeeds: List[UpdatedFeeds],
  filterLogging: List[FilterLogging]
 )
 
 val json = parse(req.body.map(bytes = new String(bytes, 
 UTF-8)) openOr )
 val request: UpdatedSource = json.extract[UpdatedSource]
 
 Any ideas?
 
 Thanks in advance,
 
 GA
 
 -- 
 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.
 

-- 
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: Parsed JSON values do not match with class constructor

2010-02-11 Thread GA
Thanks I am gonna try and test it.

When is 2.0-M2 going to be released?

Cheers, GA



On Feb 11, 2010, at 6:00 PM, Joni Freeman wrote:

 Yes, it is fixed in 2.0-M2.
 
 Cheers Joni
 
 On Feb 11, 6:54 pm, GA my_li...@me.com wrote:
 That's exactly what I've just found out. :-)
 
 As a workaround I am forcing the client app to send 0.0.
 
 are you saying that the bug is fixed in Lift 2.0-M2?
 
 Thanks for the answer,
 
 cheers,
 
 GA
 
 On Feb 11, 2010, at 5:42 PM, Joni Freeman wrote:
 
 Hi,
 
 I believe this bug is already fixed in trunk. If I'm right, the
 problem was missing conversion from JInt to float. You could fix it by
 changing these values passMarkApplied:0,thresholdApplied:0 to
 passMarkApplied:0.0,thresholdApplied:0.0
 
 But it would be great if you have time to test with latest snapshot.
 It worked for me at least.
 
 Cheers Joni
 
 On Feb 11, 6:11 pm, GA my_li...@me.com wrote:
 Hello guys,
 
 I am having a very strange error parsing JSON messages. Everything was 
 working perfect until I introduce a new array in the message. It supposed 
 to be a very small change, but the system seems to be parsing java data 
 types instead of scala data types.
 
 This is the error message:
 
 net.liftweb.json.MappingException: Parsed JSON values do not match with 
 class constructor
 args=129567,248,1,1,0,0, String
 arg 
 types=java.lang.Long,java.lang.Long,java.lang.Long,java.lang.Long,scala.BigInt,scala.BigInt,java.lang.String
 constructor=public 
 com.tribes.ga.api.FeedAPI$FilterLogging$2(long,long,long,long,float,float,java.lang.String)
 
 I do not know how to solve this. There is another array in the same 
 structure that works just fine.
 
 This is the JSON message coming into the API:
 
 {lastSync:Thursday, February11,2010,
 tribeId:1,
 filterLogging:[{passMarkApplied:0,thresholdApplied:0,entryId:129567,evaluationDescription:String,objectFiltered:1,filterApplied:1,sourceId:248}],
 history:7,
 deviceId:1036,
 source:248,
 showNews:true,
 userId:1049,
 syncFlag:false,
 showNewsChanged:false,
 updatedFeeds:[]}
 
 The error is with the array filter. I am parsing it with the following 
 code (this is an extraction of the entire definition):
 
 case class FilterLogging(entryId: Long,
  sourceId: Long,
  objectFiltered: Long,
  filterApplied: Long,
  passMarkApplied: Float,
  thresholdApplied: Float,
  evaluationDescription: String
 )
 
 case class UpdatedSource(userId: Long,
  deviceId: Long,
  tribeId: Long,
  syncFlag: Boolean,
  lastSync: String,
  history: Int,
  source: Long,
  updatedFeeds: List[UpdatedFeeds],
  filterLogging: List[FilterLogging]
 )
 
 val json = parse(req.body.map(bytes = new String(bytes, 
 UTF-8)) openOr )
 val request: UpdatedSource = json.extract[UpdatedSource]
 
 Any ideas?
 
 Thanks in advance,
 
 GA
 
 --
 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 
 athttp://groups.google.com/group/liftweb?hl=en.
 
 
 
 -- 
 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.
 

-- 
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] Helpers.bind question

2010-02-09 Thread GA
Hello guys,

I have a very silly question. I have a snippet that reads a string field from 
the database and it inserts it within a html page.

So far so good. The text that the snippet reads from the database is a piece of 
html code. The problem is that the bind method replaces the  and  within 
the string with lt; and gt;. The snippet looks like that:

if (context != ) {
ContextHelp.findByKey(context.toLong) match {
case Full(help) = {
val message = help.contextHelp
Helpers.bind(b, in, text -  message.toString)
}
case _ = Helpers.bind(b, in, text - Context not found)
}
} else Helpers.bind(b, in, text - The URL is invalid. )


The HTML that calls the snippet looks like this:

lift:LoadHelp.getHelp
b:text/
/lift:LoadHelp.getHelp

What should I do to get the html content without changes in the tags?

Thanks in advance,

GA

-- 
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] Helpers.bind question

2010-02-09 Thread GA
What we have here is a iphone native application that has the help screens in 
HTML. The help screens are in multiple languages and are stored in the database.

When the application starts, it checks in the server for updates in the help 
pages calling a particular URL but with different context parameters. The 
downloaded HTML is stored locally in the app to be able to work when the phone 
is offline. The downloaded content has a common template for each language and 
it loads the content from the database.

The help content has been written as HTML in MS Word. It has been already 
formatted there. That is why it is stored altogether in the database. It is not 
a typical lift web site.

If it is not possible to pass the characters unescaped, then we will have to 
create the pages individually loading just the text from the database. It is 
not a big deal and I know it would be cleaner, but I wanted to know if we can 
avoid this change.

Thanks in advance,

GA

On Feb 9, 2010, at 8:31 PM, David Pollak wrote:

 
 
 On Tue, Feb 9, 2010 at 10:00 AM, GA my_li...@me.com wrote:
 Hello guys,
 
 I have a very silly question. I have a snippet that reads a string field from 
 the database and it inserts it within a html page.
 
 So far so good. The text that the snippet reads from the database is a piece 
 of html code. The problem is that the bind method replaces the  and  
 within the string with lt; and gt;. The snippet looks like that:
 
 if (context != ) {
 ContextHelp.findByKey(context.toLong) match {
 case Full(help) = {
 val message = help.contextHelp
 Helpers.bind(b, in, text -  message.toString)
 }
 case _ = Helpers.bind(b, in, text - Context not found)
 }
 } else Helpers.bind(b, in, text - The URL is invalid. )
 
 
 The HTML that calls the snippet looks like this:
 
 lift:LoadHelp.getHelp
   b:text/
 /lift:LoadHelp.getHelp
 
 What should I do to get the html content without changes in the tags?
 
 It is not Helpers.bind() that's transforming the text.  It's the XML 
 libraries that properly XML escape Text() elements when they are converted 
 from XML representation to a byte stream.
 
 In almost every context, this is what you want... you want Strings to be 
 properly escaped.  If that was not the case, there would be tons of cross 
 site scripting issues.
 
 So, what is the type of message in the code above?  Do you really, really, 
 really mean for the String representation of message to be not XML escaped?
  
 
 Thanks in advance,
 
 GA
 
 
 -- 
 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, 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.

-- 
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] Helpers.bind question

2010-02-09 Thread GA
Thanks  guys. It works.


On Feb 9, 2010, at 10:26 PM, David Pollak wrote:

 
 
 On Tue, Feb 9, 2010 at 12:04 PM, GA my_li...@me.com wrote:
 What we have here is a iphone native application that has the help screens in 
 HTML. The help screens are in multiple languages and are stored in the 
 database.
 
 When the application starts, it checks in the server for updates in the help 
 pages calling a particular URL but with different context parameters. The 
 downloaded HTML is stored locally in the app to be able to work when the 
 phone is offline. The downloaded content has a common template for each 
 language and it loads the content from the database.
 
 The help content has been written as HTML in MS Word. It has been already 
 formatted there. That is why it is stored altogether in the database. It is 
 not a typical lift web site.
 
 If it is not possible to pass the characters unescaped, then we will have to 
 create the pages individually loading just the text from the database. It is 
 not a big deal and I know it would be cleaner, but I wanted to know if we can 
 avoid this change.
 
 As Naftoli mentioned, scala.xml.Unparsed(string) will pass string to the 
 output.  If the string is not valid XML, the client browser may complain.
  
 
 Thanks in advance,
 
 GA
 
 On Feb 9, 2010, at 8:31 PM, David Pollak wrote:
 
 
 
 On Tue, Feb 9, 2010 at 10:00 AM, GA my_li...@me.com wrote:
 Hello guys,
 
 I have a very silly question. I have a snippet that reads a string field 
 from the database and it inserts it within a html page.
 
 So far so good. The text that the snippet reads from the database is a piece 
 of html code. The problem is that the bind method replaces the  and  
 within the string with lt; and gt;. The snippet looks like that:
 
 if (context != ) {
 ContextHelp.findByKey(context.toLong) match {
 case Full(help) = {
 val message = help.contextHelp
 Helpers.bind(b, in, text -  message.toString)
 }
 case _ = Helpers.bind(b, in, text - Context not 
 found)
 }
 } else Helpers.bind(b, in, text - The URL is invalid. )
 
 
 The HTML that calls the snippet looks like this:
 
 lift:LoadHelp.getHelp
  b:text/
 /lift:LoadHelp.getHelp
 
 What should I do to get the html content without changes in the tags?
 
 It is not Helpers.bind() that's transforming the text.  It's the XML 
 libraries that properly XML escape Text() elements when they are converted 
 from XML representation to a byte stream.
 
 In almost every context, this is what you want... you want Strings to be 
 properly escaped.  If that was not the case, there would be tons of cross 
 site scripting issues.
 
 So, what is the type of message in the code above?  Do you really, really, 
 really mean for the String representation of message to be not XML escaped?
  
 
 Thanks in advance,
 
 GA
 
 
 -- 
 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, 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.
 
 
 -- 
 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, 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.

-- 
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] Show the deprecated messages

2010-01-13 Thread GA
Hello guys,

I have a very silly question.

when I run the mvn command to compile the classes, I receive the following 
message:

warning: there were deprecation warnings; re-run with -deprecation for details
one warning found

How can I do to see the messages? I tried to add -deprecation to the mvn 
command but it does not recognize it.

Thanks in advance,

GA

-- 
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: Show the deprecated messages

2010-01-13 Thread GA
It worked! 
Thanks,

GA


On Jan 13, 2010, at 11:37 AM, Timothy Perrett wrote:

 Something like:
 
 
  plugin
groupIdorg.scala-tools/groupId
artifactIdmaven-scala-plugin/artifactId
version2.12.2/version
configuration
  jvmArgs
jvmArg-Xmx1024m/jvmArg
  /jvmArgs
  args
arg-unchecked/arg
arg-deprecation/arg
arg-Xno-varargs-conversion/arg
  /args
/configuration
/executions
  /plugin
 
 On Jan 13, 10:01 am, GA my_li...@me.com wrote:
 Hello guys,
 
 I have a very silly question.
 
 when I run the mvn command to compile the classes, I receive the following 
 message:
 
 warning: there were deprecation warnings; re-run with -deprecation for 
 details
 one warning found
 
 How can I do to see the messages? I tried to add -deprecation to the mvn 
 command but it does not recognize it.
 
 Thanks in advance,
 
 GA
 -- 
 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.
 
 

-- 
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] How to remove manyTomany children?

2010-01-05 Thread GA
Hello guys,

I have a table that has a many-to-many relationship with itself.

I manage to add new entries to the relationship table using the 
MapperManyToMany, but I cannot remove entries.

This is the code I am using to remove:

for (entryToRemove - entry.childEntries) {
 val indexOf = entry.childEntries.indexOf(entryToRemove)
 entry.childEntries.remove(indexOf)
}
entry.save

This code is supposed to remove all the entries in the relationship table, but 
it does nothing.

The class I am using to define the ManyToMany table is an extension of Mapper, 
not LongKeyedMapper. This is because I do not really need an extra field just 
for the primary key. Could this be the problem?

Any suggestions?

Thanks in advance,

GA

-- 

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] How to remove manyTomany children?

2010-01-05 Thread GA
It does not work either with the LongKeyedMapper.

Am I doing something wrong?


On Jan 5, 2010, at 7:25 PM, Guillermo Acilu wrote:

 It was the first thing I tried. But it does not work.
 
 I have run out of options now. I am going to try to add a LongKeyMapper to 
 see if the problem gets solved.
 
 
 
 On Jan 5, 2010, at 7:12 PM, Naftoli Gugenheim wrote:
 
 Can you try
 entry.childEntries.clear
 entry.save
 ?
 
 -
 GAmy_li...@me.com wrote:
 
 Hello guys,
 
 I have a table that has a many-to-many relationship with itself.
 
 I manage to add new entries to the relationship table using the 
 MapperManyToMany, but I cannot remove entries.
 
 This is the code I am using to remove:
 
 for (entryToRemove - entry.childEntries) {
 val indexOf = entry.childEntries.indexOf(entryToRemove)
 entry.childEntries.remove(indexOf)
 }
 entry.save
 
 This code is supposed to remove all the entries in the relationship table, 
 but it does nothing.
 
 The class I am using to define the ManyToMany table is an extension of 
 Mapper, not LongKeyedMapper. This is because I do not really need an extra 
 field just for the primary key. Could this be the problem?
 
 Any suggestions?
 
 Thanks in advance,
 
 GA
 
 --
 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.
 -- 
 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.
 
 
 
 -- 
 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.
 
 

-- 
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] How to remove manyTomany children?

2010-01-05 Thread GA
I would like to remove them from the database, not only the relationship.

How should I do that?

Thanks,


On Jan 5, 2010, at 9:42 PM, Naftoli Gugenheim wrote:

 Are they not getting removed from the collection when you call clear, or are 
 they not getting deleted in the database when you call save?
 Also, are you trying to delete the actual entity? Clear and remove just 
 delete the relationship.
 
 -
 GAmy_li...@me.com wrote:
 
 It does not work either with the LongKeyedMapper.
 
 Am I doing something wrong?
 
 
 On Jan 5, 2010, at 7:25 PM, Guillermo Acilu wrote:
 
 It was the first thing I tried. But it does not work.
 
 I have run out of options now. I am going to try to add a LongKeyMapper to 
 see if the problem gets solved.
 
 
 
 On Jan 5, 2010, at 7:12 PM, Naftoli Gugenheim wrote:
 
 Can you try
 entry.childEntries.clear
 entry.save
 ?
 
 -
 GAmy_li...@me.com wrote:
 
 Hello guys,
 
 I have a table that has a many-to-many relationship with itself.
 
 I manage to add new entries to the relationship table using the 
 MapperManyToMany, but I cannot remove entries.
 
 This is the code I am using to remove:
 
 for (entryToRemove - entry.childEntries) {
 val indexOf = entry.childEntries.indexOf(entryToRemove)
 entry.childEntries.remove(indexOf)
 }
 entry.save
 
 This code is supposed to remove all the entries in the relationship table, 
 but it does nothing.
 
 The class I am using to define the ManyToMany table is an extension of 
 Mapper, not LongKeyedMapper. This is because I do not really need an extra 
 field just for the primary key. Could this be the problem?
 
 Any suggestions?
 
 Thanks in advance,
 
 GA
 
 --
 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.
 -- 
 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.
 
 
 
 -- 
 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.
 
 
 
 -- 
 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.
 
 

-- 
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] Indentation problem with Eclipse plugin

2009-12-31 Thread GA
Hello guys,

I am having a very strange indentation problem with the Eclipse plugin.

To appreciate please maximize your email window. You can see how the second 
line starts after the last  [ . It does it whenever you have [  ] in 
the code.

object entries extends MappedOneToMany(FeedEntry, 
FeedEntry.entrySource) with Owned[FeedEntry] with Cascade[FeedEntry]

object tribes extends 
MappedManyToMany(ContentTribes, ContentTribes.sourceId, ContentTribes.tribeId, 
Tribe)

I was trying to live with it, but it is kind of annoying in long chunks of code.

Any ideas on how to solve it?

Thanks in advance and happy 2010 to everybody.

Cheers,

GA

--

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] Indentation problem with Eclipse plugin

2009-12-31 Thread GA
Thanks for the answers.

Good to know that it has been fixed already on trunk. Any idea when the new 
release of the plugin will be available?

Cheers,

GA



On Dec 31, 2009, at 1:12 PM, Miles Sabin wrote:

 On Thu, Dec 31, 2009 at 11:11 AM, Timothy Perrett
 timo...@getintheloop.eu wrote:
 As this is a problem with the eclipse plugin, you'll get a better / right
 response on either scala-user or logging an issue with epfl trac so miles
 can pick it up and address it.
 
 No need ... this is fixed on trunk.
 
 Cheers,
 
 
 Miles
 
 -- 
 Miles Sabin
 tel: +44 (0)7813 944 528
 skype:  milessabin
 http://www.chuusai.com/
 http://twitter.com/milessabin
 
 --
 
 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.
 
 

--

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] Netbeans 6.8 issues with Lift

2009-12-25 Thread GA
Hello guys,

I have upgraded my Netbeans from 6.7 to 6.8 and the very same Lift code started 
to report some errors. The code compiles correctly from the command line, but 
it reports error in the GUI. One of the errors is the following:

This method:

def dispatch: LiftRules.DispatchPF = {
case r...@req(api :: feed:: getNewSources :: Nil, , PutRequest) 
=
() = getNewSources(r)
case r...@req(api :: feed:: getNewFeedsPerSource :: Nil, , 
PutRequest) =
() = getNewFeedsPerSource(r)
case r...@req(api :: feed :: setNewSource :: Nil, , PutRequest) 
=
() = setNewSource(r)
case r...@req(api :: feed :: setNewFeedEntries :: Nil, , 
PutRequest) =
() = setNewFeedEntries(r)
}

Reports:

missing parameter type for expanded function

As I say, the code complies and run perfectly from Maven in the command line. 
Does anybody have similar issues with Netbeans 6.8?

Thanks in advance,

GA

--

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] Content is not allowed in prolog Parsing an XML

2009-11-12 Thread GA

Hello guys,

I have the following scala code line:

XML.load(new java.io.InputStreamReader(conn.getInputStream, UTF-8))

I am downloading and parsing RSS feeds. This line parses most of the sites 
without problems but some sites give the following error:

Content is not allowed in prolog

Any ideas on how to solve this problem?

Thanks in advance,

GA


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



[Lift] Re: Content is not allowed in prolog Parsing an XML

2009-11-12 Thread GA

Sorry I've sent this email to the wrong list. 


On Nov 12, 2009, at 12:24 PM, GA wrote:

 
 Hello guys,
 
 I have the following scala code line:
 
 XML.load(new java.io.InputStreamReader(conn.getInputStream, UTF-8))
 
 I am downloading and parsing RSS feeds. This line parses most of the sites 
 without problems but some sites give the following error:
 
 Content is not allowed in prolog
 
 Any ideas on how to solve this problem?
 
 Thanks in advance,
 
 GA
 
 
  


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



[Lift] JsonResponse with non string values

2009-11-09 Thread GA

Hello guys,

I have the following code working ok:

 JsonResponse(JsObj(Op - 0,e - 0,id -  
newUser.id.toString))

The returned JSON message looks like the following:

{Op: 5, e: 0, id:123455}

I would like the message to be like this:

{Op: 5, e: 0, id: 123455}

  If I write the line like this:

 JsonResponse(JsObj(Op - 0,e - 0,id -  
newUser.id)

I receive a compilation error saying:

  found   : Long
  required: net.liftweb.http.js.JsExp with net.liftweb.util.Bindable

How can I return the long value without converting it to string?

Thanks in advance,

GA


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



[Lift] Re: JsonResponse with non string values

2009-11-09 Thread GA

Thanks for the answer.

This line does the trick:

newUser.id.asJsExp .

It returns a type net.liftweb.http.js.JE.numToJsExp.

GA


On Nov 9, 2009, at 6:31 PM, Ross Mellgren wrote:


 Bring the numToJsExp implicit into scope -- import
 net.liftweb.http.js.JE.numToJsExp

 -Ross

 On Nov 9, 2009, at 12:22 PM, GA wrote:


 Hello guys,

 I have the following code working ok:

JsonResponse(JsObj(Op - 0,e - 0,id -
 newUser.id.toString))

 The returned JSON message looks like the following:

 {Op: 5, e: 0, id:123455}

 I would like the message to be like this:

 {Op: 5, e: 0, id: 123455}

 If I write the line like this:

JsonResponse(JsObj(Op - 0,e - 0,id -
 newUser.id)

 I receive a compilation error saying:

 found   : Long
 required: net.liftweb.http.js.JsExp with net.liftweb.util.Bindable

 How can I return the long value without converting it to string?

 Thanks in advance,

 GA





 


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



[Lift] Concatenate JsObj objects

2009-11-09 Thread GA

Hello guys,

is it possible to concatenate JsObj objects?

Right now I have several JsonResponse calls depending on some  
conditions. I am building the responses including some error codes and  
different components.

I would like to build the answer part by part and concatenate the  
pieces at the end of the method in only one call to JsonResponse.

Here an example:

JsonResponse(JsObj(a - 1, b-2))

Would it be possible to have something like:

val response = JsObj(a - 1)

val response1=JsObj(b - 2)

then JsonResponse(JsObj(reponse ,response1))

A line exactly like this one gives a compilation error. I know I need  
to write it differently but I do not know how. Any suggestions?

Thanks in advance,

GA


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



[Lift] Working with database views

2009-11-08 Thread GA

Hello guys,

I need to create a database view to create a very specific query from  
an API. I am planning the following steps:

1. Create the view in the database directly
2. Create a model without a primary key extending Mapper instead of  
Keymapper
3. I am not going to add the view to Schemifier since I am managing  
the creation and maintenance of the object manually

My problem is that I am having problems to compile the Mapper class.  
This is the code I am trying to create:

class SyncVW extends Mapper[SyncVW] {
 def getSingleton = SyncVW

 object field1 extends MappedLong(this, ContentSource)
 object field2 extends MappedString(this, 999)
 object field3 extends MappedString(this,255)
 object field4 extends MappedString(this,30)
}
object SyncVW extends SyncVW with Mapper[SyncVW]


The compilation error is in the def getSingleton line. The compiler  
is expecting a Mapper[SyncVW] object and it is receiving SyncVW. What  
am I doing wrong?

Thanks,

GA


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



[Lift] Re: Working with database views

2009-11-08 Thread GA

Yes, it just did the trick. It compiles now.

Why is it working now? Isn't it Mapper also a MetaMapper?


On Nov 8, 2009, at 12:27 PM, Jeppe Nejsum Madsen wrote:


 GA my_li...@me.com writes:

 Hello guys,

 I need to create a database view to create a very specific query from
 an API. I am planning the following steps:

 1. Create the view in the database directly
 2. Create a model without a primary key extending Mapper instead of
 Keymapper
 3. I am not going to add the view to Schemifier since I am managing
 the creation and maintenance of the object manually

 My problem is that I am having problems to compile the Mapper class.
 This is the code I am trying to create:

 class SyncVW extends Mapper[SyncVW] {
 def getSingleton = SyncVW

 object field1 extends MappedLong(this, ContentSource)
 object field2 extends MappedString(this, 999)
 object field3 extends MappedString(this,255)
 object field4 extends MappedString(this,30)
 }
 object SyncVW extends SyncVW with Mapper[SyncVW]

 I think this last line should read

 object SyncVW extends SyncVW with MetaMapper[SyncVW]

 /Jeppe

 


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



[Lift] RSS Library

2009-10-30 Thread GA

Hello guys,

is there any standard RSS Library to parse RSS and Atom feeds from a  
scala client?

Thanks in advance,

GA


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



[Lift] A better way to create a JSON Response

2009-10-29 Thread GA

Hello guys,

I have build a small test API to learn how to receive and respond with  
JSON formatted documents. I have managed to make it work but I do not  
think I am using the most appropriate classes in my example.

This is the example:

 def jsonTest(req: Req): LiftResponse = {

 import net.liftweb.json.JsonAST._
 import net.liftweb.json.Printer.pretty
 implicit val formats = net.liftweb.json.DefaultFormats //  
Brings in default date formats etc.
 case class Person(name: String, password: String)
 val json = parse(req.body.map(bytes = new String(bytes,  
UTF-8)) openOr )
 val person = json.extract[Person]
 Log.info(person.name)
 PlainTextResponse(pretty(render(json)))
 }

I am receiving a JSON document. I parse it and I place it inside of a  
json object. Then I print one field in the log to check that the  
extraction was ok, and I respond with the very same document as plain  
text.

The client receives the document again without problems.

My question is about the response. Is it ok to respond as plain text?  
Or is it a more direct way to do it?

Thanks in advance,

GA


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



[Lift] How to receive content-type application/json in a Lift API

2009-10-27 Thread GA

Hello guys,

I have a small Lift API that has to receive JSON content. The content- 
type is specified as application/json. The API method is written as  
follows:

 def jsonTest(req: Req): LiftResponse = {

 implicit val formats = net.liftweb.json.DefaultFormats //  
Brings in default date formats etc.
 case class Person(name: String, password: String)
 val json = parse(req.body.toString) /* Line that fails */
 val person = json.extract[Person]
 CreatedResponse(wrapXmlBody(operation id=jsonTest  
success=true /operation), application/json)
 }


I want to parse the content using the net.liftweb.jsonParser but the  
server returns HTTP 500 error.

If the content-type is text/xml, the message comes inside of req.xml,  
where does it come when it is application/json?

Thanks in advance,

GA


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



[Lift] Re: How to receive content-type application/json in a Lift API

2009-10-27 Thread GA
Thanks David.

It works with a little change.

I cannot do parse(new String(req.body, UTF-8)) directly, because the  
type of req.body is net.liftweb.util.Box[Array[Byte]]. So I did this:

 var message = 
 for (i - req.body) {
 message = new String(i, UTF-8)
 }
 val json = parse(message)

Is there an easier way to write this? I am quite new in scala yet.

Thanks,

GA



On Oct 27, 2009, at 5:09 PM, David Pollak wrote:



 On Tue, Oct 27, 2009 at 9:05 AM, GA my_li...@me.com wrote:

 Hello guys,

 I have a small Lift API that has to receive JSON content. The content-
 type is specified as application/json. The API method is written as
 follows:

 def jsonTest(req: Req): LiftResponse = {

 implicit val formats = net.liftweb.json.DefaultFormats //
 Brings in default date formats etc.
 case class Person(name: String, password: String)
 val json = parse(req.body.toString) /* Line that fails */
 val person = json.extract[Person]
 CreatedResponse(wrapXmlBody(operation id=jsonTest
 success=true /operation), application/json)
 }


 I want to parse the content using the net.liftweb.jsonParser but the
 server returns HTTP 500 error.

 req.body is an Array[Byte].  calling .toString on it will not yield  
 a String representing the Array[Byte].

 Try parse(new String(req.body, UTF-8))

 If this doesn't work, please include the stack trace.


 If the content-type is text/xml, the message comes inside of req.xml,
 where does it come when it is application/json?

 Thanks in advance,

 GA






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



[Lift] Re: I am not able to save a many-to-many relationship from an API

2009-10-26 Thread GA
I have made a test that worked. I have modified my code like this:

 newUser.save
 newUser.devices += newDevice
 newUser.save

The newDevice was already saved. It looks like both parents must be  
saved before I save the relationship. Am I right? or I am doing  
something wrong?

Thanks,

GA




On Oct 26, 2009, at 6:55 PM, GA wrote:

 Hello guys,

 I have a many-to-many relationship between two mappers called, Users  
 and Devices.

 There is also an API that receives and XML message that contains one  
 user and one device.

 The API could create the Device and User with the relationship or it  
 could create only the relationship in case the users and/or device  
 already exists.

 The problem I have is that the API creates the User and the Device,  
 but the not the relationship. This is the code that saves the  
 records (just a test for a now):

 def addUser(req: Req): LiftResponse = {

 var tempUserName = 
 var tempDeviceName = 
 var deviceAlreadyExists = false

 val newUser = new User
 val newDevice = new Device
 req.xml match {
 case Full(person{parameters @_*}/person) = {
 for(parameter - parameters){ parameter match {
 case userName{userName}/userName =  
 tempUserName = userName.text
 case firstName{firstName}/firstName  
 = newUser.firstName(firstName.text)
 case lastName{lastName}/lastName =  
 newUser.lastName(lastName.text)
 case password{password}/password =  
 newUser.password(password.text)
 case email{email}/email =  
 newUser.email(email.text)
 case createdon{createdOn}/createdon  
 = newUser.createdOn(new java.util.Date(createdOn.text))
 case updatedon{updatedOn}/updatedon  
 = newUser.updatedOn(new java.util.Date(updatedOn.text))
 case device{deviceName}/device =  
 tempDeviceName = deviceName.text
 case _ =
 }
 }
 try {
 Device.find(By 
 (Device.deviceName,tempDeviceName)) match {
 case Full(deviceRequested) =
 deviceAlreadyExists = true
 case _ = {
 newDevice.deviceName 
 (tempDeviceName)
 newDevice.createdBy(tempUserName)
 newDevice.createdOn 
 (newUser.createdOn)
 newDevice.updatedBy(tempUserName)
 newDevice.updatedOn 
 (newUser.updatedOn)
 newDevice.save
 }
 }
 User.find(By(User.userName, tempUserName))  
 match {
 case Full(userRequested) =
 CreatedResponse(wrapXmlBody 
 (operation id=addPerson success=1/operation), text/xml)
 case _ = {
 newUser.userName(tempUserName)
 newUser.createdBy(tempUserName)
 newUser.updatedBy(tempUserName)
 newUser.devices.clear
 newUser.validated(true)
 newUser.devices += newDevice
 newUser.save
 CreatedResponse(wrapXmlBody 
 (operation id=addPerson success=0/operation), text/xml)
 }
 }
 }
 catch {
 case e = Log.error(Could not add person/ 
 device, e); BadResponse()
 }
 }
 case _ = Log.error(Request was malformed +req.view);  
 BadResponse()
 }
 }

 The field devices is the MappedManyToMany field within the User  
 mapper.

 What am I doing wrong?

 Thanks in advance,

 GA


 


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



[Lift] Re: I am not able to save a many-to-many relationship from an API

2009-10-26 Thread GA
Thanks for the answer.

I understand now. But I have a follow up question. This is the code  
for my relationship table, which I've done following some examples and  
previous discussions about this subject:

class UserDevice extends LongKeyedMapper[UserDevice] with IdPK {
 def getSingleton = UserDevice

 object userId extends MappedLongForeignKey(this, User)
 object deviceId extends MappedLongForeignKey(this, Device)
}

object UserDevice extends UserDevice with LongKeyedMetaMapper 
[UserDevice]


The question is:

Shouldn't be both fields (userID and deviceID) be the primary key of  
this table? Why am I using IdPK? Couldn't I just remove it?

Thanks,

GA


On Oct 26, 2009, at 7:49 PM, Jim Barrows wrote:

 On Mon, Oct 26, 2009 at 11:43 AM, GA my_li...@me.com wrote:
 I have made a test that worked. I have modified my code like this:

 newUser.save
 newUser.devices += newDevice
 newUser.save

 The newDevice was already saved. It looks like both parents must be  
 saved before I save the relationship. Am I right? or I am doing  
 something wrong?

 No, you always have to save the parents before the relationship.   
 Well.. as long as the relationship table has the parents PK as it's  
 PK's anyway.
 If you remove that restriction, then nah.. it doesn't matter.  Of  
 course that way lies madness


 Thanks,

 GA




 On Oct 26, 2009, at 6:55 PM, GA wrote:

 Hello guys,

 I have a many-to-many relationship between two mappers called,  
 Users and Devices.

 There is also an API that receives and XML message that contains  
 one user and one device.

 The API could create the Device and User with the relationship or  
 it could create only the relationship in case the users and/or  
 device already exists.

 The problem I have is that the API creates the User and the Device,  
 but the not the relationship. This is the code that saves the  
 records (just a test for a now):

 def addUser(req: Req): LiftResponse = {

 var tempUserName = 
 var tempDeviceName = 
 var deviceAlreadyExists = false

 val newUser = new User
 val newDevice = new Device
 req.xml match {
 case Full(person{parameters @_*}/person) = {
 for(parameter - parameters){ parameter match {
 case userName{userName}/userName =  
 tempUserName = userName.text
 case firstName{firstName}/firstName  
 = newUser.firstName(firstName.text)
 case lastName{lastName}/lastName =  
 newUser.lastName(lastName.text)
 case password{password}/password =  
 newUser.password(password.text)
 case email{email}/email =  
 newUser.email(email.text)
 case createdon{createdOn}/createdon  
 = newUser.createdOn(new java.util.Date(createdOn.text))
 case updatedon{updatedOn}/updatedon  
 = newUser.updatedOn(new java.util.Date(updatedOn.text))
 case device{deviceName}/device =  
 tempDeviceName = deviceName.text
 case _ =
 }
 }
 try {
 Device.find(By 
 (Device.deviceName,tempDeviceName)) match {
 case Full(deviceRequested) =
 deviceAlreadyExists = true
 case _ = {
 newDevice.deviceName 
 (tempDeviceName)
 newDevice.createdBy(tempUserName)
 newDevice.createdOn 
 (newUser.createdOn)
 newDevice.updatedBy(tempUserName)
 newDevice.updatedOn 
 (newUser.updatedOn)
 newDevice.save
 }
 }
 User.find(By(User.userName, tempUserName))  
 match {
 case Full(userRequested) =
 CreatedResponse(wrapXmlBody 
 (operation id=addPerson success=1/operation), text/xml)
 case _ = {
 newUser.userName(tempUserName)
 newUser.createdBy(tempUserName)
 newUser.updatedBy(tempUserName)
 newUser.devices.clear
 newUser.validated(true)
 newUser.devices += newDevice
 newUser.save
 CreatedResponse(wrapXmlBody 
 (operation id=addPerson success=0/operation), text/xml

[Lift] Re: Problem to process a PUT request in a lift API

2009-10-24 Thread GA
Thanks David. You were right. I added this line:

conn.addRequestProperty(content-type, text/xml)

and it works perfectly.

Thanks again.

GA



On Oct 23, 2009, at 7:36 PM, David Pollak wrote:

 In order to trigger XML parsing, you have to set the Content-Type to  
 text/xml

 On Fri, Oct 23, 2009 at 10:30 AM, GA my_li...@me.com wrote:

 I have printed Req in the log and it looks like the XML is really  
 empty:

 Req(List(), Map(), ParsePath(List(api, person),,true,false), ,
 PutRequest, Empty)

 This is how I send the XML:

 def post(url:URL):String = {

 val message =
 person
 userNameJohn/userName
 firstNameJohn/firstName
 lastNameSmith/lastName
 passworda/password
 emaila...@.com/email
 createdon10/12/2009/createdon
 createdbyJohn/createdby
 updatedon10/12/2009/updatedon
 updatedbyJohn/updatedby
 /person

 url.openConnection match { case conn: HttpURLConnection = {
 conn.setRequestMethod(PUT)
 conn.setDoOutput(true)
 //conn.connect
 conn.getOutputStream.write
 (message.mkString.getBytes)
 scala.io.Source.fromInputStream
 (conn.getInputStream).getLines.mkString
 }
 }
 }

 Any suggestions?

 Cheers,

 GA




 On Oct 23, 2009, at 5:15 PM, GA wrote:

 
  Hello guys,
 
  I have created an API to process a PUT request and a GET request.  
 The
  GET works perfectly fine, but with the PUT the XML seems to be  
 lost in
  its way. I have the following code:
 
   def dispatch: LiftRules.DispatchPF = {
  case Req(api :: person :: userName :: Nil, ,
  GetRequest) =
  () = showPerson(userName)
 
case r @ Req(List(api, person), , PutRequest) =
  () = addPerson(r)
  }
 
  In the addPerson method I have the following code:
 
  req.xml match {
  case Full(person{parameters @_*}/person) = {
  for(parameter - parameters){ parameter match {
 
All the XML parsing
 
  }
  }
 
  try {
  person.validate match {
  case Nil =
  person.save
  CreatedResponse(wrapXmlBody
  (operation id=addPerson success=true/operation), text/xml)
  case _ =
  CreatedResponse(wrapXmlBody
  (operation id=addPerson success=false/operation), text/ 
 xml)
  }
  }
  catch {
  case e = Log.error(Could not add person,
  e); BadResponse()
  }
  }
  case _ = Log.error(Request was malformed +req.view);
  BadResponse()
  }
 
  The method always goes through the last case: Request was  
 malformed.
 
  I was checking the values to req.view and req.xml.toString and the
  results are person and empty, respectively.
 
  Any ideas about what it could be happening?
 
  Thanks in advance,
 
  GA
 
 
  






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



[Lift] Problem to process a PUT request in a lift API

2009-10-23 Thread GA

Hello guys,

I have created an API to process a PUT request and a GET request. The  
GET works perfectly fine, but with the PUT the XML seems to be lost in  
its way. I have the following code:

  def dispatch: LiftRules.DispatchPF = {
 case Req(api :: person :: userName :: Nil, ,  
GetRequest) =
 () = showPerson(userName)

   case r @ Req(List(api, person), , PutRequest) =
 () = addPerson(r)
 }

In the addPerson method I have the following code:

req.xml match {
 case Full(person{parameters @_*}/person) = {
 for(parameter - parameters){ parameter match {

All the XML parsing

 }
 }

 try {
 person.validate match {
 case Nil =
 person.save
 CreatedResponse(wrapXmlBody 
(operation id=addPerson success=true/operation), text/xml)
 case _ =
 CreatedResponse(wrapXmlBody 
(operation id=addPerson success=false/operation), text/xml)
 }
 }
 catch {
 case e = Log.error(Could not add person,  
e); BadResponse()
 }
 }
 case _ = Log.error(Request was malformed +req.view);  
BadResponse()
 }

The method always goes through the last case: Request was malformed.

I was checking the values to req.view and req.xml.toString and the  
results are person and empty, respectively.

Any ideas about what it could be happening?

Thanks in advance,

GA


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



[Lift] Re: Problem to process a PUT request in a lift API

2009-10-23 Thread GA

I have printed Req in the log and it looks like the XML is really empty:

Req(List(), Map(), ParsePath(List(api, person),,true,false), ,  
PutRequest, Empty)

This is how I send the XML:

def post(url:URL):String = {

 val message =
 person
 userNameJohn/userName
 firstNameJohn/firstName
 lastNameSmith/lastName
 passworda/password
 emaila...@.com/email
 createdon10/12/2009/createdon
 createdbyJohn/createdby
 updatedon10/12/2009/updatedon
 updatedbyJohn/updatedby
 /person

 url.openConnection match { case conn: HttpURLConnection = {
 conn.setRequestMethod(PUT)
 conn.setDoOutput(true)
 //conn.connect
 conn.getOutputStream.write 
(message.mkString.getBytes)
 scala.io.Source.fromInputStream 
(conn.getInputStream).getLines.mkString
 }
}
}

Any suggestions?

Cheers,

GA




On Oct 23, 2009, at 5:15 PM, GA wrote:


 Hello guys,

 I have created an API to process a PUT request and a GET request. The
 GET works perfectly fine, but with the PUT the XML seems to be lost in
 its way. I have the following code:

  def dispatch: LiftRules.DispatchPF = {
 case Req(api :: person :: userName :: Nil, ,
 GetRequest) =
 () = showPerson(userName)

   case r @ Req(List(api, person), , PutRequest) =
 () = addPerson(r)
 }

 In the addPerson method I have the following code:

 req.xml match {
 case Full(person{parameters @_*}/person) = {
 for(parameter - parameters){ parameter match {

   All the XML parsing

 }
 }

 try {
 person.validate match {
 case Nil =
 person.save
 CreatedResponse(wrapXmlBody
 (operation id=addPerson success=true/operation), text/xml)
 case _ =
 CreatedResponse(wrapXmlBody
 (operation id=addPerson success=false/operation), text/xml)
 }
 }
 catch {
 case e = Log.error(Could not add person,
 e); BadResponse()
 }
 }
 case _ = Log.error(Request was malformed +req.view);
 BadResponse()
 }

 The method always goes through the last case: Request was malformed.

 I was checking the values to req.view and req.xml.toString and the
 results are person and empty, respectively.

 Any ideas about what it could be happening?

 Thanks in advance,

 GA


 


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



[Lift] Re: Why the liftweb doesn't use mysql as the default database ?

2009-10-21 Thread GA
I absolutely  agree with the last statement. We changed from MySQL to  
PostgreSQL. Most of us here are Oracle DBAs, and we feel at home with  
PostgreSQL. We have made tests in the three platforms and we have  
chosen PostgreSQL. PostgreSQL gives us most of the main features of  
Oracle in an open source platform.

Cheers,



On Oct 19, 2009, at 6:18 PM, David Pollak wrote:



 On Mon, Oct 19, 2009 at 1:10 AM, Neil.Lv anim...@gmail.com wrote:

 Hi all,

   Why the liftweb doesn't use MySQL as the default database ?

 In addition to the reasons listed in this thread (most importantly,  
 Lift default apps just work with just Java and Maven installed), I  
 recommend against using MySQL.

 Both PostgreSQL and H2 are higher performance and PostgreSQL has far  
 more features.

 I have a personal bond with the MySQL folks and really wish that I  
 could say different, but I've also been involved with some of the  
 highest volume MySQL-based sites around and seen the benchmarks of  
 MySQL vs. PostgreSQL.  It's pretty simple, if you have a choice  
 between the two, use PostgeSQL.


   Thanks very much !

 Cheers,
  Neil





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



[Lift] Re: Where is the default.props in the lift1.1-M6 and the Full method ?

2009-10-21 Thread GA

Hello Neil,

the file must be located in src/main/resources/props/default.props

Here you have an example that it is working for us:

db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://localhost/dbname
db.user=userName
db.password=Password

You should create the props directory and the file.

I do not know about the Full method. I also should ask the silly  
question. :-)

I hope this helps.

Cheers,

GA



On Oct 21, 2009, at 10:24 AM, Neil.Lv wrote:


 Hi all,

   Where is the default.props in the lift1.1-M6 whether the file name
 is defualt.props ?

   I see this code in the Boot.scala

   ###
Props.get(db.driver)
  ###

   If it uses the default Props, and where is it ?

   And i have a silly question about the helper method Full(). What
 can it do for us?

   ###
 Full(user), Full(pwd)) = DriverManager.getConnection(dbUrl,
 user, pwd)
   ###

   Thanks for any information!

 Cheers,
  Neil

 


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



[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
Is there any way to reset maven's repository? I think there is  
something corrupt because the behavior is really strange. I think this  
is the cause of my error.

Thanks,


On Oct 15, 2009, at 5:52 PM, GA wrote:

 It is strange. I do not have the entries that you are saying in the  
 pom.xml file, but I do not have them in the 1.0 neither. I have also  
 created a project with archetype-basic and I have having the same  
 error. This is the command I am using to create the project. Is it ok?

 mvn archetype:generate -U -DarchetypeGroupId=net.liftweb - 
 DarchetypeArtifactId=lift-archetype-basic -Dversion=1.1-SNAPSHOT - 
 DremoteRepositories=http://scala-tools.org/repo-snapshots - 
 DgroupId=com.tribes.ga -DartifactId=gaTribesServer-d0.1.1

 Thanks,

 GA


 On Oct 15, 2009, at 5:35 PM, David Pollak wrote:

 I'm not sure what's going on.  This code worked for me in a brand  
 new archetype-basic 1.1-SNAPSHOT project.

 Please make sure the following entry is in your pom.xml file:


 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency


 Thanks,

 David

 On Thu, Oct 15, 2009 at 8:27 AM, GA my_li...@me.com wrote:
 Here you have the complete model file.

 It is just a test class. The error I have is Not found: Type  
 IdPK. I get it when I try to compile the file. Also NetBeans is  
 showing the error. The same file was working fine in Lift 1.0.

 I have created a new project based on the Lift snapshot 1.1  
 archetype-blank and then copied all my files from the previous  
 project. The original 1.0 project was created with the archetype- 
 basic, could this be the source of the error?

 Thanks,


 package com.tribes.ga.model

 import net.liftweb._
 import mapper._
 import util._
 import scala.xml.{NodeSeq,Text}
 import _root_.java.text.{DateFormat,SimpleDateFormat}

 class Person extends LongKeyedMapper[Person] with IdPK {
 def getSingleton = Person

 object userName extends MappedString(this, 30)
 object password extends MappedString(this, 30)
 object firstName extends MappedString(this, 30)
 object lastName extends MappedString(this, 30)
 object email extends MappedString(this, 255)
 object deviceName extends MappedString(this, 30)
 object createdOn extends MappedDateTime(this)
 object updatedOn extends MappedDateTime(this)
 object createdBy extends MappedString(this, 25)
 object updatedBy extends MappedString(this, 25)

 def toXML: NodeSeq = {
 val id = http://www.gatribes.com/api/expense/; + this.id
 val formatter = new  SimpleDateFormat(-MM- 
 dd'T'HH:mm:ss'Z')

 person
 id{id}/id
 accountname{getUserName(userName.is)}/accountname
 firstName{firstName.is}/firstName
 lastName{lastName.is}/lastName
 /person
 }

 private def getUserName(userName: String): String = {
 Person.find(By(Person.userName, userName)) match {
 case Full(a) = a.userName
 case _ = No Account Name
 }
 }


 }

 object Person extends Person with LongKeyedMetaMapper[Person]



 On Oct 15, 2009, at 5:04 PM, David Pollak wrote:

 Can you post an example (complete file) of something's not working?

 On Thu, Oct 15, 2009 at 3:21 AM, GA my_li...@me.com wrote:

 Hello guys,

 I have a Lift project working perfectly in version 1.0, but when I
 moved it to Lift 1.1 I am having errors with the Modeler with the  
 type
 IdPK. Any ideas?

 Thanks,

 GA






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




 


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



[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
Thanks for the info. I downloaded all the jars again, but it did not  
solved my problem. Now for some reason, if I initiate everything from  
scratch even with version 1.0 it does not work anymore.

If I add the entry:

  dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

to the pom.xml manually, I receive the following error when I run the  
command mvn jetty:run:

INFO] Unable to find resource 'net.liftweb:lift-mapper:jar:1.1- 
SNAPSHOT' in repository scala-tools.org (http://scala-tools.org/repo-releases 
)
[INFO]  

[ERROR] BUILD ERROR
[INFO]  

[INFO] Failed to resolve artifact.

Missing:
--
1) net.liftweb:lift-mapper:jar:1.1-SNAPSHOT

   Try downloading the file manually from the project website.

   Then, install it using the command:
   mvn install:install-file -DgroupId=net.liftweb - 
DartifactId=lift-mapper -Dversion=1.1-SNAPSHOT -Dpackaging=jar -Dfile=/ 
path/to/file

   Alternatively, if you host your own repository you can deploy the  
file there:
   mvn deploy:deploy-file -DgroupId=net.liftweb -DartifactId=lift- 
mapper -Dversion=1.1-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file - 
Durl=[url] -DrepositoryId=[id]

   Path to dependency:
1) com.tribes.ga:gaTribesServer1:war:1.1-SNAPSHOT
2) net.liftweb:lift-mapper:jar:1.1-SNAPSHOT

--
1 required artifact is missing.


It is very strange. It was working before without problems. Any ideas?

Thanks,

GA



On Oct 16, 2009, at 11:09 AM, Timothy Perrett wrote:

 Just remove ~/.m2

 The next time you make a maven call it'll then download all the new  
 JAR files.

 Cheers, Tim

 On 16 Oct 2009, at 09:35, GA wrote:

 Is there any way to reset maven's repository? I think there is  
 something corrupt because the behavior is really strange. I think  
 this is the cause of my error.

 Thanks,


 On Oct 15, 2009, at 5:52 PM, GA wrote:

 It is strange. I do not have the entries that you are saying in  
 the pom.xml file, but I do not have them in the 1.0 neither. I  
 have also created a project with archetype-basic and I have having  
 the same error. This is the command I am using to create the  
 project. Is it ok?

 mvn archetype:generate -U -DarchetypeGroupId=net.liftweb - 
 DarchetypeArtifactId=lift-archetype-basic -Dversion=1.1-SNAPSHOT - 
 DremoteRepositories=http://scala-tools.org/repo-snapshots - 
 DgroupId=com.tribes.ga -DartifactId=gaTribesServer-d0.1.1

 Thanks,

 GA


 On Oct 15, 2009, at 5:35 PM, David Pollak wrote:

 I'm not sure what's going on.  This code worked for me in a brand  
 new archetype-basic 1.1-SNAPSHOT project.

 Please make sure the following entry is in your pom.xml file:


 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency


 Thanks,

 David

 On Thu, Oct 15, 2009 at 8:27 AM, GA my_li...@me.com wrote:
 Here you have the complete model file.

 It is just a test class. The error I have is Not found: Type  
 IdPK. I get it when I try to compile the file. Also NetBeans is  
 showing the error. The same file was working fine in Lift 1.0.

 I have created a new project based on the Lift snapshot 1.1  
 archetype-blank and then copied all my files from the previous  
 project. The original 1.0 project was created with the archetype- 
 basic, could this be the source of the error?

 Thanks,


 package com.tribes.ga.model

 import net.liftweb._
 import mapper._
 import util._
 import scala.xml.{NodeSeq,Text}
 import _root_.java.text.{DateFormat,SimpleDateFormat}

 class Person extends LongKeyedMapper[Person] with IdPK {
 def getSingleton = Person

 object userName extends MappedString(this, 30)
 object password extends MappedString(this, 30)
 object firstName extends MappedString(this, 30)
 object lastName extends MappedString(this, 30)
 object email extends MappedString(this, 255)
 object deviceName extends MappedString(this, 30)
 object createdOn extends MappedDateTime(this)
 object updatedOn extends MappedDateTime(this)
 object createdBy extends MappedString(this, 25)
 object updatedBy extends MappedString(this, 25)

 def toXML: NodeSeq = {
 val id = http://www.gatribes.com/api/expense/; + this.id
 val formatter = new  SimpleDateFormat(-MM- 
 dd'T'HH:mm:ss'Z')

 person
 id{id}/id
 accountname{getUserName(userName.is)}/accountname
 firstName{firstName.is}/firstName
 lastName{lastName.is}/lastName
 /person
 }

 private def getUserName(userName: String): String = {
 Person.find(By(Person.userName, userName)) match {
 case Full(a) = a.userName
 case _ = No Account Name
 }
 }


 }

 object Person

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
This is what it comes with my pom.xml

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

   pluginRepositories
 pluginRepository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /pluginRepository
   /pluginRepositories


It is ok?

Cheers,

GA


On Oct 16, 2009, at 12:33 PM, Timothy Perrett wrote:


 You must be missing the correct repository tag. Check that you have:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 Cheers, Tim

 On 16 Oct 2009, at 10:58, GA wrote:

 Thanks for the info. I downloaded all the jars again, but it did  
 not solved my problem. Now for some reason, if I initiate  
 everything from scratch even with version 1.0 it does not work  
 anymore.

 If I add the entry:

  dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 to the pom.xml manually, I receive the following error when I run  
 the command mvn jetty:run:

 INFO] Unable to find resource 'net.liftweb:lift-mapper:jar:1.1- 
 SNAPSHOT' in repository scala-tools.org 
 (http://scala-tools.org/repo-releases 
 )
 [INFO]  
 
 [ERROR] BUILD ERROR
 [INFO]  
 
 [INFO] Failed to resolve artifact.

 Missing:
 --
 1) net.liftweb:lift-mapper:jar:1.1-SNAPSHOT

   Try downloading the file manually from the project website.

   Then, install it using the command:
   mvn install:install-file -DgroupId=net.liftweb - 
 DartifactId=lift-mapper -Dversion=1.1-SNAPSHOT -Dpackaging=jar - 
 Dfile=/path/to/file

   Alternatively, if you host your own repository you can deploy the  
 file there:
   mvn deploy:deploy-file -DgroupId=net.liftweb - 
 DartifactId=lift-mapper -Dversion=1.1-SNAPSHOT -Dpackaging=jar - 
 Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]

   Path to dependency:
  1) com.tribes.ga:gaTribesServer1:war:1.1-SNAPSHOT
  2) net.liftweb:lift-mapper:jar:1.1-SNAPSHOT

 --
 1 required artifact is missing.


 It is very strange. It was working before without problems. Any  
 ideas?

 Thanks,

 GA



 On Oct 16, 2009, at 11:09 AM, Timothy Perrett wrote:

 Just remove ~/.m2

 The next time you make a maven call it'll then download all the  
 new JAR files.

 Cheers, Tim

 On 16 Oct 2009, at 09:35, GA wrote:

 Is there any way to reset maven's repository? I think there is  
 something corrupt because the behavior is really strange. I think  
 this is the cause of my error.

 Thanks,


 On Oct 15, 2009, at 5:52 PM, GA wrote:

 It is strange. I do not have the entries that you are saying in  
 the pom.xml file, but I do not have them in the 1.0 neither. I  
 have also created a project with archetype-basic and I have  
 having the same error. This is the command I am using to create  
 the project. Is it ok?

 mvn archetype:generate -U -DarchetypeGroupId=net.liftweb - 
 DarchetypeArtifactId=lift-archetype-basic -Dversion=1.1-SNAPSHOT  
 -DremoteRepositories=http://scala-tools.org/repo-snapshots - 
 DgroupId=com.tribes.ga -DartifactId=gaTribesServer-d0.1.1

 Thanks,

 GA


 On Oct 15, 2009, at 5:35 PM, David Pollak wrote:

 I'm not sure what's going on.  This code worked for me in a  
 brand new archetype-basic 1.1-SNAPSHOT project.

 Please make sure the following entry is in your pom.xml file:


 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency


 Thanks,

 David

 On Thu, Oct 15, 2009 at 8:27 AM, GA my_li...@me.com wrote:
 Here you have the complete model file.

 It is just a test class. The error I have is Not found: Type  
 IdPK. I get it when I try to compile the file. Also NetBeans  
 is showing the error. The same file was working fine in Lift 1.0.

 I have created a new project based on the Lift snapshot 1.1  
 archetype-blank and then copied all my files from the  
 previous project. The original 1.0 project was created with the  
 archetype-basic, could this be the source of the error?

 Thanks,


 package com.tribes.ga.model

 import net.liftweb._
 import mapper._
 import util._
 import scala.xml.{NodeSeq,Text}
 import _root_.java.text.{DateFormat,SimpleDateFormat}

 class Person extends LongKeyedMapper[Person] with IdPK {
 def getSingleton = Person

 object userName extends MappedString(this, 30)
 object password extends MappedString(this, 30)
 object firstName extends MappedString(this, 30)
 object lastName extends MappedString

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
More errors. Shouldn't this be working right after the creation? I am  
talking about brand new projects. It is absolutely empty. It has only  
the delivered User model.


[WARNING] Multiple versions of scala libraries detected!
[INFO] includes = [**/*.scala,]
[INFO] excludes = []
[INFO] Compiling 3 source files to /Users/gacilu/NetBeansProjects/ 
gaTribesServer/target/classes
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/com/ 
tribes/ga/model/User.scala:9: error: wrong number of type arguments  
for net.liftweb.mapper.MetaMegaProtoUser, should be 1
object User extends User with MetaMegaProtoUser[User, User with  
KeyedMetaMapper[Long, User]] {
   ^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/com/ 
tribes/ga/model/User.scala:26: error: type mismatch;
  found   : com.tribes.ga.model.User.type (with underlying type object  
com.tribes.ga.model.User)
  required: net.liftweb.mapper.KeyedMetaMapper 
[Long,com.tribes.ga.model.User]
   def getSingleton = User // what's the meta server
  ^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:21: error: overloaded method value schemify with  
alternatives (Boolean,(= AnyRef) =  
Unit 
,net.liftweb.mapper.ConnectionIdentifier 
,net.liftweb.mapper.BaseMetaMapper*)List[String] and (Boolean,(=  
AnyRef) = Unit,net.liftweb.mapper.BaseMetaMapper*)List[String] cannot  
be applied to (Boolean,(= AnyRef) =  
Unit,com.tribes.ga.model.User.type)
 Schemifier.schemify(true, Log.infoF _, User)
^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:23: error: value addTemplateBefore is not a member  
of object net.liftweb.http.LiftRules
 LiftRules.addTemplateBefore(User.templates)
   ^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:26: error: type mismatch;
  found   : java.lang.String(/)
  required: net.liftweb.sitemap.Loc.Link 
[net.liftweb.sitemap.NullLocParams]
 val entries = Menu(Loc(Home, /, Home)) :: User.sitemap
^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:26: error: value sitemap is not a member of object  
com.tribes.ga.model.User
 val entries = Menu(Loc(Home, /, Home)) :: User.sitemap
  ^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:28: error: value requestLoans is not a member of  
object com.tribes.ga.model.User
 S.addAround(User.requestLoans)
  ^
/Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/bootstrap/ 
liftweb/Boot.scala:34: error: not found: type Can
   def newConnection(name: ConnectionIdentifier): Can[Connection] = {
  ^
8 errors found

Cheers,

GA



On Oct 16, 2009, at 2:23 PM, Timothy Perrett wrote:

 Yes, the error is important.

 Can you try a:

 mvn clean jetty:run

 Cheers, Tim

 On 16 Oct 2009, at 12:40, GA wrote:

 Ok, now we have an improvement. I did the following:

 I replaced the following part of my pom.xml:

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories


 with:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 I run mvn jetty:run and there were no changes. Then added what  
 David suggested yesterday:

 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 I run mvn jetty:run again and it started downloading jars like  
 crazy. So now I have a lift-mapper-1.1-SNAPSHOT.jar, but I receive  
 a warning when the server starts:

 2009-10-16 13:31:32.768::INFO:  jetty-6.1.21
 2009-10-16 13:31:32.908::INFO:  No Transaction manager found - if  
 your webapp requires one, please configure one.
 2009-10-16 13:31:33.154::WARN:  failed LiftFilter:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 org.mortbay.jetty.plugin.jetty6pluginwebappcont...@3549494e{/,/ 
 Users/gacilu/NetBeansProjects/gaTribesServer/src/main/webapp}:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 contexthandlercollect...@6f1a7e7f: java.lang.VerifyError: (class:  
 net/liftweb/util/EmptyBox, method: open_$bang signature: ()Ljava/ 
 lang/Object;) Can

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
I did it. This is the first par of my pom.xml

   modelVersion4.0.0/modelVersion
   groupIdcom.server/groupId
   artifactIdServer/artifactId
   version1.1-SNAPSHOT/version
   packagingwar/packaging
   nameServer/name
   inceptionYear2007/inceptionYear
   properties
 scala.version2.7.1/scala.version
   /properties

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

   pluginRepositories
 pluginRepository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /pluginRepository
   /pluginRepositories


I find something strange. Do you see the scala version 2.7.1?


This is the scala version in my command line:

Scala code runner version 2.7.5.final -- Copyright 2002-2009, LAMP/EPFL


Cheers,

GA



On Oct 16, 2009, at 2:57 PM, Timothy Perrett wrote:

 Try creating a blank project, not a basic one... Lets see what  
 happens then.

 Cheers, Tim

 On 16 Oct 2009, at 13:39, GA wrote:

 More errors. Shouldn't this be working right after the creation? I  
 am talking about brand new projects. It is absolutely empty. It has  
 only the delivered User model.


 [WARNING] Multiple versions of scala libraries detected!
 [INFO] includes = [**/*.scala,]
 [INFO] excludes = []
 [INFO] Compiling 3 source files to /Users/gacilu/NetBeansProjects/ 
 gaTribesServer/target/classes
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/com/ 
 tribes/ga/model/User.scala:9: error: wrong number of type arguments  
 for net.liftweb.mapper.MetaMegaProtoUser, should be 1
 object User extends User with MetaMegaProtoUser[User, User with  
 KeyedMetaMapper[Long, User]] {
   ^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/com/ 
 tribes/ga/model/User.scala:26: error: type mismatch;
  found   : com.tribes.ga.model.User.type (with underlying type  
 object com.tribes.ga.model.User)
  required: net.liftweb.mapper.KeyedMetaMapper 
 [Long,com.tribes.ga.model.User]
   def getSingleton = User // what's the meta server
  ^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:21: error: overloaded method value  
 schemify with alternatives (Boolean,(= AnyRef) =  
 Unit 
 ,net.liftweb.mapper.ConnectionIdentifier 
 ,net.liftweb.mapper.BaseMetaMapper*)List[String] and (Boolean,(=  
 AnyRef) = Unit,net.liftweb.mapper.BaseMetaMapper*)List[String]  
 cannot be applied to (Boolean,(= AnyRef) =  
 Unit,com.tribes.ga.model.User.type)
 Schemifier.schemify(true, Log.infoF _, User)
^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:23: error: value addTemplateBefore is  
 not a member of object net.liftweb.http.LiftRules
 LiftRules.addTemplateBefore(User.templates)
   ^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:26: error: type mismatch;
  found   : java.lang.String(/)
  required: net.liftweb.sitemap.Loc.Link 
 [net.liftweb.sitemap.NullLocParams]
 val entries = Menu(Loc(Home, /, Home)) :: User.sitemap
^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:26: error: value sitemap is not a  
 member of object com.tribes.ga.model.User
 val entries = Menu(Loc(Home, /, Home)) :: User.sitemap
  ^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:28: error: value requestLoans is not a  
 member of object com.tribes.ga.model.User
 S.addAround(User.requestLoans)
  ^
 /Users/gacilu/NetBeansProjects/gaTribesServer/src/main/scala/ 
 bootstrap/liftweb/Boot.scala:34: error: not found: type Can
   def newConnection(name: ConnectionIdentifier): Can[Connection] = {
  ^
 8 errors found

 Cheers,

 GA



 On Oct 16, 2009, at 2:23 PM, Timothy Perrett wrote:

 Yes, the error is important.

 Can you try a:

 mvn clean jetty:run

 Cheers, Tim

 On 16 Oct 2009, at 12:40, GA wrote:

 Ok, now we have an improvement. I did the following:

 I replaced the following part of my pom.xml:

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories


 with:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 I run mvn jetty:run and there were no changes. Then added what  
 David suggested yesterday:

 dependency
   groupIdnet.liftweb

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
Why is it getting the 2.7.1 version in first place? The pom.xml is  
created by maven from the archetype and repository right?

Is it perhaps some environment setup that I have or I should have?



On Oct 16, 2009, at 4:24 PM, David Pollak wrote:

 You have to make sure that the version of Scala in your pom.xml file  
 is 2.7.5.

 On Fri, Oct 16, 2009 at 4:40 AM, GA my_li...@me.com wrote:
 Ok, now we have an improvement. I did the following:

 I replaced the following part of my pom.xml:

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories


 with:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 I run mvn jetty:run and there were no changes. Then added what David  
 suggested yesterday:

 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 I run mvn jetty:run again and it started downloading jars like  
 crazy. So now I have a lift-mapper-1.1-SNAPSHOT.jar, but I receive a  
 warning when the server starts:

 2009-10-16 13:31:32.768::INFO:  jetty-6.1.21
 2009-10-16 13:31:32.908::INFO:  No Transaction manager found - if  
 your webapp requires one, please configure one.
 2009-10-16 13:31:33.154::WARN:  failed LiftFilter:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw Throwable  
 objects
 2009-10-16 13:31:33.155::WARN:  failed  
 org.mortbay.jetty.plugin.jetty6pluginwebappcont...@3549494e{/,/Users/ 
 gacilu/NetBeansProjects/gaTribesServer/src/main/webapp}:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw Throwable  
 objects
 2009-10-16 13:31:33.155::WARN:  failed  
 contexthandlercollect...@6f1a7e7f: java.lang.VerifyError: (class:  
 net/liftweb/util/EmptyBox, method: open_$bang signature: ()Ljava/ 
 lang/Object;) Can only throw Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed handlercollect...@3466fcd5:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw Throwable  
 objects
 2009-10-16 13:31:33.155::WARN:  Error starting handlers
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw Throwable  
 objects
   at net.liftweb.http.LiftRules$.init(LiftRules.scala:231)


 Is this warning important?

 Thanks for your help guys. I really appreciate it.

 GA




 On Oct 16, 2009, at 1:17 PM, Timothy Perrett wrote:


 No - 1.1-SNAPSHOT is (surprisingly) in the snapshot repository.  
 Make your repositories node look like the one I pasted and you  
 should find your project working ones more.

 Cheers, Tim

 On 16 Oct 2009, at 11:59, GA wrote:

 This is what it comes with my pom.xml

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

   pluginRepositories
 pluginRepository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /pluginRepository
   /pluginRepositories


 It is ok?

 Cheers,

 GA


 On Oct 16, 2009, at 12:33 PM, Timothy Perrett wrote:


 You must be missing the correct repository tag. Check that you  
 have:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 Cheers, Tim

 On 16 Oct 2009, at 10:58, GA wrote:

 Thanks for the info. I downloaded all the jars again, but it did  
 not solved my problem. Now for some reason, if I initiate  
 everything from scratch even with version 1.0 it does not work  
 anymore.

 If I add the entry:

  dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 to the pom.xml manually, I receive the following error when I  
 run the command mvn jetty:run:

 INFO] Unable to find resource 'net.liftweb:lift-mapper:jar:1.1- 
 SNAPSHOT' in repository scala-tools.org 
 (http://scala-tools.org/repo-releases 
 )
 [INFO]  
 
 [ERROR] BUILD ERROR
 [INFO]  
 
 [INFO] Failed to resolve artifact.

 Missing:
 --
 1) net.liftweb:lift-mapper:jar:1.1-SNAPSHOT

   Try

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
Could you please send me a pom.xml example for lift 1.1?

Cheers,

GA



On Oct 16, 2009, at 4:28 PM, GA wrote:

 Why is it getting the 2.7.1 version in first place? The pom.xml is  
 created by maven from the archetype and repository right?

 Is it perhaps some environment setup that I have or I should have?



 On Oct 16, 2009, at 4:24 PM, David Pollak wrote:

 You have to make sure that the version of Scala in your pom.xml  
 file is 2.7.5.

 On Fri, Oct 16, 2009 at 4:40 AM, GA my_li...@me.com wrote:
 Ok, now we have an improvement. I did the following:

 I replaced the following part of my pom.xml:

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories


 with:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 I run mvn jetty:run and there were no changes. Then added what  
 David suggested yesterday:

 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 I run mvn jetty:run again and it started downloading jars like  
 crazy. So now I have a lift-mapper-1.1-SNAPSHOT.jar, but I receive  
 a warning when the server starts:

 2009-10-16 13:31:32.768::INFO:  jetty-6.1.21
 2009-10-16 13:31:32.908::INFO:  No Transaction manager found - if  
 your webapp requires one, please configure one.
 2009-10-16 13:31:33.154::WARN:  failed LiftFilter:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 org.mortbay.jetty.plugin.jetty6pluginwebappcont...@3549494e{/,/ 
 Users/gacilu/NetBeansProjects/gaTribesServer/src/main/webapp}:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 contexthandlercollect...@6f1a7e7f: java.lang.VerifyError: (class:  
 net/liftweb/util/EmptyBox, method: open_$bang signature: ()Ljava/ 
 lang/Object;) Can only throw Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed handlercollect...@3466fcd5:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  Error starting handlers
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
  at net.liftweb.http.LiftRules$.init(LiftRules.scala:231)


 Is this warning important?

 Thanks for your help guys. I really appreciate it.

 GA




 On Oct 16, 2009, at 1:17 PM, Timothy Perrett wrote:


 No - 1.1-SNAPSHOT is (surprisingly) in the snapshot repository.  
 Make your repositories node look like the one I pasted and you  
 should find your project working ones more.

 Cheers, Tim

 On 16 Oct 2009, at 11:59, GA wrote:

 This is what it comes with my pom.xml

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

   pluginRepositories
 pluginRepository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /pluginRepository
   /pluginRepositories


 It is ok?

 Cheers,

 GA


 On Oct 16, 2009, at 12:33 PM, Timothy Perrett wrote:


 You must be missing the correct repository tag. Check that you  
 have:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 Cheers, Tim

 On 16 Oct 2009, at 10:58, GA wrote:

 Thanks for the info. I downloaded all the jars again, but it  
 did not solved my problem. Now for some reason, if I initiate  
 everything from scratch even with version 1.0 it does not work  
 anymore.

 If I add the entry:

  dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 to the pom.xml manually, I receive the following error when I  
 run the command mvn jetty:run:

 INFO] Unable to find resource 'net.liftweb:lift-mapper:jar:1.1- 
 SNAPSHOT' in repository scala-tools.org 
 (http://scala-tools.org/repo-releases 
 )
 [INFO]  
 
 [ERROR] BUILD ERROR
 [INFO

[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-16 Thread GA
You were right. I was making things complicated.

the mvn command I was writing was wrong... I stopped and started all  
over. I retyped it from scratch and I found the errors.

Thanks for your help guys. My project works in 1.1-M6 just fine.

Cheers,

GA



On Oct 16, 2009, at 5:04 PM, David Pollak wrote:



 On Fri, Oct 16, 2009 at 7:28 AM, GA my_li...@me.com wrote:
 Why is it getting the 2.7.1 version in first place? The pom.xml is  
 created by maven from the archetype and repository right?

 It seems that you created your project against the Lift 1.0  
 archetype and are try to upgrade it to 1.1-X.  Lift 1.0 used Scala  
 2.7.1.


 Is it perhaps some environment setup that I have or I should have?

 No.  You are making this much more complex than it needs to be.  You  
 can either:
 Create a new basic project against the 1.1-SNAPSHOT
 Update the pom.xml file for your existing project to set the Scala  
 version to 2.7.5 and the Lift version to 1.1-SNAPSHOT (or 1.1-M6 if  
 you do not want to include the snapshots repository in your  
 repositories tag)




 On Oct 16, 2009, at 4:24 PM, David Pollak wrote:

 You have to make sure that the version of Scala in your pom.xml  
 file is 2.7.5.

 On Fri, Oct 16, 2009 at 4:40 AM, GA my_li...@me.com wrote:
 Ok, now we have an improvement. I did the following:

 I replaced the following part of my pom.xml:

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories


 with:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 I run mvn jetty:run and there were no changes. Then added what  
 David suggested yesterday:

 dependency
   groupIdnet.liftweb/groupId
   artifactIdlift-mapper/artifactId
   version1.1-SNAPSHOT/version
 /dependency

 I run mvn jetty:run again and it started downloading jars like  
 crazy. So now I have a lift-mapper-1.1-SNAPSHOT.jar, but I receive  
 a warning when the server starts:

 2009-10-16 13:31:32.768::INFO:  jetty-6.1.21
 2009-10-16 13:31:32.908::INFO:  No Transaction manager found - if  
 your webapp requires one, please configure one.
 2009-10-16 13:31:33.154::WARN:  failed LiftFilter:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 org.mortbay.jetty.plugin.jetty6pluginwebappcont...@3549494e{/,/ 
 Users/gacilu/NetBeansProjects/gaTribesServer/src/main/webapp}:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed  
 contexthandlercollect...@6f1a7e7f: java.lang.VerifyError: (class:  
 net/liftweb/util/EmptyBox, method: open_$bang signature: ()Ljava/ 
 lang/Object;) Can only throw Throwable objects
 2009-10-16 13:31:33.155::WARN:  failed handlercollect...@3466fcd5:  
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
 2009-10-16 13:31:33.155::WARN:  Error starting handlers
 java.lang.VerifyError: (class: net/liftweb/util/EmptyBox, method:  
 open_$bang signature: ()Ljava/lang/Object;) Can only throw  
 Throwable objects
  at net.liftweb.http.LiftRules$.init(LiftRules.scala:231)


 Is this warning important?

 Thanks for your help guys. I really appreciate it.

 GA




 On Oct 16, 2009, at 1:17 PM, Timothy Perrett wrote:


 No - 1.1-SNAPSHOT is (surprisingly) in the snapshot repository.  
 Make your repositories node look like the one I pasted and you  
 should find your project working ones more.

 Cheers, Tim

 On 16 Oct 2009, at 11:59, GA wrote:

 This is what it comes with my pom.xml

   repositories
 repository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

   pluginRepositories
 pluginRepository
   idscala-tools.org/id
   nameScala-Tools Maven2 Repository/name
   urlhttp://scala-tools.org/repo-releases/url
 /pluginRepository
   /pluginRepositories


 It is ok?

 Cheers,

 GA


 On Oct 16, 2009, at 12:33 PM, Timothy Perrett wrote:


 You must be missing the correct repository tag. Check that you  
 have:

   repositories
 repository
   idscala-tools/id
   urlhttp://scala-tools.org/repo-snapshots/url
 /repository
 repository
   idscala-tools-releases/id
   urlhttp://scala-tools.org/repo-releases/url
 /repository
   /repositories

 Cheers, Tim

 On 16 Oct 2009, at 10:58, GA wrote:

 Thanks for the info. I downloaded all

[Lift] Re: Sending a XML message to a Lift server

2009-10-15 Thread GA

Hello Jon,

your code is giving me two errors in the last two lines.

(fragment of Main.scala):52: error: ambiguous reference to overloaded  
definition,
both method fromInputStream in object Source of type  
(java.io.InputStream)scala.io.Source
and  method fromInputStream in object Source of type  
(java.io.InputStream,String)scala.io.Source
match expected type ?
 scala.io.Source.fromInputStream
  ^
(fragment of Main.scala):53: error: value getLines is not a member of  
java.io.InputStream
 (conn.getInputStream).getLines.mkString
^
two errors found
!!!
discarding script preamble
!!!
discarding script preamble


Any suggestions?

Thanks,

GA



On Oct 14, 2009, at 8:35 PM, jon wrote:


 oh, if you want to parse directly into xml replace

 Source.fromInputStream(conn.getInputStream).getLines.mkString
 with
 XML.load(conn.getInputStream)

 On Oct 14, 2:32 pm, jon jonhoff...@gmail.com wrote:
 this should work:

 def post(url:URL, toPost:String):String = url.openConnection match {
   case conn: HttpURLConnection = {
 conn.setRequestMethod(POST)
 conn.setDoOutput(true)
 conn.connect
 conn.getOutputStream.write(toPost.getBytes())
 scala.io.Source.fromInputStream
 (conn.getInputStream).getLines.mkString
   }

 }

 On Oct 14, 2:22 pm, GA my_li...@me.com wrote:



 Hello guys,

 I have created a small web service in Lift. It has two services: One
 reads a row from a table in a database and the other writes one. To
 test the API I am writing a small client application in scala to  
 read
 and write from the Lift API.
 Since I am new to scala and lift, I am thinking the code in Java and
 writing in scala, and of course I am having some problems because of
 that.

 When I read from the Lift service, the service answers correctly,  
 but
 my client method reads one line and ends the loop. I believe that  
 the
 syntax of my for comprehension is not correct. This is my reader  
 code:

 import java.net._
 import java.io._

  def read {

  val url = new URL(http://localhost:8080/api/getPerson/myrow 
 )

  var connection = url.openConnection
  connection.setDoOutput(true);

  var in = new BufferedReader(new InputStreamReader
 (connection.getInputStream()));

  var incomingMsg = 

  **Loop with the problem***
  for (decodedString - in.readLine) {
incomingMsg = incomingMsg + decodedString
  }

  in.close();

  println(incomingMsg)
  }

 My second problem is when i try to send a message to the API i  
 receive
 the following java error:

 java.io.FileNotFoundException:http://localhost:8080/api/getPerson

 The error happens when the method tries to read the answers from the
 API. This is the code:

  def send {
  val message =
  root
  action/action
  person
  userNameJose/userName
  firstNameJose/firstName
  lastNamePerez/lastName
  passworda/password
  emaila...@.com/email
  createdon10/12/2009/createdon
  createdbyJose/createdby
  updatedon10/12/2009/updatedon
  updatedbyJose/updatedby
  /person
  /root

  val url = new URL(http://localhost:8080/api/getPerson;)

  var connection = url.openConnection
  connection.setDoOutput(true);

  var outgoingMsg = message.toString

  var out = new OutputStreamWriter 
 (connection.getOutputStream());
  out.write(string= + outgoingMsg);
  out.close();

 ***The error happens in the next line**
  var in = new BufferedReader(new InputStreamReader
 (connection.getInputStream()));

  //var decodedString = 

  for (decodedString - in.readLine)
  println(decodedString)
  in.close();
  }

 Any ideas? and, by the way, are there scala packages to replace
 java.net and java.io?

 Thanks in advance,

 GA
 


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



[Lift] error: not found: type IdPK in Lift 1.1

2009-10-15 Thread GA

Hello guys,

I have a Lift project working perfectly in version 1.0, but when I  
moved it to Lift 1.1 I am having errors with the Modeler with the type  
IdPK. Any ideas?

Thanks,

GA


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



[Lift] Re: error: not found: type IdPK in Lift 1.1

2009-10-15 Thread GA
Here you have the complete model file.

It is just a test class. The error I have is Not found: Type IdPK. I  
get it when I try to compile the file. Also NetBeans is showing the  
error. The same file was working fine in Lift 1.0.

I have created a new project based on the Lift snapshot 1.1 archetype- 
blank and then copied all my files from the previous project. The  
original 1.0 project was created with the archetype-basic, could  
this be the source of the error?

Thanks,


package com.tribes.ga.model

import net.liftweb._
import mapper._
import util._
import scala.xml.{NodeSeq,Text}
import _root_.java.text.{DateFormat,SimpleDateFormat}

class Person extends LongKeyedMapper[Person] with IdPK {
 def getSingleton = Person

 object userName extends MappedString(this, 30)
 object password extends MappedString(this, 30)
 object firstName extends MappedString(this, 30)
 object lastName extends MappedString(this, 30)
 object email extends MappedString(this, 255)
 object deviceName extends MappedString(this, 30)
 object createdOn extends MappedDateTime(this)
 object updatedOn extends MappedDateTime(this)
 object createdBy extends MappedString(this, 25)
 object updatedBy extends MappedString(this, 25)

 def toXML: NodeSeq = {
 val id = http://www.gatribes.com/api/expense/; + this.id
 val formatter = new  SimpleDateFormat(-MM- 
dd'T'HH:mm:ss'Z')

 person
 id{id}/id
 accountname{getUserName(userName.is)}/accountname
 firstName{firstName.is}/firstName
 lastName{lastName.is}/lastName
 /person
 }

 private def getUserName(userName: String): String = {
 Person.find(By(Person.userName, userName)) match {
 case Full(a) = a.userName
 case _ = No Account Name
 }
 }


}

object Person extends Person with LongKeyedMetaMapper[Person]



On Oct 15, 2009, at 5:04 PM, David Pollak wrote:

 Can you post an example (complete file) of something's not working?

 On Thu, Oct 15, 2009 at 3:21 AM, GA my_li...@me.com wrote:

 Hello guys,

 I have a Lift project working perfectly in version 1.0, but when I
 moved it to Lift 1.1 I am having errors with the Modeler with the type
 IdPK. Any ideas?

 Thanks,

 GA






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



[Lift] Silly question about Lift project navigation in Netbeans

2009-10-14 Thread GA

Hello guys,

I am working with Netbeans and I like it, but there is a small thing I  
am not able to do.

I create the project with maven in the command line (I am in Mac OS  
10.6) and then I open the project in Netbeans. Everything is visible  
except the html pages and the templates. I can of course open them  
manually (File-Open File) and edit them, but I would like to see them  
in the project navigation in the side bar. Any ideas on how to do it?

Thanks in advance,

GA


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



[Lift] Re: Complex primary key

2009-10-14 Thread GA
I need a many-to-many intermediary table and i need to add some more  
fields to it as well.

In the question I meant compound primary key because I am creating the  
intermediary  table manually in the mapper model. Is there any way to  
do many-to-many relationships automatically in the mapper?

Thanks,



On Oct 13, 2009, at 6:37 PM, David Pollak wrote:

 I'm sorry, are you trying to do a compound primary key or create a  
 many-to-many intermediary table?

 On Tue, Oct 13, 2009 at 8:06 AM, David Pollak feeder.of.the.be...@gmail.com 
  wrote:
 I don't think that's possible with mapper.  Sorry.

 You might want to see if JPA supports such a beast.


 On Mon, Oct 12, 2009 at 7:30 AM, my_li...@me.com wrote:

 Hello guys,

 How can I create a mapper with two or more fields as primary key?

 For instance if we have a table of people with a Long primary key
 called ID generated by IdPK, and also we have a table of addresses
 also with a Long primary key called ID generated by IdPK. The idea
 is to create an association table with both IDs to represent people
 with many addresses and addresses with multiple people. So both IDs
 will be primary key of the new table.

 Thanks in advance,

 GA






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

 


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



[Lift] Re: Silly question about Lift project navigation in Netbeans

2009-10-14 Thread GA

Problem solved. The issue was that I did not have installed the J2EE  
plugins. I added them and after I restarted the folder Web Pages  
appeared.

GA



On Oct 14, 2009, at 10:44 AM, GA wrote:


 Hello guys,

 I am working with Netbeans and I like it, but there is a small thing I
 am not able to do.

 I create the project with maven in the command line (I am in Mac OS
 10.6) and then I open the project in Netbeans. Everything is visible
 except the html pages and the templates. I can of course open them
 manually (File-Open File) and edit them, but I would like to see them
 in the project navigation in the side bar. Any ideas on how to do it?

 Thanks in advance,

 GA


 


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



[Lift] Re: Complex primary key

2009-10-14 Thread GA

It is only available in Lift 1.1 right?

GA



On Oct 14, 2009, at 11:47 AM, Peter Robinett wrote:


 http://scala-tools.org/mvnsites-snapshots/liftweb/lift-mapper/scaladocs/net/liftweb/mapper/ManyToMany.html

 If you look back in the group there is a thread announcing the
 addition of the trait and how to use it.

 Peter Robinett

 On Oct 14, 10:57 am, GA my_li...@me.com wrote:
 I need a many-to-many intermediary table and i need to add some more
 fields to it as well.

 In the question I meant compound primary key because I am creating  
 the
 intermediary  table manually in the mapper model. Is there any way to
 do many-to-many relationships automatically in the mapper?

 Thanks,

 On Oct 13, 2009, at 6:37 PM, David Pollak wrote:

 I'm sorry, are you trying to do a compound primary key or create a
 many-to-many intermediary table?

 On Tue, Oct 13, 2009 at 8:06 AM, David Pollak  
 feeder.of.the.be...@gmail.com
 wrote:
 I don't think that's possible with mapper.  Sorry.

 You might want to see if JPA supports such a beast.

 On Mon, Oct 12, 2009 at 7:30 AM, my_li...@me.com wrote:

 Hello guys,

 How can I create a mapper with two or more fields as primary key?

 For instance if we have a table of people with a Long primary key
 called ID generated by IdPK, and also we have a table of addresses
 also with a Long primary key called ID generated by IdPK. The idea
 is to create an association table with both IDs to represent people
 with many addresses and addresses with multiple people. So both IDs
 will be primary key of the new table.

 Thanks in advance,

 GA

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

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



[Lift] Sending a XML message to a Lift server

2009-10-14 Thread GA

Hello guys,

I have created a small web service in Lift. It has two services: One  
reads a row from a table in a database and the other writes one. To  
test the API I am writing a small client application in scala to read  
and write from the Lift API.
Since I am new to scala and lift, I am thinking the code in Java and  
writing in scala, and of course I am having some problems because of  
that.

When I read from the Lift service, the service answers correctly, but  
my client method reads one line and ends the loop. I believe that the  
syntax of my for comprehension is not correct. This is my reader code:

import java.net._
import java.io._

 def read {

 val url = new URL(http://localhost:8080/api/getPerson/myrow;)

 var connection = url.openConnection
 connection.setDoOutput(true);

 var in = new BufferedReader(new InputStreamReader 
(connection.getInputStream()));

 var incomingMsg = 

 **Loop with the problem***
 for (decodedString - in.readLine) {
   incomingMsg = incomingMsg + decodedString
 }

 in.close();

 println(incomingMsg)
 }

My second problem is when i try to send a message to the API i receive  
the following java error:

java.io.FileNotFoundException: http://localhost:8080/api/getPerson

The error happens when the method tries to read the answers from the  
API. This is the code:

 def send {
 val message =
 root
 action/action
 person
 userNameJose/userName
 firstNameJose/firstName
 lastNamePerez/lastName
 passworda/password
 emaila...@.com/email
 createdon10/12/2009/createdon
 createdbyJose/createdby
 updatedon10/12/2009/updatedon
 updatedbyJose/updatedby
 /person
 /root

 val url = new URL(http://localhost:8080/api/getPerson;)

 var connection = url.openConnection
 connection.setDoOutput(true);

 var outgoingMsg = message.toString

 var out = new OutputStreamWriter(connection.getOutputStream());
 out.write(string= + outgoingMsg);
 out.close();

***The error happens in the next line**
 var in = new BufferedReader(new InputStreamReader 
(connection.getInputStream()));

 //var decodedString = 

 for (decodedString - in.readLine)
 println(decodedString)
 in.close();
 }

Any ideas? and, by the way, are there scala packages to replace  
java.net and java.io?

Thanks in advance,

GA


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