Re: [appengine-java] Re: Slow cold starts

2012-03-20 Thread Matthew Jaggard
I noticed that nearly all the non-tick days on the status pages say
investigating, even going back over a year!
On Mar 20, 2012 7:21 AM, doright doug.stodd...@gmail.com wrote:

 I would like to add my voice to this expression of concern that Google is
 not delivering on its promises.

 I have been running a GAEJ Saas since the end of 2009.  On Friday I had my
 first discussion with a paying client of mine who now has serious doubts
 that my application will be able to support his business, given the
 performance he's seen in the last few weeks, notably the big delays seen on
 Friday.  I was checking the system status that day and it said anomaly
 across all languages and investigating Peformance was truly terrible with
 errors, huge latencies and lots of loading requests.  I was keen to see
 what the official investigation would turn up, but incredulous to see that
 its now just marked as a tick for that day!  To me this is a serious breach
 of trust.  It smells of cover up.

 I have a paid app, and have been experimenting for a while now with
 fine-tuning, min instances, max instances, pending latencies etc. I am now
 experimenting with warm-up requests but even that is not very evident, and
 I have yet to have it working. Documentation is definitely lacking in this
 crucial area.

 From what I read on these forums lately I see a huge amount of concern
 from the community and a deafening silence from Google.  Is this really the
 thanks we get for being early adopters and trusting Google to deliver on
 their promises?  Don't get me wrong I've been very impressed with GAE and
 the rate at which features are being rolled out, however this cannot be at
 the expense of stability and performance.  I really fear I might now lose
 everything that I've built up over the last 18 months because my client
 trust is being eroded by all of these problems.  I can't even blame Google
 coz they haven't even put out a statement.

 Googlers, how do I raise this to a production issue?  Its make or break
 now for my application.



 On Saturday, March 10, 2012 9:23:29 AM UTC+1, andrew wrote:

 Yes. More votes for a Google response on this.

 Anyone with a premium account and better support want to take up the
 cause on all our behalf?

 Submit a defect report we can all star?
 Please post link to it here

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/6HX2lHpopPYJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] migrating to SDK 1.6.3 from 1.5.3

2012-03-20 Thread Matthew Jaggard
This is nearly always caused by pre-compiled code being used. Empty your
caches and do a clean build.
On Mar 20, 2012 11:08 AM, doright doug.stodd...@gmail.com wrote:

 It's giving me a runtime error that I don't understand:

 Caused by: java.lang.NoSuchMethodError:
 com.google.appengine.api.datastore.DatastoreService.beginTransaction


 has this been deprecated in some way?  Why no compile error?


 Can anyone help me understand what's going on?  Many thanks if you can..

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/oHO1F-dykXkJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] migrating to SDK 1.6.3 from 1.5.3

2012-03-20 Thread Matthew Jaggard
On Netbeans, I occasionally have to empty .netbeans/var/cache but that's
generally for IDE related issues (such as auto-completion not working) I've
never had a problem when I explicitly select Clean then Build or Clean
Build (which in Netbeans does the same ant tasks).


On Mar 20, 2012 2:36 PM, doright doug.stodd...@gmail.com wrote:

 thanks for the reply Matthew,

 it is indeed some sort of build problem, coz I deployed to GAE and it
 works.  But I always do a clean build and still get the problem on dev.
  What do you mean by empty your caches?  I thought clean build did that -
 clearly not.

 cheers
 Doug

 On Tuesday, March 20, 2012 1:51:19 PM UTC+1, Matthew Jaggard wrote:

 This is nearly always caused by pre-compiled code being used. Empty your
 caches and do a clean build.
 On Mar 20, 2012 11:08 AM, doright  wrote:

 It's giving me a runtime error that I don't understand:

 Caused by: java.lang.NoSuchMethodError: com.google.appengine.api.**
 datastore.DatastoreService.**beginTransaction


 has this been deprecated in some way?  Why no compile error?


 Can anyone help me understand what's going on?  Many thanks if you can..

 --
 You received this message because you are subscribed to the Google
 Groups Google App Engine for Java group.
 To view this discussion on the web visit https://groups.google.com/d/**
 msg/google-appengine-java/-/**oHO1F-dykXkJhttps://groups.google.com/d/msg/google-appengine-java/-/oHO1F-dykXkJ
 .
 To post to this group, send email to google-appengine-java@**
 googlegroups.com google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to google-appengine-java+**
 unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at http://groups.google.com/**
 group/google-appengine-java?**hl=enhttp://groups.google.com/group/google-appengine-java?hl=en
 .

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/9KfboKjZKmQJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] How to handle class version issues in DataStore

2012-03-12 Thread Matthew Jaggard
This answer also applies to the low level datastore and Objectify. I can
only assume JPA works the same way.
On Mar 12, 2012 7:40 AM, andrew andrew.macken...@bcntouch.com wrote:

 Nulls (Java), if the object can have null as a value. E.g. Integer can be
 null, int cannot.

 I think this is explained in GAE/JDO documentation.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/GBfSKyvTztcJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.



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



Re: [appengine-java] Other Database other than BigTable

2012-03-08 Thread Matthew Jaggard
I know very little about it, but this is the place to start...

https://developers.google.com/cloud-sql/

On 8 March 2012 07:50, ravi kumar ravi.vnr2...@gmail.com wrote:

 Hi..i want to use other database(not Google's Bigtable)as DBaaS for my
 application which is using google infrastructure.Is is Possible and how??

 --
 Thanks  Regards
 Ravi Kumar Reddy K
 +91-8095749598

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


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



[appengine-java] Tasks being lost

2012-03-07 Thread Matthew Jaggard
Just before this group closes, I wanted to query whether task delivery is
guaranteed.

I'd been planning that my possibly high traffic site would track visits
using task queues like this:

For each visit, put a task in the pull queue with the relevant data in the
payload
Read 1000 tasks at a time, process them, delete them, etc. and write the
data to the datastore (potentially after several batches of 1000)

However, I have just discovered that tasks are lost when I simulate high
traffic. I have loaded 30 pages which try for 10 seconds to put as many
tasks in the queue as possible - then a separate process retrieves them and
lists how long they took to arrive.

Unfortunately, this created 12827 tasks, but only processed 9421. The
console now says I have 650 tasks still in the queue but the
queue.leaseTasks method doesn't get any.

Any thoughts?

Mat.

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



Re: [appengine-java] Re: publishing html files

2012-02-28 Thread Matthew Jaggard
Have a look at the blobstore documentation, that might help you. However
I'd be inclined to mention a naughty word Amazon (ssh!) S3 might be the
best way forward.

On 28 February 2012 06:32, Vik vik@gmail.com wrote:

 Any advise on this please?

 Thankx and Regards

 Vik
 Founder
 http://www.sakshum.org
 http://blog.sakshum.org


 On Sun, Feb 26, 2012 at 11:28 AM, Vik vik@gmail.com wrote:

 Hie

 I am generated html documents using a google text doc as template
 (reading it using gdata apis and then doing some text manipulation).
 Now, I want to publish these documents somewhere so that I can refer to
 others giving the url of the document (which means it would be publicly
 accessible).

 Any suggestions on how do i go about it? Like where should i host these?


 Thankx and Regards

 Vik
 Founder
 http://www.sakshum.org
 http://blog.sakshum.org


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


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



Re: [appengine-java] JPA Query setMaxResult vs DB Read Ops number

2012-02-24 Thread Matthew Jaggard
The first one :-)

On 22 February 2012 21:01, Peter Han devifr...@gmail.com wrote:

 situation:
 - user entities in db (properties id, name, sex, age)
 - you want to get the oldest of them with min. age 10

 createQuery(select u from User u where u.age=10 order by age desc)
 query.setMaxResults(1)  !!!
 query.getResultList();

 how GAE handles this situation?

 1. search in index table where age=10 and only the oldest
 2. found 1 entity key
 3. read entity
 4. return entity

 OR

 1. find all of them in index table where age=10
 2. found X entity keys
 3. read all entities
 4. return only the oldest of them (because JPA maxResults=1)

 Thanks

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



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



Re: [appengine-java] max keys for memcache

2012-02-23 Thread Matthew Jaggard
And the sql query won't be fast if there are are too many records.

I don't think this is true. The datastore speed is designed to vary with
the size of the result set, not the size of the data set.

On 23 February 2012 00:58, Kesava Neeli nke...@gmail.com wrote:

 our user account has many fields like userName, email, number, alternate
 email list, ids from social networks like facebook, google, twitter,
 linkedin etc. The primary key is one of those fields. In realtime, we
 should be able to find if a user exists with any the fields and not just
 email. One thing I could do it td create a datastore index for each of the
 field that I want to lookup and then perform the query when needed. Having
 many indexes means more number of low level datastore write calls for each
 store hit. And the sql query won't be fast if there are are too many
 records.

 Anyway, thanks for your comments. I will look to see if I can design it
 differently.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/1u39C_iNYtIJ.

 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] DevServer fails after updating to java 6u31

2012-02-23 Thread Matthew Jaggard
Please search the group and bug reports before posting a new thread.

http://groups.google.com/group/google-appengine-java/browse_thread/thread/1272fe639eeef892/cd59fa14c2301f57


http://code.google.com/p/googleappengine/issues/detail?id=6928



On 23 February 2012 13:27, doom777 doom...@gmail.com wrote:

 Initializing App Engine server
[ERROR] Unable to start App Engine server
 Unable to start embedded HTTP serverjava.lang.RuntimeException: Unable to
 restore the previous TimeZone
 at
 com.google.appengine.tools.development.DevAppServerImpl.restoreLocalTimeZone(DevAppServerImpl.java:228)
 at
 com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:164)
 at
 com.google.appengine.tools.development.gwt.AppEngineLauncher.start(AppEngineLauncher.java:97)
 at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:509)
 at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1068)
 at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:811)
 at com.google.gwt.dev.DevMode.main(DevMode.java:311)
 Caused by: java.lang.NoSuchFieldException: defaultZoneTL
 at java.lang.Class.getDeclaredField(Unknown Source)
 at
 com.google.appengine.tools.development.DevAppServerImpl.restoreLocalTimeZone(DevAppServerImpl.java:222)
 ... 6 more
 [ERROR] shell failed in doStartupServer method

 com.google.gwt.core.ext.UnableToCompleteException: (see previous log
 entries)
 at
 com.google.appengine.tools.development.gwt.AppEngineLauncher.start(AppEngineLauncher.java:102)
 at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:509)
 at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1068)
 at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:811)
 at com.google.gwt.dev.DevMode.main(DevMode.java:311)

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/Z-jT-kU4Z9wJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] still a mess with datanucleus instead of hibernate/jpa

2012-02-10 Thread Matthew Jaggard
I'm afraid that you're not going to be able to use hibernate in the way
that you expect to. You're also not going to like the fact that the
hibernate/datanucleus change will be the least of your worries if
converting from a relational database. I advise that if you're serious
about using Google App Engine then you switch your code to using the low
level API or a simple abstraction (such as Objectify or Twig) instead of
JPA or JDO because they'll help you to change your mindset away from the
relational DB model you're use to. If however you're not serious about
using GAE - I recommend that you give up at this point.

Mat.

On 9 February 2012 11:04, oneTETSUO onetet...@googlemail.com wrote:

 some yrs ago, i developed an gwt and it worked well so far.

 now i wanted to connect my backend with a gwt.based.app and ive used
 jpa with hibernate for it. ive compiled the sources so far, to start
 them on a tomcat instance localy, but the datanucleus.provider just
 kicking it out of the way and try to parse and use the persistence.xml
 instead of the hibernate persistence provider. it reminds me very
 strong to the messy overhead of jboss seam, but in another way.

 1. its a deep shit, that one cant develop gwt based app in connection
 to a usual relational database. one is pushed to use fakedate, during
 the development, which makes it not even better.

 2. if it runs on the tomcat, the provider still override the
 configuration, as it wants or what. the persistence.xml shows
 code
 providerorg.hibernate.ejb.HibernatePersistence/provider
 /code

 but the result is

 code
 11:48:12,551 WARN  [DataNucleus.MetaData] - MetaData Parser
 encountered an error in file file:/home/mschulz/workspace/
 _dwh_frontend/build_two/war/WEB-INF/classes/META-INF/persistence.xml
 at line 4, column 63 : cvc-complex-type.3.1: Value '2.0' of attribute
 'version' of element 'persistence' is not valid with respect to the
 corresponding attribute use. Attribute 'version' has a fixed value of
 '1.0'. - Please check your specification of DTD and the validity of
 the MetaData XML that you have specified.
 /code

 no one asked datanucleus to manage the persistence, on which point it
 overtakes the focus on that ? i want to kick it out or should i move
 my whole persistence layer from hibernate to datanucleus, which makes
 another unnecessary workload on this point. if i want to speed it up
 later on, i may use datanucleus for this issue, but actualy i just
 want to develop the business case :/

 iam kind of sick to workaround the behaviour of this all the time, the
 plugin should give the oppurtunity to switch/case the usage of
 dependend packages to take the pain away :/ in fact, iam not in the
 scope of gae, its running on tomcat and the appenmgine dependencies
 wont realize this change. its a bit mess, to figure out, on which
 point what is used, coz no log output will give a point to dive into
 the debugger ...

 in the past, ill switched workspaces between front/backend
 development, but this isnt the way to work fluently with it, so one
 got an idea, how to merge/hybrid use that case.



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



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



Re: [appengine-java] Google App Engine community support is moving to Stack Overflow

2012-02-07 Thread Matthew Jaggard
@Ikai - I think this is a great idea, however like Ruslan I'm a bit
concerned about how much Google employees will be looking at the questions.
Would it be possible for us to have a mechanism for raising to a Googler
any questions that cannot be answered by the community. As a group we're
able to deal with most simple problems or confirm bugs but it would be
great to allow certain people - or people with a specific level of
expertise - to bring questions to your attention.


@Ruslan - This is a good idea, raise an enhancement request and I'll
happily star it. Or submit a patch?


Thanks,
Mat.



On 7 February 2012 02:31, Ruslan V rusl...@gmail.com wrote:

  Dear Ikai,


 Monday, February 6, 2012, 6:26:10 PM, you wrote:


  It looks like your question has already been answered:


 http://stackoverflow.com/questions/9124564/datastore-access-is-horribly-slow-on-dev-server-if-you-have-more-than-few-object

 The datastore stub is that: a stub. You cannot reliable depend on it for
 performance data.

 It would be great if you guys allow engineers to replace the stub with
 custom implementation as it was done in gae-sqlite for Python version of
 SDK. Is there a chance of this happening ?

 /Ruslan

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


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



Re: [appengine-java] Google App Engine community support is moving to Stack Overflow

2012-02-07 Thread Matthew Jaggard
Hi Johan,
   I knew it's possible to identify someone's expertise - I was just asking
whether they could raise difficult issues to Google employees, but I guess
that' irrelevant if your're actively involved in answering questions
already. The only other issue I've found when using Stack Overflow is how
to get notified - at the moment I enjoy looking through the e-mails to this
group and answering any that I can. Maybe the RSS will work for me. Then
you just need to get GMail to support RSS feeds and we're sorted :-)

Thanks,
Mat.

On 7 February 2012 11:46, Johan Euphrosine pro...@google.com wrote:

 Hi Matthew,

 You can easily identify people with a specific level expertise on Stack
 Overflow by looking at their reputation or at previous questions they
 answered, and a good way to attract people on a question is to setup a
 bounty.

 Members of the App Engine team and the community are already active on
 Stack Overflow, just take a look at the tag statistics and hopefully you
 will recognize a few people there :)
 http://stackoverflow.com/tags/google-app-engine/topusers

 In the top users you can see:
 http://stackoverflow.com/users/818274/guido-van-rossum (Python and NDB
 daddy, App Engine Software Engineer)
 http://stackoverflow.com/users/12030/nick-johnson (~59K reputation, App
 Engine Developer Relations)
 http://stackoverflow.com/users/453278/dan-sanderson (Author of
 Programming Google App Engine, and working for Google)
 http://stackoverflow.com/users/280474/robert-kluin (top group contributor)
 http://stackoverflow.com/users/125967/moraes (webapp2 author)
 http://stackoverflow.com/users/62288/dave-w-smith (App Engine Software
 Engineer, working on Map Reduce and testing)
 http://stackoverflow.com/users/23786/moishe (App Engine Software
 Engineer, working on XMPP, Mail and Channel API)
 http://stackoverflow.com/users/992563/amy-u (Author Google App Engine
 Java and GWT Application Development, App Engine Developer Relations)
 http://stackoverflow.com/users/656408/proppy (myself, App Engine
 Developer Relations)

 And many others I must have forgotten.

 Hope that answers your concerns.

 On Tue, Feb 7, 2012 at 11:24 AM, Matthew Jaggard 
 matt...@jaggard.org.ukwrote:

 @Ikai - I think this is a great idea, however like Ruslan I'm a bit
 concerned about how much Google employees will be looking at the questions.
 Would it be possible for us to have a mechanism for raising to a Googler
 any questions that cannot be answered by the community. As a group we're
 able to deal with most simple problems or confirm bugs but it would be
 great to allow certain people - or people with a specific level of
 expertise - to bring questions to your attention.


 @Ruslan - This is a good idea, raise an enhancement request and I'll
 happily star it. Or submit a patch?


 Thanks,
 Mat.




 On 7 February 2012 02:31, Ruslan V rusl...@gmail.com wrote:

  Dear Ikai,


 Monday, February 6, 2012, 6:26:10 PM, you wrote:


  It looks like your question has already been answered:


 http://stackoverflow.com/questions/9124564/datastore-access-is-horribly-slow-on-dev-server-if-you-have-more-than-few-object

 The datastore stub is that: a stub. You cannot reliable depend on it for
 performance data.

 It would be great if you guys allow engineers to replace the stub with
 custom implementation as it was done in gae-sqlite for Python version of
 SDK. Is there a chance of this happening ?

 /Ruslan

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


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




 --
 Johan Euphrosine (proppy)
 Developer Programs Engineer
 Google Developer Relations

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


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr

Re: [appengine-java] Both indexes required (ASC and DESC) for 1-N relationship mapped with a List?

2012-02-03 Thread Matthew Jaggard
Do you ever have criteria to your query? If so, I think you need both
indexes because below is the way that I think of queries working. I'm not
sure if it's true - maybe a Googler could let us know if this is about
right or wildly wrong?

Use ascending index to find the first entity with the value required.
Use descending index to find the last entity with the value required.
Return all entity keys between the first and the last.
If not a keys-only query - fetch the entities using a batch get.

If this is the way it works, I wouldn't be surprised if Google have set it
up to require both indexes because they would be required in all uses
(because it would probably be just as quick to do sorting in memory if you
fetch all entities).

Thanks,
Mat.

On 3 February 2012 02:04, Bruno Fuster brunofus...@gmail.com wrote:

 I'm not sure but maybe JDO is trying to query asceding to fetch the
 children before adding.






 On Thu, Feb 2, 2012 at 9:36 PM, Miguel doctormig...@gmail.com wrote:

 Hi,
 I am working on a simple structure similar to:

 class Parent {
 ...
 ListChild children
 ..
 }

 class Child {
 ..
 Parent parent
 ..
 }

 mapped with a 1-N relation in JDO:
 field persistence-modifier=persistent name=children mapped-
 by=parent
collection dependent-element=true element-type=Child/
 collection
order/
 /field


 with a simple index:
 datastore-index kind=Child ancestor=true source=manual
property name=children_INTEGER_IDX direction=desc/
 /datastore-index

 .. and I always retrieve Children in descending order.

 But when I add a children I get this error:
 com.google.appengine.api.datastore.DatastoreNeedIndexException: no
 matching index found.
 The suggested index for this query is:
datastore-index kind=Child ancestor=true source=manual
property name=children_INTEGER_IDX direction=asc/
/datastore-index

 So my question is: why do I always need both indexes for ascending and
 descending order if I need only type of ordering?

 Thanks,
 Michele

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




 --
 Bruno Fuster

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


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



Re: [appengine-java] writing then reading entity does not fetch entity from datastore

2012-02-03 Thread Matthew Jaggard
I hope this is a stupid question but you're not setting the read
consistency to eventual are you?
On 4 Feb 2012 01:29, Ikai Lan (Google) ika...@google.com wrote:

 Can you post the code? Are you reading by key? If you are using a query,
 you might be exposed to the eventually consistent nature of global queries
 in the datastore. Or is this only in the dev appserver?

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 plus.ikailan.com



 On Fri, Feb 3, 2012 at 3:56 PM, John Goche johngoch...@googlemail.comwrote:

 Hello,

 I am having the following problem. I am now using the low-level
 google datastore API rather than JDO, that way I should be in a
 better position to see exactly what is happening in my code. I am
 writing an entity to the datastore and shortly thereafter reading it
 from the datastore using Jetty and eclipse. Sometimes the written
 entity is not being read. This would be a real problem if it were to
 happen in production code. I am using the 2.0 RC2 API.

 I have tried this several times, sometimes the entity is retrieved
 from the datastore and sometimes it is not. I am doing a simple
 query on the datastore just after committing a write transaction.

 (If I run the code through the debugger things run slow enough
 that the entity has a chance of being read back on the second pass).

 Any help with this issue would be greatly appreciated,

 Regards,

 John Goche

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


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


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



Re: [appengine-java] 200 was logged when, apparently, an error happened

2012-02-02 Thread Matthew Jaggard
I don't have a clue as to the answer, but to help those who might can you
tell us if it only happens during requests that are starting new instances
of your app?

2012/2/2 Ronoaldo José de Lana Pereira ronoa...@gmail.com

 Dear App Engine developers and googlers,

 Sorry for the long post, but I got something weird on my logs. A response
 status 200 was logged when, apparently, an error happened. Does it makes
 any sense, or I'm just misreading the messages from the logs? This happened
 a few times, and some requests are failing properly (500 status).

 Is this due the static 500 error handler configured in my
 appengie-web.xml? In this case, I guess that this is not a sucessfull
 request either, so a 500 error is more applicable and I'll get this warning
 on my error chart in the dashboard (which I'm not sure now that is
 providing the right information ...).

 Thanks in advance.

 Sample stack trace follows:


1.  2012-02-02 10:45:15.646

 /guarulhos/promocao-e-desconto/lanche-natural--suco-de-400ml-no-shopping-boulevard-dvitta---10216104?categoria=gastronomiaid=1
200 59686ms 67kb Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7
(KHTML, like Gecko) Chrome/16.0.912.77 Safari/535.7

189.34.9.239 - - [02/Feb/2012:04:45:15 -0800] GET 
 /guarulhos/promocao-e-desconto/lanche-natural--suco-de-400ml-no-shopping-boulevard-dvitta---10216104?categoria=gastronomiaid=1
  HTTP/1.1 200 67809 
 http://www.ofertaunica.com/guarulhos/promocao-e-desconto/cheese-salada--batata-frita-no-emporio-parque-na-vila-augusta---12707408?categoria=gastronomiaid=1cheese-salada--batata-frita-no-emporio-parque-na-vila-augusta---12707408?categoria=gastronomiaid=1;
  Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) 
 Chrome/16.0.912.77 Safari/535.7 www.ofertaunica.com ms=59687 cpu_ms=1733 
 api_cpu_ms=1057 cpm_usd=0.056004 exit_code=104 
 instance=00c61b117c7a9b197087ae4f18973656059d29

 2.  W 2012-02-02 10:45:15.607

A serious problem was encountered with the process that handled this 
 request, causing it to exit. This is likely to cause a new process to be used 
 for the next request to your application. If you see this message frequently, 
 you may be throwing exceptions during the initialization of your application. 
 (Error code 104)


  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/tgwoITxKVFUJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Project Design : vendors-clients-invoice

2012-01-30 Thread Matthew Jaggard
How many of each will you have? You need to remember that nearly all of the
costs in the datastore are per-operation charges so you need to allow for
that. For example, if you have relatively few clients / vendors you could
list them all in a single entity. (You have a 1MB limit per entity) You
might then store invoices on a second entity and put all of the product
data on the invoice - it depends on how you use products outside of the
information given. So... try this for a medium sized app

This is Objectify syntax - Objectify will put the below into two datastore
entities for you and even load other entities automatically if you want it
to - such as automatically loading the Client (and vendor which is embedded
into the Client) when you load an Invoice (along with the Products that are
embedded into the Invoice in my example).

public class Vendor
{
   String name;
   ...
}

@Entity
public class Client
{
  @Id
  String name;
  @Embed
  ListVendor vendorAccessList;
  ListInvoice invoiceList;
  ...
}

@Entity
public class Invoice
{
  @Id
  Long id;
  Client for;
  @Embed
  ListProduct productList;
  ListInteger quantityList;
  BigDecimal totalPrice;
  BigDecimal tax;
  ...
}

public class Product
{
   String name;
   String description;
   BigDecimal price;
   ...
}


This schema isn't great for all purposes but might work for you, who knows.

Good:
  When you load an invoice, you can get all of the product data, in one
datastore get.
  When you load an invoice, you can automatically load all the Client /
Vendor information in a second get.

Bad:
  It takes a query to find all of the Clients a Vendor can access.
  Product data will be repeated when you sell the same product to another
client - and products can't exist without being attached to an invoice.
  A really big invoice might break the 1MB rule because all the product
data is stored in the same entity.


On 30 January 2012 13:14, guillaume.brus...@gmail.com 
guillaume.brus...@gmail.com wrote:

 Small project design

 Hello I have got a typical project project
 vendors-clients-invoice- product
 and I would like to use the best design for better performance

 a) one or many vendros can access one client

 c) a client has one or many invoice

 d) invoice reffer to product

 I am a little bit afraid by performance for retrieving information

 I was thinking on creating cross references


 Vendor
 - name
 - client list

 Client
 - name
 - vendor list
 - invoice list

 Invoice
 - Number
 - ?Client ref?

 what do you think of that structure ?

 Regards

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



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



Re: [appengine-java] Re: Hello world demo isn't working.

2012-01-29 Thread Matthew Jaggard
You can use JDK 7 as long as you specify a target version of Java 6.
On 29 Jan 2012 09:09, Simon Knott knott.si...@gmail.com wrote:

 It looks like you've compiled the Hello World application with JDK 7 - GAE
 only supports JDK 6 applications currently.

 Cheers,
 Simon

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/G-eOt7DlzZUJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] OpenId Provider using java

2012-01-26 Thread Matthew Jaggard
It is a NetBeans project, but you can also just use apache ant to compile
if you change the appengine.location in nbproject\ant-deploy.xml to the
path to your SDK.
ant runserver
should compile and then start the dev server although the dev server isn't
that helpful in this particular example because it doesn't implement the
full OpenID stuff.

On 26 January 2012 08:24, TG gae.ic2...@gmail.com wrote:

 It's a netbeans project?

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/TKiC-3TY0bYJ.

 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] uploading a new version of my app doesnt affect the running system

2012-01-26 Thread Matthew Jaggard
Could you try changing the version? I think some people have seen issues
before if I remember correctly and they resolved it by changing the version
and then setting the new version as the default.

On 26 January 2012 10:29, vega _v...@vr-web.de wrote:

 hi everyone

 when i deploy changes to the server, the upload is working (Deployment
 completed successfully)
 but when i open a page, i get the old version of my app, not the new. also
 when i use strg+f5.

 the logs says for the first request after uploading the new version:

 This request caused a new process to be started for your application, and 
 thus caused your application code to be loaded for the first time. This 
 request may thus take longer and use more CPU than a typical request for your 
 application.

 and no, ive not changed the version number of the app to 2.0 or something, 
 that i would have to select it (where so ever) in the dashboard.

 what to do?

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/t2siFZU3SXoJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] OpenId Provider using java

2012-01-26 Thread Matthew Jaggard
Yes, I was able to log in to my development application using
http://mjaggard.openid.org.cn/ as my Open ID. Assuming I managed to
separate things correctly you should be able to use the test app I
produced. So you'd click on OpenID on the login page and then type in
your Open ID URL (like http://mjaggard.openid.org.cn/) and then click Sign
in - then you jump through all the hoops on the other end before being
returned to the app.

No apology required for your English. :-)

Mat.


On 26 January 2012 13:44, TG gae.ic2...@gmail.com wrote:

 Could you tell me if I can use any openid provider in a openid consumer
 (in GAE )?

 For example I tried to use a login from www.openid.org.cn in a openid
  consumer (in Gae) and I receve
 Error: Server Error.

 My goal is try to use a application(in GAE) as openid consumer using
 another application in GAE as openid provider.

 Sorry for my English.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/xSaqCScuviEJ.

 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] OpenId Provider using java

2012-01-24 Thread Matthew Jaggard
OK. I have implemented this in my program and have it mostly working* I
have tried to separate the parts that are relevant into a separate project
and remove the branding that I don't want to give away yet. So sorry if it
doesn't work well for you but you should get the general idea of the code
required. I've also never used git before so it's not a great project yet!

https://github.com/mjaggard/AppEngine-OpenID

Let me know what you think and also if you have any more specific questions.

Thanks,
Mat.


* the only part that doesn't work well on my main application is where I
tell the user at the bottom of the page if they're logged in or not. I do
this using a browser Cookie because I don't want to make requests that need
a JVM on my main public pages.


On 23 January 2012 18:41, TG gae.ic2...@gmail.com wrote:

 I cant find a example of openId provider using java on google app engine.

 I only found a phyton example.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/ZmEL1euaslIJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] lost trying to understand JDO on BigTable: please help coding example

2012-01-24 Thread Matthew Jaggard
Do you have any good reason to have separate classes rather than one big
one with all the stuff that's in each? The main reason I ask is that
loading two entities is about twice as expensive as loading one twice the
size. If you do have a good reason, you could still persist them as a
single entity, but I'm not sure how to do this in JDO. In Objectify, you
would just @Embed one class into the other.

Mat.

On 24 January 2012 20:05, John Goche johngoch...@googlemail.com wrote:


 Hello,

 I have the following classes in a unidirectional 1-1 relationship to each
 other:

 class A {

B b;

// ... more fields

 }

 class B {

   String k;

   // ... more fields
 }

 I want k to be the primary key for class B as well as for class A.
 How do I accomplish this task? I've been told I need to implement
 a PK class but don't understand why I would need one.

 Given I cannot find much information on the BigTable implementation
 I don't even know how to think about the problem (I understand RDBMS
 and think of each class as having its own table, although this may be
 wrong).

 Thank you for your kind help,

 John Goche

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


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



Re: [appengine-java] updating a property enmass in several entity

2012-01-23 Thread Matthew Jaggard
Unfortunately that's basically the only option.

Maybe someone can comment on MapReduce, although from what I understand
it's not any cheaper.

On 23 January 2012 15:33, kt kanutripa...@cypatterns.com wrote:

 Hi,
 I have a situation where I need to update a property in several entities
 amass. Something similar in SQL would be :
 update mytable set mycolumn = (mycolumn + 10);

 I do not want to iterate through all entities since it will be very
 expensive. Any ideas?

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/1GQxcYEFTPsJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] updating a property enmass in several entity

2012-01-23 Thread Matthew Jaggard
I just thought of a better way of doing it, but it's not quite as pretty
because it breaks queries. Basically you add a new field to your entity
which could be an integer (like a version number for the entity) or a
boolean for has had ten added to mycolumn which defaults to false when
you load your entity (you haven't specified how you're doing this, but I'm
sure there will be a way of doing it using JDO, JPA, Low-level, objectify,
etc.) then you can check when you load it if you need to add 10 then you
can save the updated version correctly.

This method costs you nothing (not technically true, but so close to zero
it's not worth thinking about) except the loss of querying ability if you
do so on mycolumn.

I would probably add some code like this

class MyEntity
{
  ...
  int version = 0; //default to zero
  long mycolumn;
  ...
}

then when loading...

if (version == 0)
{
  mycolumn += 10;
  version = 1;
}

at a later date, you might add...
if (version == 1)
{
  someOtherColumn = someOtherColumn.toLowerCase();
  version = 2;
}

etc.

On 23 January 2012 17:51, Gal Dolber gal.dol...@gmail.com wrote:

 If you need to do it all at once there's no secret trick or magic to do
 it. You can use backends servers, cron jobs, task queues o the
 appengine-mapper but in all cases you'll have to pay
 number_of_entities*(get_price + put_price) plus all the processing price.

 On Mon, Jan 23, 2012 at 1:39 PM, Matthew Jaggard 
 matt...@jaggard.org.ukwrote:

 Unfortunately that's basically the only option.

 Maybe someone can comment on MapReduce, although from what I understand
 it's not any cheaper.

 On 23 January 2012 15:33, kt kanutripa...@cypatterns.com wrote:

 Hi,
 I have a situation where I need to update a property in several entities
 amass. Something similar in SQL would be :
 update mytable set mycolumn = (mycolumn + 10);

 I do not want to iterate through all entities since it will be very
 expensive. Any ideas?

 --
 You received this message because you are subscribed to the Google
 Groups Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/1GQxcYEFTPsJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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




 --
 Guit: Elegant, beautiful, modular and *production ready* gwt applications.

 http://code.google.com/p/guit/




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


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



Re: [appengine-java] Spring MVC

2012-01-18 Thread Matthew Jaggard
The whitelist only details JVM classes that are allowed. You can including
classes with your project as much as you like (as long as they don't depend
on the missing JVM classes) so to use Spring, you have to include the
spring jar file(s).

Mat.
On 18 Jan 2012 20:33, Paul Ford paul.f...@mavenwave.com wrote:

 Quick question:

 If WAR's are deployed to GAE container and the JRE white list does not
 contain the spring classes (or hibernate or whatever framework you
 pick that is outside of JRE Whitelist), how do you incorporate spring
 or whatever J2EE framework and it run in GAE?

 Thanks

 Paul

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



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



Re: [appengine-java] Spring MVC

2012-01-18 Thread Matthew Jaggard
Hi Paul,
   No problem being a noob :-) Yes, you're right, just add the relevant
libraries to your project and make sure they're included in the output,
which I think is default anyway (as opposed to libraries like lombok that
are just there at compile-time)

Mat.

P.S. I'm living in Northampton at the moment but am from Norfolk
originally. I unfortunately don't have to confidence to set up a company
yet so GAE is just a hobby for me at the moment.

On 18 January 2012 21:30, Paul Ford paul.f...@mavenwave.com wrote:

 ok got it Matthew. I am a noob so excuse my ignorance, So you would apply
 the spring jar as a library reference in your say eclipse project. Compile
 your project war (which includes that spring jar) and deploy to GAE? If
 correct would the spring jar then run in the JVM container?

 I'm sure I'm getting my lines crossed here, so your response and patience
 is appreciated.

 Thanks again.

 BTW - From Swindon originally, but live in Chicago now. Where are you
 situated?


 On Wed, Jan 18, 2012 at 3:23 PM, Matthew Jaggard 
 matt...@jaggard.org.ukwrote:

 The whitelist only details JVM classes that are allowed. You can
 including classes with your project as much as you like (as long as they
 don't depend on the missing JVM classes) so to use Spring, you have to
 include the spring jar file(s).

 Mat.
 On 18 Jan 2012 20:33, Paul Ford paul.f...@mavenwave.com wrote:

 Quick question:

 If WAR's are deployed to GAE container and the JRE white list does not
 contain the spring classes (or hibernate or whatever framework you
 pick that is outside of JRE Whitelist), how do you incorporate spring
 or whatever J2EE framework and it run in GAE?

 Thanks

 Paul

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

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




 --
 Regards

 Paul

 *Paul W. Ford │ Principal*
 Maven Wave Partners LLC
 GTalk  +1.312.884.1051  M: +1.312.953.1664
 paul.f...@mavenwave.com

 Please check out our Fusion 
 Bloghttp://www.mavenwave.com/news-and-views-mavenwave-blog/ for
 more insights

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


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



Re: [appengine-java] JPA and Entity Groups

2012-01-17 Thread Matthew Jaggard
Cough objectify cough
On 17 Jan 2012 19:49, Paul Bartosik paulhbarto...@gmail.com wrote:

 I have spent a bit of time banging up against Entity Group issues.  In
 all cases, the problem was with my JPA.  I had made mistakes in my
 annotations that manifested as run-time transaction and Entity Group
 errors .

 The documentation on JPA relationships and Entity Groups is pretty
 light.  Can someone confirm my 3 assumptions below?

 1. In a bi-directional relationship, the unowned side of the
 relationship will automatically be the Parent Entity and the owned
 side will be the Child Entity.

 2. In a uni-directional relationship, both sides of the relationship
 will be in different Entity Groups.

 3. When using JPA, there is no other way to specify the Entity Group
 of your entities.


 Thanks for any help.

 -Paul

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



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



Re: [appengine-java] Displaying 1000 tweets eats up datastore quotas in minutes

2012-01-08 Thread Matthew Jaggard
You're thinking far too much like an RDBMS user. Imagine for a moment that
querying a database is like picking up polystyrene balls. SQL Server or
whatever is like a vacuum cleaner, the datastore is like a pair of hands.
Picking up a million polystyrene balls with your hands is perfectly
possible but hopelessly inefficient. Picking up a really big piece of
polystyrene however is trivial, size being almost irrelevant. Equally, SQL
Server/vacuum cleaner will collect tiny parts from various places with ease.

So, in your case, I'd definitely combine multiple tweets, I might even put
all of the tweets for a user in the same entity as his other details -
login, etc. See objectify and its load groups for how to do this but
keeping logical separation in Java objects.

Mat.
On 8 Jan 2012 23:25, Amy Unruh amyu+gro...@google.com wrote:

 Serdar,

 If you are frequently pulling in and storing many users' Twitter streams,
 this might well require you to enable billing for your app eventually.
  However, during initial development and testing, you can probably reduce
 costs enough to avoid that (e.g., try turning down cron frequency).  See
 also the documentation regarding billable resources (e.g.
 http://code.google.com/appengine/docs/billing.html#Billable_Resource_Unit_Cost).
   For example, if not all properties in your entities need to be indexed,
 you can reduce your write costs by setting some to unindexed.

 As you comment, you ought to be able to greatly reduce the number of reads
 by using memcache.  You can use appstats (
 http://code.google.com/appengine/docs/python/tools/appstats.html) to get
 more detail on where your reads and writes are occurring.

 On Sun, Jan 8, 2012 at 10:09 PM, Serdar serdar...@gmail.com wrote:

 My app archives and displays tweets in a simple layout, which lets
 people easily browse older tweets of Twitter users.

 This is what happens in a typical user page:

 - Get 100 more tweets via Twitter API and save to the datastore. Each
 tweet is stored in a single Entity.

 - Get 1000 (will be 200 in the real case) tweets from the datastore
 and display.

 These datastore reads and writes fill the limits very very quickly.
 Even a single user (that's me testing) fills the quotas in minutes,
 checking one or two Twitter user's tweets.

 I'll use memcache for the reads and that'll help but I don't see my
 app could serve more than 10 users a day.

 An idea is to save, say, 100 tweets in a single Entity but that just
 sounds not right in terms of data structure.

 How would you store and display tweets (more than 100 a page) in your
 application? (A typical visitor would like to browse some thousands of
 tweets.)

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


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


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



Re: [appengine-java] My Project: Forum Hosting

2012-01-05 Thread Matthew Jaggard
I've already done the JDO to Objectify, using Guice and am planning on
using HRD. So, why do you use Shiro?

By the way, I find the password requirements quite annoying - you have
to specify an overly complicated password (more secure than my bank
requires!) and you don't even tell me in advance - just a small pink
warning at the top if I get it wrong.

On 5 January 2012 14:26, objectuser kevin.k.le...@gmail.com wrote:
 My project is a forum hosting service.  I have it up in demo mode at:

 http://support.fuzedtest.appspot.com/

 The demo is limited by the free quota, but you can still create and manage
 your own forum, register for a forum, etc.  This won't be the final
 location: it will be abandoned once the project officially goes live.  But
 right now I'm wondering how efficient it will be (and conversely how
 expen$ive it will be).  I spent some significant time trying to optimize
 datastore interactions and wonder if it was time well spent (that is, I
 wonder if I did a good job).  Some of the discussions on cost have me
 worried that it'll just cost too much to run.  Hope not.  And in any case,
 there's more I can do with caching, etc.

 It went through several phases, including changing from JDO to Objectify,
 Spring to Guice, integrating Apache Shiro, Master/Slave to HRD, leveraging
 GWT, working within the limitations of the GAE SSL support ... hope the new
 SSL support is released soon.

 With all of that and many other unexpected issues, I think I spend quite a
 bit more time on infrastructure than on features.  Hopefully that trend
 will reverse. I'm sure I'll have to fix and enhance the infrastructure part,
 but I'd rather spend more time adding features people like.

 Anyway, stop by and bang on it if you feel like it.  It'll be interesting to
 see if and when it blows the quota. :)

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/G1uS5KofZ0gJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

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



Re: [appengine-java] My Project: Forum Hosting

2012-01-05 Thread Matthew Jaggard
Also, the SSL doesn't quite work correctly. When I visit a URL like
this: https://support.fuzedtest.appspot.com/signin.html I get a
certificate error in chrome (server's certificate does not match the
URL) despite the fact that the certificate specifies *.appspot.com -
not sure what's going on there.

On 5 January 2012 14:38, Matthew Jaggard matt...@jaggard.org.uk wrote:
 I've already done the JDO to Objectify, using Guice and am planning on
 using HRD. So, why do you use Shiro?

 By the way, I find the password requirements quite annoying - you have
 to specify an overly complicated password (more secure than my bank
 requires!) and you don't even tell me in advance - just a small pink
 warning at the top if I get it wrong.

 On 5 January 2012 14:26, objectuser kevin.k.le...@gmail.com wrote:
 My project is a forum hosting service.  I have it up in demo mode at:

 http://support.fuzedtest.appspot.com/

 The demo is limited by the free quota, but you can still create and manage
 your own forum, register for a forum, etc.  This won't be the final
 location: it will be abandoned once the project officially goes live.  But
 right now I'm wondering how efficient it will be (and conversely how
 expen$ive it will be).  I spent some significant time trying to optimize
 datastore interactions and wonder if it was time well spent (that is, I
 wonder if I did a good job).  Some of the discussions on cost have me
 worried that it'll just cost too much to run.  Hope not.  And in any case,
 there's more I can do with caching, etc.

 It went through several phases, including changing from JDO to Objectify,
 Spring to Guice, integrating Apache Shiro, Master/Slave to HRD, leveraging
 GWT, working within the limitations of the GAE SSL support ... hope the new
 SSL support is released soon.

 With all of that and many other unexpected issues, I think I spend quite a
 bit more time on infrastructure than on features.  Hopefully that trend
 will reverse. I'm sure I'll have to fix and enhance the infrastructure part,
 but I'd rather spend more time adding features people like.

 Anyway, stop by and bang on it if you feel like it.  It'll be interesting to
 see if and when it blows the quota. :)

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/G1uS5KofZ0gJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

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



Re: [appengine-java] gae+gwt xml reading problem

2011-12-29 Thread Matthew Jaggard
Unless you have this working somewhere else, it's not relevant to this group.

Where do you have your code reading XML working already? Local app
engine? Standard Java app?
Can you post the code that's failing and any other code that's relevant?

If you can't get this working outside of the App Engine, you'll need
to get help elsewhere.

Thanks,
Mat.

On 29 December 2011 10:35, deltaaruna deltaar...@gmail.com wrote:
 Hi all,

 I tried to read a xml file using an gwt+google app engine app. But I
 am getting following exceptions

 No source code is available for type
 org.xml.sax.helpers.DefaultHandler; did you forget to inherit a
 required module?
 No source code is available for type javax.jdo.PersistenceManager; did
 you forget to inherit a required module?
 No source code is available for type javax.xml.parsers.SAXParser; did
 you forget to inherit a required module?
 No source code is available for type
 javax.xml.parsers.SAXParserFactory; did you forget to inherit a
 required module?
 No source code is available for type java.io.File; did you forget to
 inherit a required module?
 No source code is available for type
 javax.xml.parsers.ParserConfigurationException; did you forget to
 inherit a required module?
 No source code is available for type org.xml.sax.SAXException; did you
 forget to inherit a required module?
 No source code is available for type org.xml.sax.Attributes; did you
 forget to inherit a required module?

 Please someone help me.

 Thank You
 Aruna

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


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



Re: [appengine-java] Re: XML reading error.

2011-12-13 Thread Matthew Jaggard
kwanja9...@yahoo.com can you please be more careful with your blackcurrent,
you seem to be sending blank replies to lots of messages which is really
annoying.

On 13 December 2011 09:39, kwanja9...@yahoo.com wrote:

 **
 Sent from my BlackBerry® by dtac.
 --
 *From: * M.W. Aruna Withanage deltaar...@gmail.com
 *Sender: * google-appengine-java@googlegroups.com
 *Date: *Mon, 12 Dec 2011 23:53:09 -0800
 *To: *google-appengine-java@googlegroups.com
 *ReplyTo: * google-appengine-java@googlegroups.com
 *Subject: *Re: [appengine-java] Re: XML reading error.

 Dear Simon,

 Thank you for your information

 On 12 December 2011 23:06, Simon Knott knott.si...@gmail.com wrote:

 Hi,

 The GAE sandbox environment is restricted from reading arbitrary files
 from the file system, just as the production environment is.  You need to
 deploy the XML as part of your web application and then load the file.

 See http://code.google.com/appengine/kb/java.html#readfile for more
 information.

 Cheers,
 Simon

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/t39QvGEKgkkJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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

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


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



Re: [appengine-java]

2011-12-13 Thread Matthew Jaggard
WTF?

On 13 December 2011 14:31, kwanja9...@yahoo.com wrote:


 Sent from my BlackBerry® by dtac.

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



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



Re: [appengine-java] Re: Securing cron urls / task urls using UserService and not using web.xml

2011-12-09 Thread Matthew Jaggard
Raphael, is is the isUserLoggedIn() that returns false or the isUserAdmin()?
If the first returns false but the second returns true (which would make
SOME sense I guess!) then you could refactor your code to only run if
isUserAdmin() is true, rather than them both having to be true.

I have no idea, just a guess I'm afraid.

Mat.

On 9 December 2011 23:45, hendrix.jason hendrix.ja...@gmail.com wrote:

 There is probably a better way, but you could look at the user agent
 string (I see in my logs that the user agent string for pages launched
 by cron look like AppEngine-Google; (+http://code.google.com/
 appengine).

 Also, cron jobs are executed as admin.  You may be able to use the
 userService.isUserAdmin() functionality, although I haven't tested
 that.

 Thanks,
 Jason

 On Dec 8, 5:08 am, Raphael André Bauer raphael.andre.ba...@gmail.com
 wrote:
  Hi,
 
  I am currently trying to secure my urls that are accessed by cron jobs /
 tasks.
 
  Normally I would use web.xml like that:
 
  security-constraint
  web-resource-collection
  web-resource-nameProtected Area/web-resource-name
  url-pattern/cron/*/url-pattern
  /web-resource-collection
  auth-constraint
  role-nameadmin/role-name
  /auth-constraint
  /security-constraint
 
  However, I got a constraint, where these urls should be allowed to be
  triggered by other authentification mechanisms.
 
  Therefore I tried to use the UserService if a authenticated user is
  hitting the url. I though cron is an authenticated user...
 
  UserService userService = UserServiceFactory.getUserService();
 
  if (!userService.isUserLoggedIn()) {
 
  //do nothing
 
 
 
  } else if (!userService.isUserAdmin()) {
  //do nothing
  }
 
  //allow stuff to work...
 
  }
 
  But I do not get a logged in user when cron is programmatically hitting
 my urls.
 
  Is there a way to determine if google app engine is hitting my urls
  without using web.xml security constraints?
 
  Thanks,
 
  Best,
 
  Raphael

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



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



Re: [appengine-java] Newbie.... using Android.jar in GAE

2011-12-05 Thread Matthew Jaggard
Hi Gavin,
If I've missed something please don't be offended, but I think you're
missing the separation of Server and Client Device.
Google App Engine is all about running applications on Google's servers -
all communication with any device (Android, PC, etc.) needs to be done
using one of the pre-defined and allowed methods - most usually this is
HTTP - the main protocol used for web sites. Android's NFC classes are used
on the device for communicating with other nearby devices (ie. not GAE).

Again, sorry if it's me that's missed something.

Mat.

On 4 December 2011 14:25, Gavin Payne gavinapa...@gmail.com wrote:

 Hi Gang..

 I want to get access to NDEF class and  features for NFC. These are all
 part of Android.jar

 I have added the jar to my project.. and all my code is compiling
 correctly.

 But it will not run.. I am getting some errors from the android lib...

 I'm guessing there is some problem using the android lib in a standard GAE
 project.

 Any way i can make this work?

 Does anyone have any experience with this?

 thanks

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/W3MYNsXecQkJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: How to efficiently implement Quotas

2011-11-28 Thread Matthew Jaggard
Quite a few people seem to be using pull queues for this. Each time a
resource is used, you put a new item in a pull queue - you can then
periodically retrieve 1000 items from the queue in a single call and save
the information to the datastore.

On 26 November 2011 15:20, Max thebb...@gmail.com wrote:

 We use memcache + datastore counter and it works quite well.  Let's say
 datastore counter will be updated every time count % 1000 == 0. then
 even the memcache crashed then you lose 1000 uncharged API call at most.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/czgaitacwn0J.

 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: HUGE range (30 seconds+) in startup times

2011-11-24 Thread Matthew Jaggard
If you're new to the group, you may not yet know to ignore Tapir.

From what I've seen myself and read from others, this isn't normal
behaviour. Have you looked into whether you get similar behaviour locally?
Can you time how long it takes to start the JVM and your app and respond to
a request? Maybe write a script that runs the runserver ant task and then
calls wget to retrieve a page once it sees :8080 in the output?

I know that people using lots of areas of the Spring framework and also
JDO/JPA see much longer startup times than those who use lightweight
frameworks. Favourites seems to be Objectify, Guice, Freemarker, Cambridge
templates, Resteasy, Htmleasy. (These are mostly frameworks to handle just
part of the task that Spring does).

Mat.

On 24 November 2011 07:53, Tapir tapir@gmail.com wrote:

 Although GAE team always says the free quotas are enough for small
 apps,
 the facts deny this conclusion from time and time.

 I think the main problem is the instance scheduler.
 The instance scheduler is very not smart.

 On Nov 24, 3:46 pm, Tapir tapir@gmail.com wrote:
  Pay (to get more idle instances) or go.
 
  On Nov 24, 4:05 am, Scott Murphy sc...@pixoto.com wrote:
 
 
 
 
 
 
 
   Can someone please explain why the startup times of my app are HIGHLY
   inconsistent. The only access to the datastore I see is when it
 creates a
   session.
 
   What would cause such a high variance???
 
  1.
 1. 2011-11-23 11:59:24.042 /_ah/warmup 200 53918ms 6kb
  2.
 1. 2011-11-23 11:58:24.403 /_ah/warmup 500 68224ms 0kb
  3.
 1. 2011-11-23 11:58:08.254 /_ah/warmup 200 41931ms 6kb
  4.
 1. 2011-11-23 11:58:04.296 /_ah/warmup 200 38301ms 6kb
  5.
 1. 2011-11-23 11:57:31.280 /_ah/warmup 200 39769ms 6kb
  6.
 1. 2011-11-23 11:56:27.292 /_ah/warmup 200 39129ms 6kb
  7.
 1. 2011-11-23 11:55:09.358 /_ah/warmup 200 40067ms 6kb
  8.
 1. 2011-11-23 11:54:19.186 /_ah/warmup 200 41484ms 6kb
  9.
 1. 2011-11-23 11:53:10.643 /_ah/warmup 200 43649ms 6kb
  10.
 1. 2011-11-23 11:52:26.666 /_ah/warmup 200 35097ms 6kb
  11.
 1. 2011-11-23 11:52:21.543 /_ah/warmup 200 41004ms 6kb
  12.
 1. 2011-11-23 11:50:59.197 /_ah/warmup 200 50842ms 6kb
  13.
 1. 2011-11-23 11:50:38.411 /_ah/warmup 200 54322ms 6kb
  14.
 1. 2011-11-23 11:50:05.128 /_ah/warmup 500 61197ms 0kb
  15.
 1. 2011-11-23 11:49:49.509 /_ah/warmup 200 33466ms 6kb
  16.
 1. 2011-11-23 11:49:28.185 /_ah/warmup 200 43114ms 6kb
  17.
 1. 2011-11-23 11:49:04.039 /_ah/warmup 200 48665ms 6kb
  18.
 1. 2011-11-23 11:48:45.516 /_ah/warmup 200 56083ms 6kb
  19.
 1. 2011-11-23 11:48:38.776 /_ah/warmup 200 34770ms 6kb
  20.
 1. 2011-11-23 11:48:37.808 /_ah/warmup 200 55666ms 6kb
  21.
 1. 2011-11-23 11:48:16.366 /_ah/warmup 200 56648ms 6kb
  22.
 1. 2011-11-23 11:48:01.073 /_ah/warmup 200 51638ms 6kb
  23.
 1. 2011-11-23 11:47:29.635 /_ah/warmup 200 51231ms 6kb
  24.
 1. 2011-11-23 11:46:44.020 /_ah/warmup 500 63135ms 0kb
  25.
 1. 2011-11-23 11:46:25.135 /_ah/warmup 500 63424ms 0kb
  26.
 1. 2011-11-23 11:45:51.898 /_ah/warmup 200 48358ms 6kb
  27.
 1. 2011-11-23 11:45:04.530 /_ah/warmup 200 44475ms 6kb
  28.
 1. 2011-11-23 11:44:55.071 /_ah/warmup 200 45317ms 6kb
  29.
 1. 2011-11-23 11:42:54.513 /_ah/warmup 200 59274ms 6kb
  30.
 1. 2011-11-23 11:42:52.294 /_ah/warmup 200 53660ms 6kb
  31.
 1. 2011-11-23 11:42:47.333 /_ah/warmup 200 41321ms 6kb
  32.
 1. 2011-11-23 11:42:19.248 /_ah/warmup 500 63798ms 0kb
  33.
 1. 2011-11-23 11:41:27.386 /_ah/warmup 200 44808ms 6kb
  34.
 1. 2011-11-23 11:40:39.237 /_ah/warmup 200 56062ms 6kb
  35.
 1. 2011-11-23 11:40:07.117 /_ah/warmup 200 49035ms 6kb
  36.
 1. 2011-11-23 11:39:36.750 /_ah/warmup 200 56603ms 6kb
  37.
 1. 2011-11-23 11:39:24.583 /_ah/warmup 200 38206ms 6kb
  38.
 1. 2011-11-23 11:39:08.247 /_ah/warmup 200 48777ms 6kb
  39.
 1. 2011-11-23 11:38:37.122 /_ah/warmup 200 32621ms 6kb
  40.
 1. 2011-11-23 11:38:29.123 /_ah/warmup 200 43760ms 6kb
  41.
 1. 2011-11-23 11:38:11.801 /_ah/warmup 200 49921ms 6kb
  42.
 1. 2011-11-23 11:37:33.279 /_ah/warmup 200 32509ms 6kb
  43.
 1. 2011-11-23 11:37:01.625 /_ah/warmup 200 50572ms 6kb
  44.
 1. 2011-11-23 11:36:11.510 /_ah/warmup 200 46396ms 6kb
  45.
 1. 2011-11-23 11:36:00.549 /_ah/warmup 200 58911ms 6kb
  46.
 1. 2011-11-23 11:35:18.891 /_ah/warmup 200 39333ms 6kb
  47.
 1. 2011-11-23 11:34:52.073 /_ah/warmup 200 45786ms 6kb
  48.
 1. 2011-11-23 11:34:51.864 /_ah/warmup 200 49792ms 6kb
  49.
 1. 

Re: [appengine-java] Which java framework to use?

2011-11-21 Thread Matthew Jaggard
+1 for Objectify and for Guice (which also handles some Servlet type stuff)

I'm also using Cambridge templates (at Jeff's suggestion) and I'm just
about getting there although I'm having some issues with incomprehensible
error messages - I've found all the problems so far though.

Mat.

On 21 November 2011 07:49, Guillaume Laforge glafo...@gmail.com wrote:

 Hi,

 You might have a look at Gaelyk 1.1, which is quite lightweight:
 http://gaelyk.appspot.com/

 In dev mode, you can make changes and just refresh your browser, it's got
 a simple MVC approach, and lots of shortcuts and syntax sugar to make the
 GAE SDK APIs easier to use.

 Guillaume

 PS: disclaimer, I'm the author of that framework ;-)


 On Sun, Nov 20, 2011 at 12:54, sppl spol...@gmail.com wrote:

 I am starting off with a new project using app engine java. I am trying
 to decide what mvc framework to use. I went through previous messages
 posted by group members and found this 
 linkhttp://?place=msg%2Fgoogle-appengine-java%2F7wkMDm6kptY%2F-hxbaAyfK4sJ.
 I then narrowed down my choices to following frameworks,

 1) Play framework - I like this framework, but it seems to have long
 initialization time. Also the play GAE 
 modulehttps://github.com/guillaumebort/play-gaesupport seems to have 
 stopped/paused.

 2) Stripes framework - This seems to be lightweight, but it does not seem
 to be widely used.

 3) Slim3 - This is another lightweight framework I liked. But most of the
 users of this framework are in japan and the useful posts seem to be hidden
 in japanese.

 Are there any other java frameworks that work well on app engine
 (lightweight and good startup time)? Any advices, pointers are appreciated!


  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/c_EbGr7n0KYJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Guillaume Laforge
 Groovy Project Manager
 SpringSource, a division of VMware

 Blog: http://glaforge.appspot.com/
 Twitter: @glaforge http://twitter.com/glaforge
 Google+: http://gplus.to/glaforge

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


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



Re: [appengine-java] I loaded java today and now its saying it wont work

2011-11-16 Thread Matthew Jaggard
Sorry, I think you've posted to the wrong group. Are you trying to run a
Java program that you've written yourself on Google's servers? If not, then
this is not the right place to ask your question.


On 15 November 2011 21:35, slb67 slb196...@gmail.com wrote:

 can someone help me it says its still in the computer but I deleted it so
 what do i do now

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/g_0B1GqoWlcJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Backup Restore Data

2011-11-15 Thread Matthew Jaggard
Why would it be a problem to be missing data at 14:59 in your 15:00 backup?
Presumably if you have to restore at 18:23, you'll be far more concerned
about the data missing between 15:00 and 18:23 than the data from 14:59 to
15:00?

Mat.

On 15 November 2011 15:31, mscwd01 mscw...@gmail.com wrote:

 Hey

 I'd like to make a backup of the data of my HR datastore app. I looked
 at using the remote API but it somewhat unhelpfully says:
 If your app uses the High Replication datastore and you attempt to
 download data, you'll see a high_replication_warning error in the
 Admin Console, and the downloaded data might not include recently
 saved entities.

 It doesn't mention how to download data properly if you use the, now
 recommended, HR datastore - is it even possible?

 I'd feel much more relaxed if I knew I could create a backup and
 restore it if my live data were to become corrupt.

 Thanks

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



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



Re: [appengine-java] Error

2011-11-14 Thread Matthew Jaggard
I am using Netbeans with GAE without any issues at the moment, so it
should work. Can you check some things please?

Can you run the dev server using the command line (dev_appserver.cmd)?
If you can, can you run your code with it?
Have you loaded the server in Netbeans correctly - with the correct
paths, etc. listed under Servers under the Tools menu?
Does the file nbproject\ant-deploy.xml contain the correct path for the SDK?

Thanks,
Mat.

On 14 November 2011 04:22, Emmanuel Saenz emmanuel.sae...@gmail.com wrote:
 init:
 deps-module-jar:
 deps-ear-jar:
 deps-jar:
 library-inclusion-in-archive:
 library-inclusion-in-manifest:
 compile:
 compile-jsps:
 Starting Google App Engine
 Google App Engine Start Failed
 C:\Users\Familia\Documents\NetBeansProjects\emmanuelsaenzc\nbproject
 \build-impl.xml:721:
 Deployment error:
 Google App Engine Start Failed
 See the server log for details.
        at
 org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:
 223)
        at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.java:106)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:
 291)
        at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
        at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
 25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:
 106)
        at org.apache.tools.ant.Task.perform(Task.java:348)
        at org.apache.tools.ant.Target.execute(Target.java:390)
        at org.apache.tools.ant.Target.performTasks(Target.java:411)
        at org.apache.tools.ant.Project.executeSortedTargets(Project.java:
 1399)
        at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
        at
 org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:
 41)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
        at
 org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:
 284)
        at
 org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:
 539)
        at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:
 153)
 BUILD FAILED (total time: 2 seconds)

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



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



Re: [appengine-java] Error

2011-11-14 Thread Matthew Jaggard
By happy coincidence, I've just installed Netbeans and my code to a
new machine and had exactly the same issue. The problem is that my
default java.exe (the one that runs if you type java into a command
prompt) is a version that belongs to a JRE. The vital line in the
error log is one saying it could not find tools.jar in c:\program
files\java\jre6\lib - which it wouldn't because tools.jar is not part
of the JRE, it's part of the JDK.

I resolved this by setting my path variable to include the bin
directory of my JDK - in my case c:\program files\java\jdk1.6.0_22\bin
before the location of java.exe
I also uninstalled the JRE because I don't need it, but I guess that's optional.

On my previous dev machine I'd been using jdk7 and jre7 and had no issues.

Thanks,
Mat.

On 14 November 2011 09:23, Matthew Jaggard matt...@jaggard.org.uk wrote:
 I am using Netbeans with GAE without any issues at the moment, so it
 should work. Can you check some things please?

 Can you run the dev server using the command line (dev_appserver.cmd)?
 If you can, can you run your code with it?
 Have you loaded the server in Netbeans correctly - with the correct
 paths, etc. listed under Servers under the Tools menu?
 Does the file nbproject\ant-deploy.xml contain the correct path for the SDK?

 Thanks,
 Mat.

 On 14 November 2011 04:22, Emmanuel Saenz emmanuel.sae...@gmail.com wrote:
 init:
 deps-module-jar:
 deps-ear-jar:
 deps-jar:
 library-inclusion-in-archive:
 library-inclusion-in-manifest:
 compile:
 compile-jsps:
 Starting Google App Engine
 Google App Engine Start Failed
 C:\Users\Familia\Documents\NetBeansProjects\emmanuelsaenzc\nbproject
 \build-impl.xml:721:
 Deployment error:
 Google App Engine Start Failed
 See the server log for details.
        at
 org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:
 223)
        at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.java:106)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:
 291)
        at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
        at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
 25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:
 106)
        at org.apache.tools.ant.Task.perform(Task.java:348)
        at org.apache.tools.ant.Target.execute(Target.java:390)
        at org.apache.tools.ant.Target.performTasks(Target.java:411)
        at org.apache.tools.ant.Project.executeSortedTargets(Project.java:
 1399)
        at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
        at
 org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:
 41)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
        at
 org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:
 284)
        at
 org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:
 539)
        at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:
 153)
 BUILD FAILED (total time: 2 seconds)

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




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



Re: [appengine-java] JDOQL Query for missing properties

2011-11-14 Thread Matthew Jaggard
Because missing properties are not put into any index, it's not
possible to query on them. The only option is to query for every
single entity of the particular type. I guess you might need to change
your code to include those parameters and then write an update method
that you can run only once to query for all entities, update the
property and then put them back to the datastore.

Mat.

On 14 November 2011 14:12, Mr. Schtief lisc...@gmail.com wrote:
 Hi,
 I have a new property on an Entity and its only set at the new ones. The old
 entites show missing in the datastore viewer.
 How can i query with jdoql for entites that have missing OR propertyx ?
 thx in advance
 schtieF

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/EEGYHGa9tssJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: Improved query planner in SDK 1.6.0

2011-11-10 Thread Matthew Jaggard
Is this on the Dev server or the production system?
Do you see the behaviour on the other system (dev/production)?
Can you see the data using the Datastore viewer? (at
https://appengine.google.com/ on production or /_ah/admin/datastore on
your local dev server)
What code are you using to try and retrieve the data?
Are you using Query or Get?


On 10 November 2011 04:03, VIKASH PATEL vickyexpert...@gmail.com wrote:
 Hello Mat,
 I am using following code to create data in table .. and data are created
 successfully i can see it.
 But now  i am not able to edit or delete these data ...
  Key guestbookKey = KeyFactory.createKey(TableMaster, tblTableMaster);
         Date date = new Date();
         Entity greeting = new Entity(Company, guestbookKey);
         greeting.setProperty(cNo, no);
         greeting.setProperty(cName, name);
         greeting.setProperty(cDate, date);
         DatastoreService datastore =
 DatastoreServiceFactory.getDatastoreService();
         datastore.put(greeting);

 these will call every time  when user will fill the form with related fields
 and click on insert... so data will be inserted but then no edition or
 deletion for particular data ..
 Please help ,me for this please..

 thanks,
 Vikash Patel

 On Thu, Nov 10, 2011 at 4:32 AM, Emanuele Ziglioli
 theb...@emanueleziglioli.it wrote:

 So, from what I see, my query (that uses two simple indexes istead of
 one complex one) fails 4 or 5 times then succeeds. I'm testing on the
 local server with the latest SDK 1.6.0.

 The funny thing is that if I change the number of rows I fetch, that
 query also fails 5 times (or a number of seconds) before it starts
 working!!

 I don't know if I can log the GQL that goes out to show you

 On Nov 10, 10:54 am, Emanuele Ziglioli theb...@emanueleziglioli.it
 wrote:
  Just tried again, now it seems to be working!
 
  On Nov 10, 10:49 am, Emanuele Ziglioli theb...@emanueleziglioli.it
  wrote:
 
 
 
 
 
 
 
   It's not working for me either, using Siena:
 
 
   http://groups.google.com/group/siena-discuss/browse_thread/thread/b41...
 
   On Nov 10, 2:14 am, Matthew Jaggard matt...@jaggard.org.uk wrote:
 
Hi VIKASH,
   It looks like you've replied to an unrelated message. If this is
not the case, please clarify. Otherwise, please repost a new thread
and give more detail.
 
What are you trying to do?
What have you tried?
Are you using the low level API, JDO or JPA?
Post the relevant bit of your code too if possible.
 
Thanks,
Mat.
 
On 9 November 2011 12:47, VIKASH PATEL vickyexpert...@gmail.com
wrote:
 
 Hello Friends,
 
 Can anyone have idea for working with datastore.
 I am able to create key and entity in data store but i am not able
 to edit
 or delete the created data..
 so if any one has then pls help me
 
 On Wed, Nov 9, 2011 at 3:12 PM, Mos mosa...@googlemail.com
 wrote:
 
 Does the improved query planner reduce the need of managing
 indexes
 manually in the datastore-index.xml file?
 
 I'm a bit confused.
 The documentation is not obvious for me.
 
 In local development mode  I set autoGenerate=false and delete
 the
 datastore-index-auto.xml.
 My application runs fine.
 
 Deploying on GAE I've got the annoying
 
 com.google.appengine.api.datastore.DatastoreNeedIndexException:
 no
 matching index found.
 
 exception.
 
 Hence, how does the improved query planner change the workflow of
 a GAE
 developer?
 
 Cheers
 Mos
 
 --
 You received this message because you are subscribed to the
 Google Groups
 Google App Engine for Java group.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en.
 
 --
 You received this message because you are subscribed to the Google
 Groups
 Google App Engine for Java group.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en.

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


 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-java

Re: [appengine-java] Re: Templating Frameworks

2011-11-09 Thread Matthew Jaggard
Hi Daniel,
   Thanks for that - really helpful and I'll be sure to look carefully
at that option. One metric that you miss out and I consider important
for GAE is start-up time. How long does it take from starting the JVM
to serving the first template? At the moment, the majority of my
requests don't really have a UI as such (they're basically static
pages) but the admin interface uses the StringBuilder method I
mentioned - the last thing I want is to slow down my main application
for ease of programming the admin interface.

Thanks,
Mat.

On 9 November 2011 08:49, Daniel Florey daniel.flo...@gmail.com wrote:
 You can check out our comparison page for the different engines available:
 http://code.google.com/p/jmte/wiki/Comparison

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/BqFh82n8DZ4J.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Improved query planner in SDK 1.6.0

2011-11-09 Thread Matthew Jaggard
Hi VIKASH,
   It looks like you've replied to an unrelated message. If this is
not the case, please clarify. Otherwise, please repost a new thread
and give more detail.

What are you trying to do?
What have you tried?
Are you using the low level API, JDO or JPA?
Post the relevant bit of your code too if possible.

Thanks,
Mat.

On 9 November 2011 12:47, VIKASH PATEL vickyexpert...@gmail.com wrote:
 Hello Friends,

 Can anyone have idea for working with datastore.
 I am able to create key and entity in data store but i am not able to edit
 or delete the created data..
 so if any one has then pls help me


 On Wed, Nov 9, 2011 at 3:12 PM, Mos mosa...@googlemail.com wrote:

 Does the improved query planner reduce the need of managing indexes
 manually in the datastore-index.xml file?

 I'm a bit confused.
 The documentation is not obvious for me.

 In local development mode  I set autoGenerate=false and delete the
 datastore-index-auto.xml.
 My application runs fine.

 Deploying on GAE I've got the annoying

 com.google.appengine.api.datastore.DatastoreNeedIndexException: no
 matching index found.

 exception.

 Hence, how does the improved query planner change the workflow of a GAE
 developer?

 Cheers
 Mos

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

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


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



Re: [appengine-java] Re: Wrap the blobstore upload

2011-11-07 Thread Matthew Jaggard
from the API I see this task could be a problem

Why? I can't see obvious blocking issues but there are some clear
challenges. Maybe raise an enhancement request if you have specifics?

Also, why do you want a RESTful web-service? Is there a problem having
a slightly more relaxed attitude like GET = requests that do not
change state, POST = requests that do change state?

Mat.

On 7 November 2011 08:55, Miguel doctormig...@gmail.com wrote:
 any news regarding this issue? ..

 On Oct 26, 2:16 am, Miguel doctormig...@gmail.com wrote:
 .. with a RESTful web-service.
 I was wondering if anyone has tried to do something similar ..

 In fact I am interested in creating a whole RESTful implementation
 with Google App Engine as backend and from the API I see this task
 could be a problem

 Thank you,
 Michele

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



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



Re: [appengine-java] Re: many different Properties or Entity for name/value pairs

2011-11-04 Thread Matthew Jaggard
From previous threads, it seems that the datastore prefers few large
entities to more smaller ones - this is also reflected in pricing, you
pay per operation as well as per byte. Storing a Map of Name-Value is
exactly what the datastore is made for.

I did talk to Jeff at Objectify about this (because I'm using
Objectify for all my other entities) and he said that although this
use case is probably valid and I'm (clearly now) not the only one
doing it, making Objectify handle this case would complicate it too
much. I think I agree with this, especially since the datastore
handles properties like this so nicely.

In addition, I can now make use of Objectify's CachingDatastoreService
which means I don't have to worry about Memcache :-)

One thought - can you search based on an item in a collection? If not
and you do need to search based on these values, you might need to be
more creative about how to split them.
MyName-MyValue1
and
MyName-MyValue2
which might become...
MyName-Collection([MyValue1, MyValue2])
or perhaps...
MyName.1-MyValue1
and
MyName.2-MyValue2
if MyName.1 will never be a property name itself, and you can deal
with parsing this.

Thanks,
Mat.

On 4 November 2011 07:53, Mister Schtief lisc...@gmail.com wrote:
 hi gerald,

 thx for your answer but this is the ugliest solution ;) why serializing all
 pairs and storing them in one.property  it will never be searchable...

 using one entity property for every map.entry or using one entity of a key
 value pair type, thats the question ;)

 schtief

 Am 04.11.2011 07:10 schrieb Gerald Tan woefulwab...@gmail.com:

 You can serialize a MapString,String property into a byte array to be
 stored in the entity
 The easiest way to do this would be to use Objectify with the @Serialized
 annotation

 http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#@Embedded

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/_tZZPKf5r6cJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

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


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



Re: [appengine-java] Users changing data

2011-11-04 Thread Matthew Jaggard
Sure, thanks Ikai, I should have done this first time around.

When putting the entity (code from around my app stuck together)

log(Storing user {0}, us.getCurrentUser().getUserId());
DatastoreServiceConfig DATASTORE_CONFIG =
DatastoreServiceConfig.Builder.withDeadline(5);
DATASTORE_CONFIG.readPolicy(new ReadPolicy(ReadPolicy.Consistency.EVENTUAL));
DatastoreService ds =
DatastoreServiceFactory.getDatastoreService(DATASTORE_CONFIG)
Entity e = new Entity(UserForTesting);
e.setProperty(User, us.getCurrentUser());
ds.put(e);


In a separate request (and I am sure that I'm looking at the same
object!) (Dull Java code removed)

PreparedQuery pq = ds.prepare(new Query(UserForTesting));
...
pq.asIterable()
...
e.getProperties()
...
log(u.getUserId());
log('/');
log(u.getNickname());
...

On 4 November 2011 01:05, Ikai Lan (Google) ika...@google.com wrote:
 Can you post code? It's not clear to me what you're doing.
 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 plus.ikailan.com | twitter.com/ikai


 On Thu, Nov 3, 2011 at 4:39 PM, Mat Jaggard matt...@jaggard.org.uk wrote:

 I have an entity that stores a user, however the user gets changed.
 When I put the entity in to the local datastore, the ID is like this
 18530476822013922411 but when I get it out the ID is like this
 -1403876245. I haven't tried on production.

 Any ideas what's causing the issue? Have I done something wrong?

 Thanks,
 Mat.

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


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


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



Re: [appengine-java] Re: Error: Server Error occurs when login using OpenID using GAE/J

2011-11-04 Thread Matthew Jaggard
Ah, yes. I saw your original post but couldn't see why it would be
happening - it wasn't an error I came across when getting mine
working.

The code I use for Google accounts (regardless of whether they're apps
or not) is like this...

UserService us = UserServiceFactory.getUserService();
response.sendRedirect(us.createLoginURL(nextPageURL, null,
https://www.google.com/accounts/o8/id;, null));

When I tried with https://www.google.com/a/mydomain.com/o8/ud?be=o8
(with or without the be=o8 bit) instead of
https://www.google.com/accounts/o8/id I get a 500 error and nothing in
the logs - literally nothing, even when showing All requests!

The error is on this page...
http://myapp.mydomain.com/_ah/login_redir?claimid=https://www.google.com/a/mydomain.com/o8/udcontinue=http://myapp.mydomain.com/public/loggedin?continue=http%3A%2F%2Fmyapp.mydomain.com%2Fadmin%2Fhome

If you did use the method I've used, you could check the domain of the
user after they're logged in I guess?

Thanks,
Mat.

On 4 November 2011 10:03, Koen Maes k...@koma.be wrote:
 Relevant code?

 * at startup, first thing that happens is a redirect like in case parameter
 domain is present, otherwise I sent 401 - Unauthorized. The redirect seems
 to cause the server error.

 SetString attributesRequest = new HashSetString();

 attributesRequest.add(openid.mode=checkid_immediate);

 attributesRequest.add(openid.ns=http://specs.openid.net/auth/2.0;);

 String loginUrl =
 userService.createLoginURL(request.getOriginalRef().toString(), domain,
 https://www.google.com/a/; + domain + /o8/ud, new HashSetString());

 response.redirectTemporary(loginUrl);

 * Has it ever worked?

 No, only using dev server, this is the first deploy. I tried re-deploying
 without luck

 * What have you tried?

 I wonder what other options I have to try ?

 * When do you get the error?

 Immediately and always

 * All accounts or just one OpenID provider?

 It is intended to work with any Google Apps domain - a future apps
 marketplace application

 * Any stack trace printed or errors shown in the logs?

 Nothing whatsoever

 * Does your authentication work OK on the development server?

 Yes

 * Why are these questions in order of length, even though I typed themas I
 thought of them?

 LOL

 One more thing :
 navigating to data store admin on the backend gives me this error :

 Error: Not Found

 The requested
 URL /_ah/login_required?continue=http://ah-builtin-python-bundle-dot-latest-dot-koma-software-3.appspot.com/_ah/datastore_admin/ was
 not found on this server.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/EO8cxjjMUskJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: Error: Server Error occurs when login using OpenID using GAE/J

2011-11-04 Thread Matthew Jaggard
Excellent but...
a. Why?!
b. Where's the documentation?!


On 4 November 2011 12:49, Koen Maes k...@koma.be wrote:
 fixed it by providing simply the domain as openid idenitty and NULLs for the
 other params :
 loginUrl = userService.createLoginURL(request.getOriginalRef().toString(),
 null, domain, null);


 :-D

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/EBwqiAnjFU4J.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: Users changing data

2011-11-04 Thread Matthew Jaggard
When I view using the datastore viewer, I can only see the e-mail
address of the user (plus the ID of the entity and the encoded key +
write ops).

The User I'm saving is the one that I get from
userService.getCurrentUser() on the dev server and I'm the comparing
the difference in ID from user.getUserId() before and after saving
to/loading from the datastore.

On 4 November 2011 18:30, Ikai Lan (Google) ika...@google.com wrote:
 Yeah, that's weird. When you look at http://localhost:8080/_ah/admin, which
 user ID is it?
 Also ... are those the IDs the dev server is giving you? The dev_server
 should be giving pretty simple IDs, if I'm not mistaken.

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 plus.ikailan.com | twitter.com/ikai


 On Fri, Nov 4, 2011 at 7:35 AM, Mat Jaggard matt...@jaggard.org.uk wrote:

 I can now confirm that I do not see this behaviour in production -
 only on the dev server.

 On Nov 4, 9:01 am, Matthew Jaggard matt...@jaggard.org.uk wrote:
  Sure, thanks Ikai, I should have done this first time around.
 
  When putting the entity (code from around my app stuck together)
 
  log(Storing user {0}, us.getCurrentUser().getUserId());
  DatastoreServiceConfig DATASTORE_CONFIG =
  DatastoreServiceConfig.Builder.withDeadline(5);
  DATASTORE_CONFIG.readPolicy(new
  ReadPolicy(ReadPolicy.Consistency.EVENTUAL));
  DatastoreService ds =
  DatastoreServiceFactory.getDatastoreService(DATASTORE_CONFIG)
  Entity e = new Entity(UserForTesting);
  e.setProperty(User, us.getCurrentUser());
  ds.put(e);
 
  In a separate request (and I am sure that I'm looking at the same
  object!) (Dull Java code removed)
 
  PreparedQuery pq = ds.prepare(new Query(UserForTesting));
  ...
  pq.asIterable()
  ...
  e.getProperties()
  ...
  log(u.getUserId());
  log('/');
  log(u.getNickname());
  ...
 
  On 4 November 2011 01:05, Ikai Lan (Google) ika...@google.com wrote:
 
 
 
 
 
 
 
   Can you post code? It's not clear to me what you're doing.
   --
   Ikai Lan
   Developer Programs Engineer, Google App Engine
   plus.ikailan.com | twitter.com/ikai
 
   On Thu, Nov 3, 2011 at 4:39 PM, Mat Jaggard matt...@jaggard.org.uk
   wrote:
 
   I have an entity that stores a user, however the user gets changed.
   When I put the entity in to the local datastore, the ID is like this
   18530476822013922411 but when I get it out the ID is like this
   -1403876245. I haven't tried on production.
 
   Any ideas what's causing the issue? Have I done something wrong?
 
   Thanks,
   Mat.
 
   --
   You received this message because you are subscribed to the Google
   Groups
   Google App Engine for Java group.
   To post to this group, send email to
   google-appengine-java@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.com.
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.
 
   --
   You received this message because you are subscribed to the Google
   Groups
   Google App Engine for Java group.
   To post to this group, send email to
   google-appengine-java@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.com.
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.

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


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


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



Re: [appengine-java] many different Properties or Entity for name/value pairs

2011-11-03 Thread Matthew Jaggard
I have an entity that has a class containing a MapString,String
called data - I then convert this to an entity using the method below

private Entity toEntity()
{
Entity entity = new Entity(KIND, this.getName());
if (data == null || data.isEmpty())
{
return entity;
}
for (Map.EntryString, SetString paramEntry : this.data.entrySet())
{
if (paramEntry.getKey() == null || paramEntry.getValue() == 
null ||
paramEntry.getValue().isEmpty())
{
continue;
}
entity.setUnindexedProperty(paramEntry.getKey(), 
paramEntry.getValue());
}
return entity;
}

and an opposite
private static MyClass fromEntity(Entity e)
method.

You could equally apply a collection to the map, for example the type
MapString,SetString (I've used Set because the order is not
guaranteed by App Engine). Then you could have more than one entry
with the same name - you'll just need to manage that in your classes
somehow.

Thanks,
Mat.

P.S. I know I should have used a DAO for this, but it's a quick and
dirty solution for now, I'm not sure I'll be using it long term - I
might use namespaces for the same task.

On 3 November 2011 11:23, Mr. Schtief lisc...@gmail.com wrote:
 Hi,
 I'm using low level API for creating and managing Entitities. I have a Kind
 of Entity that can have unlimited name value pairs. Should i add them as
 properties or should i create a new kind of entity with the two properties
 name value and link them to the parent entity.
 putting them as properties in the parent entity seems the best way for me,
 but then i have the problem of the datastore viewer which will display all
 possible properties for all entities, so the viewer page would be very wide.
 The other problem is, that i cannot use multiple values for the same
 property name. right?
 would do you suggest
 schtieF

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/yzU8RMCIiGwJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] 1.6.0 Prerelease SDKs are out

2011-11-01 Thread Matthew Jaggard
Regarding the index selection shown here:
http://code.google.com/appengine/articles/indexselection.html

is it possible / required to put the query in the right order to get
the best performance?

For example, if I have a lot of black and white photos and just a
handful of panoramic ones, does the first query below behave
differently compared to the second?
SELECT * FROM Photo WHERE colouration=black  white AND
aspect=panoramic ORDER BY date_added DESC;
SELECT * FROM Photo WHERE aspect=panoramic AND colouration=black 
white ORDER BY date_added DESC;

On 1 November 2011 01:13, Marzia Niccolai ma...@google.com wrote:
 Hi,
 We've just uploaded the 1.6.0 Prerelease SDKs:
 http://code.google.com/p/googleappengine/downloads/list
 Please note that new features are not available in production until the
 final release, and documentation for these features will be available at
 this time as well. Let us know if there are any issues found.
 Below are the release notes for this release.
 Thanks,
 Marzia

 App Engine Python SDK - Release Notes

 Version 1.6.0
 ===
 - On November 7th, App Engine will be out of Preview. The new Terms of
 Service
   and previously announced pricing changes will be in effect. Additionally,
 all
   paid apps are now covered by our SLA.
 http://www.google.com/enterprise/cloud/appengine/pricing.html
 - Paid apps can now specify the maximum pending latency for instances and
 the
   minimum number of idle instances for your application in the Admin
 Console.
 - We have released an experimental utility, available in the Admin Console,
 to
   assist in migrating your application to the High Replication datastore.
 This
   utility allows you to copy the bulk of your data in the background, while
 the
   source application is still serving. You then need a brief read-only
 period to
   migrate your application data while you copy the data that has changed
 from
   the time the original copy started.
 - Blobstore, which was previously limited to apps with billing enabled, is
 now
   available for all apps.
 - We have published a new article on Datastore Index Selection and Advanced
   Search which explains our recent improvements to the query planner that
 make
   exploding indexes unnecessary.
 http://code.google.com/appengine/articles/indexselection.html
 - Applications can now receive xmpp error stanzas at /_ah/xmpp/error.
 - In the Admin Console data viewer, you can now filter by namespace from a
 drop
   down menu, if applicable.
 - In the Admin Console's Datastore Statistics, we now offer namespace
 suggest
   for filtering stats.
 - We have released as experimental the full MapReduce framework.
 - The mail_stub.get_sent_messages() call now returns EmailMessage instances.
 - Fixed an issue when setting an initial_value in memcache.incr unexpectedly
   returned a string.
 http://code.google.com/p/googleappengine/issues/detail?id=2012
 - Fixed an issue where DoS stats in the Admin Console didn't work for High
   Replication apps.
 http://code.google.com/p/googleappengine/issues/detail?id=5237

 App Engine Java SDK - Release Notes

 Version 1.6.0
 =
 - On November 7th, App Engine will be out of Preview. The new Terms of
 Service
   and previously announced pricing changes will be in effect. Additionally,
 all
   paid apps are now covered by our SLA.
 http://www.google.com/enterprise/cloud/appengine/pricing.html
 - Paid apps can now specify the maximum pending latency for instances and
 the
   minimum number of idle instances for your application in the Admin
 Console.
 - We have released an experimental utility, available in the Admin Console,
 to
   assist in migrating your application to the High Replication datastore.
 This
   utility allows you to copy the bulk of your data in the background, while
 the
   source application is still serving. You then need a brief read-only
 period to
   migrate your application data while you copy the data that has changed
 from
   the time the original copy started.
 - Blobstore, which was previously limited to apps with billing enabled, is
 now
   available for all apps.
 - We have published a new article on Datastore Index Selection and Advanced
   Search which explains our recent improvements to the query planner that
 make
   exploding indexes unnecessary.
 http://code.google.com/appengine/articles/indexselection.html
 - Applications can now receive xmpp error stanzas at /_ah/xmpp/error.
 - In the Admin Console data viewer, you can now filter by namespace from a
 drop
   down menu, if applicable.
 - In the Admin Console's Datastore Statistics, we now offer namespace
 suggest
   for filtering stats.
 - Added API functionality for making calls to the Memcache API
 asynchronously.
 - In the Memcache API, getIdentifiable() and putIfUntouched() now support
   batch operations.
 - We've added a page, /_ah/admin/capabilitiesstatus, to the dev console that
   allows you to configure the capability 

Re: [appengine-java] Optimizations with Datastore + JDO

2011-10-27 Thread Matthew Jaggard
I'm afraid I can't answer your questions directly, but I would
sincerely suggest you look at Objectify. It offers a tidy way to
migrate to using the low level datastore - and is much easier to code.
JDO feels like a square SQL peg for the round hole of NoSQL.

On 25 October 2011 03:18, Sheado chad...@gmail.com wrote:
 Hi All,
 My app uses JDO with the DataStore. When writing an Entity with ~100
 children a request could take somewhere between 3-10 seconds realtime and
 ~80331cpu_ms ~78231api_cpu_ms.
 Can these numbers be improved for writes of this size? Is there a good
 chance my requests will deadline?
 After reading the docs and watching the IO sessions, I got the following
 ideas for improving performance:
 * Using the low level api with setMulti() should clump all the writes into a
 single RPC. I'm guessing PersistenceManager isn't doing that for us with
 ArrayList child objects?
 * Try using the Async API
 * I couldn't find any obvious way of improving JDO write speeds
 I'd really appreciate some direction so I don't waste my time trying a
 thousand solutions. Any advice would be awesome!
 Thanks,
 Chad
 P.S. My data structure is as follows (abbreviated code):
 Parent{
 String key; // String key
 ArrayListGameData gameData;
 ArrayListUserData userData;
 }
 GameData{
 private Key key; private int itemType;
 private int item;
 private float ...;
 private float ...;
 private int ...
 private int ...;
 private int ...;
 private long ...;
 private int ...;
 }
 UserData{
 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 private Key key;
 private int ...;
 private String ...;
 private long ...; private boolean ...;
 }

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/dXJiA5r7OfYJ.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Is threadsafe setting ignored for java applications?

2011-10-27 Thread Matthew Jaggard
Were all the requests sent at the same time (can you check using
wireshark or similar) or did your browser queue them - most browsers
have a connections per server limit as well as a total connection
limit and some will do their best to re-use a single connection where
possible.

On 26 October 2011 21:46, cryb cbuti...@gmail.com wrote:
 Hello.
 In order to test if threadsafe setting is working as expected, I wrote a
 small application that increments a static counter variable, sleeps for a
 couple of seconds and returns the counter's value in a web page. After that
 I've issued 15 requests in parallel from my browser (using different tabs).
 During the test, the same server instance served all my requests (as shown
 in admin console / instances)... this was also in agreement with the
 returned web pages where the counter increased from 1 to 15 (i.e. all
 requests were processed by the same server instance sharing the same static
 counter variable).
 So far, so good... the only problem was that all requests were serialized,
 as if no threadsafe setting was in place (I mention here that I've
 included  threadsafetrue/threadsafe in appengine-web.xml file)... The
 sleep time I used was 3 seconds and I had to wait about 15*3 = 45 seconds
 for the last tab to complete and to display the generated web page.
 So my question is: why does threadsafe setting seems to be ignored for
 java applications? Is there a bug in appengine system?
 Thank you.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/1wPUkvSu3o8J.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Is threadsafe setting ignored for java applications?

2011-10-27 Thread Matthew Jaggard
Have you tried adding a different query parameter to each request?

On 27 October 2011 13:53, cryb cbuti...@gmail.com wrote:
 Thank you for your response... indeed, it was the browser that serialized
 all the requests (I used both Firefox 3.x and 7.x)... I've checked the app
 using wget and everything worked as expected. I didn't bother to check the
 browser because I configured Firefox to use separate brand new connections
 for each request (network.http.keep-alive = false,
 network.http.max-connections=256,
 network.http.max-connections-per-server=15) and I'm not behind a proxy...
 Anyway, it seems that for the same resource, Firefox still serializes
 requests and ignores all the above settings.
 Now, after seeing what the problem was, I've gone even further and
 configured Firefox to use http pipelining and persistent connections
 (network.http.keep-alive = true, network.http.max-connections=256,
 network.http.max-connections-per-server=15, network.http.pipelining=true)
 with no more luck: the requests for the same resource are still being
 serialized.
 Any ideas how to convince Firefox to open concurrent connections to the same
 web resource?

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/M69MJh1QZm4J.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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



Re: [appengine-java] Re: Strange behavior with OpenID

2011-10-26 Thread Matthew Jaggard
Why would you expect to? Your application and Google are different
things so there are 4 possible states...

Logged in to Google but not your app,
Logged in to Google and your app,
Logged in to your app but not Google,
Not logged in to either.

On 26 October 2011 11:13, Miguel doctormig...@gmail.com wrote:
 Ok, that's what I did ..
 The problem is that I don't see the user == null when I log out from
 the OpenID provide (Gmail for example)

 On Oct 19, 12:05 am, Sudhakar Abraham s.abra...@datastoregwt.com
 wrote:
 Get the userService object  from the UserServiceFactory class in
 google app engine api.   Invoke the getCurrentUser() method in
 userService object.  Check whether the user is alive or not. if user
 is alive call the createLogoutURL(pass_your_ logout_ url), or call the
 createLoginURL(pass_your _login _url)  in UserService object.

 S. Abrahamwww.DataStoreGwt.com
 Persist objects directly in Google App Engine

 //In Jsp page

 %@ page import=com.google.appengine.api.users.User %
 %@ page import=com.google.appengine.api.users.UserService %
 %@ page import=com.google.appengine.api.users.UserServiceFactory %
 %
 UserService userService = UserServiceFactory.getUserService();
 User user = userService.getCurrentUser();
 %

 %if (user != null) {%
   a href=%= userService.createLogoutURL(request.getRequestURI())
 %
     Sign out %=user.getNickname()%
   /a
 %} else {%
   a href=%= userService.createLoginURL(request.getRequestURI())
 %
     Sign in
   /a
 %}%

 On Oct 18, 12:26 pm, Miguel doctormig...@gmail.com wrote:







  I don't understand if it is a bug or I am doing something wrong ..

  I am using the federated login: when I logout from Google I still
  remain logged in my web-application.

  I do the authentication in that way .. Is it wrong?

  UserService userService = UserServiceFactory.getUserService();
  User loggedUser = userService.getCurrentUser();
  ..
  if(loggedUser!=null) {
  ..

  } else {
  ..
  }

  Even if I am logged out by google the loggedUser I cannot pass by
  the else statement. The loggedUser is always different from null ..

  Why? What am I doing wrong?

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



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



Re: [appengine-java] with the 1.5.5 sdk, the local_db.bin file format has changed

2011-10-22 Thread Matthew Jaggard
That would help a lot for us Netbeans users too - at present, I find
my datastore is being deleted quite often because it's put into a
folder that's deleted when the Clean Ant task runs. I haven't yet
found a work around for this (I was thinking I could copy it off
before doing the clean and copy it in if it doesn't exist when
compiling, but I failed to do that for some reason).

On 22 October 2011 01:52, Ikai Lan (Google) ika...@google.com wrote:
 Yeah, the local stub uses a serialized map, complete with all the caveats of
 Java serialization. There's a TODO here to use something like Derby instead,
 but that's not on the roadmap.
 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 plus.ikailan.com | twitter.com/ikai


 On Fri, Oct 21, 2011 at 1:46 PM, Tommy Fannon tfan...@gmail.com wrote:

 thank you.  i didn't think they would be that dense, but you never know.
 the funny thing is:  i think i've taken about 10 sdks and that's the first
 time i've seen that message.
 i have a seed data generation program the puts test data back into my
 local db.
 thank you again for the reply.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/DuwRclteS3UJ.
 To post to this group, send email to
 google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

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


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



Re: [appengine-java] Greetings - continuous integration with Google Eclipse plugin

2011-10-18 Thread Matthew Jaggard
The Netbeans plugin provides an Ant script.

On 18 October 2011 01:25, fkhan fazlesk...@gmail.com wrote:
 Greeting,  as part of a class project that is using GAE and GWT via
 the Google Eclipse plugin I would like to add a continuous integration
 system like CruiseControl or Teamcity to regression test the
 application.  Both these regression applications however seem to rely
 on the build having an ANT build script which the Google Eclipse
 plugin does not provide.  Does anyone have a suggestion for
 workarounds, or if an ANT build script that duplicates the build
 targets of the Google Eclipse plugin available?

 -fazle

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



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



Re: [appengine-java] SQL Service

2011-10-11 Thread Matthew Jaggard
You're not a regular here are you?!

On 11 October 2011 14:24, Muhammad Ijaz Khan aija...@gmail.com wrote:
 Any thoughts on this announcement, please share :)

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


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



Re: [appengine-java] Re: Mobile subdomain in app engine

2011-10-10 Thread Matthew Jaggard
Hi Nischal,
I'm afraid that this won't do what the user wanted - I'm sure he'd
need access to the same datastore and memcache.

Mat.

On 10 October 2011 15:02, Nischal nischalshett...@gmail.com wrote:
 You don't really need to do anything different in order that a user who
 lands on m.mydomain.com sees a different page. Wherever you have your domain
 hosted, make m point to google's name server (I think some ghs.google.com)
 After that, go to your appengine admin and configure this as another domain
 that the app can be accessed from. Whenever a user hits m.mydomain.com you
 would know and display the appropriate page to the user.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine-java/-/xmJ-8WNIdc8J.
 To post to this group, send email to google-appengine-java@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


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