[appengine-java] Re: What Is "It's possible for two entities to have values of different types for the same property"

2011-01-05 Thread Didier Durand
Hi Andy,

You are 100% right, low level ds api is the other possibility to have
heterogeneous entities.

I forgot about it as I am used to work at the pojo level of abtraction
(with Objectify)

regards

didier

On Jan 6, 7:07 am, Andy  wrote:
> Thanks for your quick reply.
>
> I actually thought about it again and read it again, it's not just about
> updating schema, but the GAE documentation is all about the low level API,
> not JDO nor JPA.  I am using JDO now so I thought that it is talking about
> JDO but it's not.
>
> So here's what I found in case someone wants to know too.  You create class
> and pre-define all properties and their types.  Therefore, you will only
> store different types of values for the same property when you update the
> schema if you are using JDO or JPA.
>
> However, if you are using low level API, you create entity with following
> line:
>
> Entity entity = new Entity("Employee");
> entity.setProperty("age", 5);
> datatstore.put(entity);
>
> ...
>
> and then you store the same type of entity but with a String age:
>
> Entity entity = new Entity("Employee");
> entity.setProperty("age", "10");
> datatstore.put(entity);
> ..
>
> So though they have the same kind (which is the same as having one Employee
> Class in JDO/JPA), you can store age as integer and String or any other GAE
> type.
>
> I hope I understood correctly and helpful to others.

-- 
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-j...@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: Trying to page through all children of an entity

2011-01-05 Thread Ryan Sims
On Thu, Jan 6, 2011 at 12:32 AM, Didier Durand  wrote:
> Hi,
>
> Don't see the code snippet in the page that you quote: it seems that I
> get another version of the page when i use your url.

Looks like the docs changed between then and now, probably coincident
with the 1.4.1 release.

> I would guess that your issue comes from the '-' interpreted as
> operand minus in the query.

I gathered as much from the exception, yes. Glancing through the new
docs, it looks like the question is moot, since the snippet I quoted
no longer appears. For now I'm explicitly storing the parent's id in
the child, which seems to work just fine. Though it looks like a
"mappedBy" annotation would also do the trick.

--
rwsims

> regards
> didier
>
> On Jan 5, 9:01 pm, decitrig  wrote:
>> In JDO, I'm trying to get all the ImportVendor entities that are children of
>> a specific ImportSession entity, which has a Set. I want to
>> page through them using query cursors. I've tried the following, based on
>> the docs:
>>
>>     Query children = pm.newQuery(ImportedVendor.class);
>>     children.setFilter("parent-pk == keyParam");
>>     children.declareParameters("Long keyParam");
>>     List vendors = (List)
>> children.execute(page.getSession().getId());
>>
>> I get an UnspportedDatastoreOperatorException saying that AppEngine doesn't
>> support the "-" operator.
>>
>> What am I doing wrong?
>>
>> Athttp://code.google.com/appengine/docs/java/datastore/transactions.htm...,
>> there's this snippet:
>> query = pm.newQuery("select from Account " +
>>                                 "where parent-pk == keyParam " +
>>                                 "parameters Key keyParam");
>>
>> Does this snippet actually work? I feel like I'm doing exactly the same
>> thing, and getting an exception. How do I specify a parent key in a query?
>>
>> --
>> rwsims
>
> --
> 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-j...@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-j...@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 Running GuestBook !~

2011-01-05 Thread Khor Yong Hao
Refer to
http://fyhao.com/2010/12/computer-and-it/appengine/google-appengine-jsp-compilation-problem/
where
the solution I have stated, thanks.

On Thu, Jan 6, 2011 at 2:30 PM, A. Stevko  wrote:

> seems pretty straight forward - jetty could not find javac.exe; probably to
> compile a jsp
>
>
> On Sun, Jan 2, 2011 at 11:03 PM, Setu  wrote:
>
>> I have downloaded Google Apps Engine Java SDK & installed it as well. I
>> have also installed all the plugins as well. I am running guestbook
>> application from netBeans. The server also get started. But, while running
>> gueatbook application, it show the error. Please help to solve this error.
>>
>> The error log is :
>>
>> HTTP ERROR 500
>>
>> Problem accessing /. Reason:
>>
>> Error running javac.exe compiler
>>
>> Caused by:
>>
>> Error running javac.exe compiler
>>  at 
>> org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.java:509)
>>  at 
>> org.apache.tools.ant.taskdefs.compilers.JavacExternal.execute(JavacExternal.java:61)
>>  at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1065)
>>  at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:882)
>>  at 
>> org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:226)
>>  at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
>>  at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
>>  at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
>>  at 
>> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
>>  at 
>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
>>  at 
>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
>>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
>>  at 
>> com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23)
>>  at 
>> com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:59)
>>  at java.security.AccessController.doPrivileged(Native Method)
>>  at 
>> com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:57)
>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>  at 
>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
>>  at 
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>  at 
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>  at 
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>  at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>  at 
>> com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70)
>>  at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
>>  at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
>>  at 
>> com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:80)
>>  at 
>> com.google.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:254)
>>  at 
>> com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120)
>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>  at 
>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>>  at 
>> com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>  at 
>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>  at 
>> com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>  at 
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>  at 
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>  at 
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>  at 
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>  at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>  at 
>> com.google.apphosting.utils.jetty.DevAppEngineWebAppCo

Re: [appengine-java] Error Running GuestBook !~

2011-01-05 Thread A. Stevko
seems pretty straight forward - jetty could not find javac.exe; probably to
compile a jsp


On Sun, Jan 2, 2011 at 11:03 PM, Setu  wrote:

> I have downloaded Google Apps Engine Java SDK & installed it as well. I
> have also installed all the plugins as well. I am running guestbook
> application from netBeans. The server also get started. But, while running
> gueatbook application, it show the error. Please help to solve this error.
>
> The error log is :
>
> HTTP ERROR 500
>
> Problem accessing /. Reason:
>
> Error running javac.exe compiler
>
> Caused by:
>
> Error running javac.exe compiler
>   at 
> org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.java:509)
>   at 
> org.apache.tools.ant.taskdefs.compilers.JavacExternal.execute(JavacExternal.java:61)
>   at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1065)
>   at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:882)
>   at 
> org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:226)
>   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
>   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
>   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
>   at 
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
>   at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
>   at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
>   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
>   at 
> com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23)
>   at 
> com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:59)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at 
> com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:57)
>   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>   at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>   at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
>   at 
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>   at 
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>   at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>   at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>   at 
> com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70)
>   at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
>   at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
>   at 
> com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:80)
>   at 
> com.google.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:254)
>   at 
> com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120)
>   at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>   at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>   at 
> com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>   at 
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>   at 
> com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>   at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>   at 
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>   at 
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>   at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>   at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>   at 
> com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70)
>   at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>   at 
> com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerServi

[appengine-java] Re: What Is "It's possible for two entities to have values of different types for the same property"

2011-01-05 Thread Andy
Thanks for your quick reply.

I actually thought about it again and read it again, it's not just about 
updating schema, but the GAE documentation is all about the low level API, 
not JDO nor JPA.  I am using JDO now so I thought that it is talking about 
JDO but it's not.

So here's what I found in case someone wants to know too.  You create class 
and pre-define all properties and their types.  Therefore, you will only 
store different types of values for the same property when you update the 
schema if you are using JDO or JPA.

However, if you are using low level API, you create entity with following 
line:

Entity entity = new Entity("Employee");
entity.setProperty("age", 5);
datatstore.put(entity);

...

and then you store the same type of entity but with a String age:

Entity entity = new Entity("Employee");
entity.setProperty("age", "10");
datatstore.put(entity);
..

So though they have the same kind (which is the same as having one Employee 
Class in JDO/JPA), you can store age as integer and String or any other GAE 
type.

I hope I understood correctly and helpful to others.

-- 
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-j...@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] Re: What Is "It's possible for two entities to have values of different types for the same property"

2011-01-05 Thread Didier Durand
Hi,

The type can change if you change your source code deciding that age
that was a string now is an int.

When you redeploy the new version of your app, old entities will keep
type string while new ones will use int

More on this at http://code.google.com/appengine/articles/update_schema.html

regards

didier

On Jan 6, 6:53 am, Andy  wrote:
> I found the sentence in subject line in the following page:
>
> http://code.google.com/appengine/docs/java/datastore/entities.html
>
> It doesn't elaborate more how to achieve that in Java at all, no sample
> code, no explanation, no nothing.
>
> We learned the way of creating entity schema for all same kind of entities,
> so if age is integer for entity "Person", how do you have the same property
> storing age as "String"
>
> Please enlighten me!!!

-- 
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-j...@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] Re: Datastore Backup and Restore (for Java)

2011-01-05 Thread Andy
It is possible.  Use KeyFactory's static method "keytostring()" to convert 
all your keys to string value.  Since String values are portable on any 
platform, you can do that easily.  Hope this help.

-- 
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-j...@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] What Is "It's possible for two entities to have values of different types for the same property"

2011-01-05 Thread Andy
I found the sentence in subject line in the following page:

http://code.google.com/appengine/docs/java/datastore/entities.html

It doesn't elaborate more how to achieve that in Java at all, no sample 
code, no explanation, no nothing.

We learned the way of creating entity schema for all same kind of entities, 
so if age is integer for entity "Person", how do you have the same property 
storing age as "String"

Please enlighten me!!!

-- 
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-j...@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] Re: Trying to page through all children of an entity

2011-01-05 Thread Didier Durand
Hi,

Don't see the code snippet in the page that you quote: it seems that I
get another version of the page when i use your url.

I would guess that your issue comes from the '-' interpreted as
operand minus in the query.

regards
didier

On Jan 5, 9:01 pm, decitrig  wrote:
> In JDO, I'm trying to get all the ImportVendor entities that are children of
> a specific ImportSession entity, which has a Set. I want to
> page through them using query cursors. I've tried the following, based on
> the docs:
>
>     Query children = pm.newQuery(ImportedVendor.class);
>     children.setFilter("parent-pk == keyParam");
>     children.declareParameters("Long keyParam");
>     List vendors = (List)
> children.execute(page.getSession().getId());
>
> I get an UnspportedDatastoreOperatorException saying that AppEngine doesn't
> support the "-" operator.
>
> What am I doing wrong?
>
> Athttp://code.google.com/appengine/docs/java/datastore/transactions.htm...,
> there's this snippet:
> query = pm.newQuery("select from Account " +
>                                 "where parent-pk == keyParam " +
>                                 "parameters Key keyParam");
>
> Does this snippet actually work? I feel like I'm doing exactly the same
> thing, and getting an exception. How do I specify a parent key in a query?
>
> --
> rwsims

-- 
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-j...@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] Re: diff between Google Analytics and GAE stats

2011-01-05 Thread Didier Durand
Hi Jason,

The stats from Analytics are from a usage ("marketing") perspective:
where (geographically) do your users come from, when do they come over
the day, what do they see most on your site, how to they navigate,
etc...

The stats and infos delivered by GAE are more from a technical
standpoint: which servlets are called, how long do they need to
execute, what are their errors, what kind of data are stored in the
datastore, how big are they, how much resources (CPU, disks, etc.)  do
you consume, what did the admins of the app do, etc...

There is a bit of redondance in data when you use both but they are
presented from different perspectives.

So, to manage your application thoroughly you need both.

That were my 2 cents ;-)

regards
didier

On Jan 5, 7:12 am, jp  wrote:
> I was wondering if someone with more experience than me could outline
> the major differences (if any) between Google Analytics, and the
> analytics provided on the GAE dashboard.  My hunch is that dashboard
> stats are for the purposes of billing and resource tracking, whereas
> GA provides more standard Web stats - referrers, popular pages, etc.
>
> Thanks,
>
> --Jason

-- 
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-j...@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] example maven ,sping, jpa, gae

2011-01-05 Thread A. Stevko
Also, if you are interested in a quicker than JDO/JPA learning curve, try
Objectify for your persistence layer.
http://code.google.com/p/objectify-appengine/


On Wed, Jan 5, 2011 at 4:22 PM, A. Stevko  wrote:

> Guice
> http://code.google.com/p/google-guice/
>
>
> On Wed, Jan 5, 2011 at 1:40 PM, fachhoch  wrote:
>
>> if spring is too slow what framework  you suggest for dependency injection
>> ?
>>
>> --
>> 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-j...@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.
>>
>
>
>
> --
> -- A. Stevko
> ===
> "If everything seems under control, you're just not going fast enough." M.
> Andretti
>
>
>
>
>
>


-- 
-- A. Stevko
===
"If everything seems under control, you're just not going fast enough." M.
Andretti

-- 
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-j...@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] example maven ,sping, jpa, gae

2011-01-05 Thread A. Stevko
Guice
http://code.google.com/p/google-guice/

On Wed, Jan 5, 2011 at 1:40 PM, fachhoch  wrote:

> if spring is too slow what framework  you suggest for dependency injection
> ?
>
> --
> 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-j...@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.
>



-- 
-- A. Stevko
===
"If everything seems under control, you're just not going fast enough." M.
Andretti

-- 
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-j...@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] example maven ,sping, jpa, gae

2011-01-05 Thread fachhoch
if spring is too slow what framework  you suggest for dependency injection ?

-- 
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-j...@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] Trying to page through all children of an entity

2011-01-05 Thread decitrig
In JDO, I'm trying to get all the ImportVendor entities that are children of 
a specific ImportSession entity, which has a Set. I want to 
page through them using query cursors. I've tried the following, based on 
the docs:

Query children = pm.newQuery(ImportedVendor.class);
children.setFilter("parent-pk == keyParam");
children.declareParameters("Long keyParam");
List vendors = (List) 
children.execute(page.getSession().getId());

I get an UnspportedDatastoreOperatorException saying that AppEngine doesn't 
support the "-" operator.

What am I doing wrong?

At 
http://code.google.com/appengine/docs/java/datastore/transactions.html#Uses_For_Transactions,
 
there's this snippet:
query = pm.newQuery("select from Account " +
"where parent-pk == keyParam " +
"parameters Key keyParam");

Does this snippet actually work? I feel like I'm doing exactly the same 
thing, and getting an exception. How do I specify a parent key in a query?

--
rwsims

-- 
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-j...@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] Error in JDO with GAE

2011-01-05 Thread lisandrodc
Hi! I have an error with JDO and GAE
Transaction tx = pm.currentTransaction();
try {
tx.begin();
unTorneo.agregarEquipo(unEquipo);
pm.makePersistentAll(unTorneo);
pm.refresh(unTorneo);
tx.commit();
 
System.out.println("persistioTorneoConEquipo");
} finally {
//pm.close();
if (tx.isActive()) {
//tx.rollback();
}
}
}
The stack trace (view the "Caused by"):
 Unexpected error during precommit
Caused by:
javax.jdo.JDOException: Unexpected error during precommit
at
org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:
419)
at org.datanucleus.jdo.JDOTransaction.commit(JDOTransaction.java:132)
at
org.datanucleus.store.appengine.jdo.DatastoreJDOTransaction.commit(DatastoreJDOTransaction.java:
56)
at
controllers.ControladorTorneo.agregarEquipoConTorneo(ControladorTorneo.java:
144)
at struts.action.NuevoEquipo.execute(NuevoEquipo.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:
100)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:
441)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:
280)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
243)
at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:
165)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
Caused by:

java.lang.IllegalStateException: Primary key for object of type Equipo
is null.
at
org.datanucleus.store.appengine.DatastorePersistenceHandler.getPkAsKey(DatastorePersistenceHandler.java:
446)
at
org.datanucleus.store.appengine.DatastorePersistenceHandler.deleteObject(DatastorePersistenceHandler.java:
587)
at
org.datanucleus.state.JDOStateManagerImpl.internalDeletePersistent(JDOStateManagerImpl.java:
4198)
at
org.datanucleus.state.JDOStateManagerImpl.deletePersistent(JDOStateManagerImpl.java:
4166)
at
org.datanucleus.ObjectManagerImpl.performReachabilityAtCommit(ObjectManagerImpl.java:
3103)
at org.datanucleus.ObjectManagerImpl.preCommit(ObjectManagerImpl.java:
2901)
at
org.datanucleus.TransactionImpl.internalPreCommit(TransactionImpl.java:
369)
at org.datanucleus.TransactionImpl.commit(TransactionImpl.java:256)
at org.datanucleus.jdo.JDOTransaction.commit(JDOTransaction.java:83)
at
org.datanucleus.store.appengine.jdo.DatastoreJDOTransaction.commit(DatastoreJDOTransaction.java:
56)
at
controllers.ControladorTorneo.agregarEquipoConTorneo(ControladorTorneo.java:
144)
at struts.action.NuevoEquipo.execute(NuevoEquipo.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:
100)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:
441)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:
280)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
243)
at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:
165)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:
252)
at
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:
68)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.o

[appengine-java] diff between Google Analytics and GAE stats

2011-01-05 Thread jp
I was wondering if someone with more experience than me could outline
the major differences (if any) between Google Analytics, and the
analytics provided on the GAE dashboard.  My hunch is that dashboard
stats are for the purposes of billing and resource tracking, whereas
GA provides more standard Web stats - referrers, popular pages, etc.

Thanks,

--Jason

-- 
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-j...@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] Re: Datastore Backup and Restore (for Java)

2011-01-05 Thread Eurig Jones
I've just noticed that there is a bulkloader.py that can be run from
Java. Is this something that can cope with large amounts of data
taking a long time to execute?

-- 
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-j...@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] Re: Datastore Backup and Restore (for Java)

2011-01-05 Thread Eurig Jones
Starred.

So for anything that you need to persist the keys is isn't possible to
backup with your own scripts then I guess. This is unfortunate.

-- 
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-j...@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: Per-minute quota

2011-01-05 Thread Guillermo Schwarz
What you can do:

1. Whenever you are about to reach quota (using algorithm outlined below),
but before reaching that quota, display a message to your user saying:

"Sorry, service outage, please try again later"

2. And then email to you the status of the quota.

Then you can count the number of emails you get per day and have an idea of
how much quota you need to buy.

Cheers,
Guillermo.

On Tue, Jan 4, 2011 at 8:55 AM, Anton Ananich wrote:

> Thanks for the answer,
>
> But during 1 minute I'm able to run out of several quotes so this
> approach does not work for me. It is too complicated and lime
> consuming.
>
> Respectfully,
> Anton
>
> On Dec 27 2010, 9:52 am, Didier Durand 
> wrote:
> > Hi Anton,
> >
> > In case, you can find the quotas (free and with billing) here in this
> > table:http://code.google.com/appengine/docs/quotas.html#Resources
> >
> > Maybe by using it and the infos delivered by the admin console, you
> > can figure out where you reach the quota.
> >
> > regards
> > didier
> >
> > On Dec 27, 7:54 am, Anton Ananich  wrote:
> >
> >
> >
> >
> >
> >
> >
> > > Hi!
> >
> > > Sometimes I can see this message:
> >
> > > This Google App Engine application is temporarily over its serving
> > > quota.  Please try again later.
> >
> > > Is there a way to find out: which exact per-minute quota was exceeded?
> >
> > > Thanks,
> > > Anton
>
> --
> 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-j...@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.
>
>


-- 
Saludos cordiales,

Guillermo Schwarz
Sun Certified Enterprise Architect

-- 
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-j...@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] example maven ,sping, jpa, gae

2011-01-05 Thread Guillermo Schwarz
Yes, if you downloaded gae-j, there is an examples directory where you can
find many examples.

All of them run with ant. I don't know if they also run with maven, but
maven can call ant.

For Spring I don't know. Most users are complaining that Spring is too slow.

For JPA I don't know either. I think there are examples for JDO (using
datanucleus).

Cheers,
Guillermo.

On Wed, Jan 5, 2011 at 12:26 PM, fachhoch  wrote:

> I am new bee getting started with gae , is there any example   project for
> maven ,spring, jpa with datanuclues, gae ?
>
> --
> 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-j...@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.
>



-- 
Saludos cordiales,

Guillermo Schwarz
Sun Certified Enterprise Architect

-- 
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-j...@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] Error in JDO with GAE

2011-01-05 Thread lisandrodc
Hi! I have an error with JDO and GAE


Transaction tx = pm.currentTransaction();
try {
tx.begin();
unTorneo.agregarEquipo(unEquipo);

pm.makePersistentAll(unTorneo);
pm.refresh(unTorneo);
tx.commit();

System.out.println("persistioTorneoConEquipo");
} finally {
//pm.close();
if (tx.isActive()) {
//tx.rollback();
}

}
}

The stack trace:

 Unexpected error during precommit
Caused by:

javax.jdo.JDOException: Unexpected error during precommit
at
org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:
419)
at org.datanucleus.jdo.JDOTransaction.commit(JDOTransaction.java:132)
at
org.datanucleus.store.appengine.jdo.DatastoreJDOTransaction.commit(DatastoreJDOTransaction.java:
56)
at
controllers.ControladorTorneo.agregarEquipoConTorneo(ControladorTorneo.java:
145)
at struts.action.NuevoEquipo.execute(NuevoEquipo.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:
100)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:
441)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:
280)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
243)
at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:
165)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:
252)
at
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:
68)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:
122)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:
195)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:
195)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:
179)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:
75)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:
94)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:
235)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:
89)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:
130)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.inter

[appengine-java] Re: Concurrency issue when dealing with datastore

2011-01-05 Thread cghersi
Hi Yegor, thanks for your suggestions.

But I yet cannot understand how to cope with transactions in the
scenario you have described.

Let's say that I have the following (usual) example:
public class User {
 Long userID; //it is the PK of the object
 ArrayList contacts;
 ...
}

public class Contact {
 Key contactID; PK of the object;
 String email;
 long friendID; //this is the ID of the user pointed by this contact;
0 if the contact points to an external user
 ...
}

So in the example we have two users: Alice (ID=1) and Bob (ID=2).
They have respectively the following contacts:
Alice: {Bob (friendID=2), ca...@gmail.com (friendID=0)}
Bob: {Alice (friendID=1)}

As you can see ca...@gmail.com is not yet a User of our app, so the
contact pointing to him has friendID = 0.

Let's say now that Caius becomes a User (ID=3).

I wish to change the contact of Alice adding such information,
becoming the list of Alice: {Bob (friendID=2), Caius (friendID=3)}.

Such a task should be done in a transaction, checking all the friends
having e.g. the email ca...@gmail.com and setting their friendID to 3.
But the Contact objects with such email belongs to several Users and
possibily to several entity groups.
Moreover, I cannot split this task in different subtasks if I don't
want to loose the integrity of the data.
So what's the solution for this issue in your opinion?

Sorry for the long example but with the usual toys of the tutorials
these issues are never addressed!

Waiting for your response

Thank you very much.
Bye
CRI

On Dec 30 2010, 6:01 pm, Yegor  wrote:
> > I had to strongly synchronize my app using Java options (locka,
> > synchrnized objects, and so on...).
>
> I have to warn you that all this synchronization will be in vain once
> your application grows beyond 1 JVM. Java keyword "synchronized" is
> only effective within a single instance of JVM. That is not to say
> that even with 1 JVM your application may lose a lot of performance if
> you are synchronizing on static methods or singleton objects, e.g. the
> datastore.
>
> > I think it is quite unbelievable that a huge giant like BigTable is so
> > weak in concurrency issues...
>
> BigTable gives you a lot of well-documented options to deal with
> simultaneous access to data. A good place to start 
> ishttp://code.google.com/appengine/docs/java/datastore/transactions.html.
> In your case, unless you really have to transact on all entities
> processed by the servlet, I would recommend that you break your task
> into several sub-tasks each limited to a single entity group.
>
> > Perhaps my approach is geared from my experience in relational DBs,
> > but I'm quite puzzeld...
>
> Sounds like that might be the case. When working with BigTable, always
> keep in mind that two entities (called table rows in RDBMS) do not
> necessarily end up on the same server node. This is good, because it
> allows BigTable to distribute the load across multiple hard drives.
> However, when this happens you no longer are able to transact on these
> entities. Entity groups tell BigTable that two or more related
> entities must be stored in the database in such a way that a
> transaction is possible. Unfortunately, you immediately lose
> scalability within the entity group (thus the recommendation to keep
> them small). Relational DBs always make that sacrifice by default and
> put all table rows on the same hard drive. This makes it easy to
> transact on arbitrary entities. However, you have to partition your
> database manually to scale. Plus, you cannot transact across
> partitions, so even with a RDBMS you still have the same limitation.

-- 
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-j...@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] example maven ,sping, jpa, gae

2011-01-05 Thread fachhoch
I am new bee getting started with gae , is there any example   project for 
maven ,spring, jpa with datanuclues, gae ?   

-- 
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-j...@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] Re: Unable to navigate my app in production server, while in development server works fine

2011-01-05 Thread Markel Arizaga
Here is my index.jsp. I don't actually understand what you suspect, but hope 
you do. XD

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/fmt_rt"; prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt"; prefix="c" %>



http://www.w3.org/TR/html4/loose.dtd";>




@import
"pageStyle.css";



Kokonut Web






euskara
castellano
english
















<% if (CartController.getNumberOfProducts() == 
0) {
%>

<%} else {
%>
: 
<%=CartController.getNumberOfProducts()%> 
<%}
%>

: 
<%=CartController.getTotalPrice()%> €


KokonutCompany
   
   
   Lorem Ipsum is simply dummy text of the printing and 
typesetting industry. Lorem Ipsum has been the industry's standard dummy 
text ever since the 1500s, when an unknown printer took a galley of type and 
scrambled it to make a type specimen book. It has survived not only five 
centuries, but also the leap into electronic typesetting, remaining 
essentially unchanged. It was popularised in the 1960s with the release of 
Letraset sheets containing Lorem Ipsum passages, and more recently with 
desktop publishing software like Aldus PageMaker including versions of Lorem 
Ipsum.
   


   Lorem Ipsum is simply dummy text of the printing 
and typesetting industry. Lorem Ipsum has been the industry's standard dummy 
text ever since the 1500s, when an unknown printer took a galley of type and 
scrambled it to make a type specimen book. It has survived not only five 
centuries, but also the leap into electronic typesetting, remaining 
essentially unchanged. It was popularised in the 1960s with the release of 
Letraset sheets containing Lorem Ipsum passages, and more recently with 
desktop publishing software like Aldus PageMaker including versions of Lorem 
Ipsum.
   Lorem Ipsum is simply dummy text of the printing 
and typesetting industry. Lorem Ipsum has been the industry's standard dummy 
text ever since the 1500s, when an unknown printer took a galley of type and 
scrambled it to make a type specimen book. It has survived not only five 
centuries, but also the leap into electronic typesetting, remaining 
essentially unchanged. It was popularised in the 1960s with the release of 
Letraset sheets containing Lorem Ipsum passages, and more recently with 
desktop publishing software like Aldus PageMaker including versions of Lorem 
Ipsum.



 |  |  | 
 Tuenti | http://eu-es.facebook.com/pages/Kokonut-Company/133534856668735";>Facebook
 
| http://twitter.com/KokonutCompany";>Twitter
Admin






-- 
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-j...@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] Re: Lightweight & Best performing MVC framework - Recommendation

2011-01-05 Thread jnizet
I use Stripes and am very happy about it.
You can see it in action at https://memwords.appspot.com, and browse
the code of this app at http://code.google.com/p/memwords/.
Interesting if you're interested in integrating Stripes with SiteMesh
(page templating) and Guice (dependency injection).

JB.

-- 
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-j...@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: new bee need suggestion on persistance

2011-01-05 Thread Gal Dolber
http://slim3demo.appspot.com/ worked great for me.
It is one of the most amazing piece of software I've ever seen.

On Wed, Jan 5, 2011 at 2:55 AM, Max  wrote:

> I would suggest to play with low level API before you make decision
> between JDO/JPA/Objectify/twig
>
> That will help you better understand bigtable.
>
> On Jan 5, 1:29 pm, Didier Durand  wrote:
> > Hi,
> >
> > I am also a big fan of Objectify: simple to understand, efficient,
> > light-weight, open source. (+ very well documented!). I abandonned
> > JDO / JPA for it.
> >
> > Before starting with jdo / jpa, you should read this thread (posts by
> > Ikai Lan from Google especially): future of JDO / JPA on GAE doesn't
> > look so bright. Readhttp://
> groups.google.com/group/google-appengine-java/browse_thread/th...
> >
> > good luck
> > regards
> >
> > didier
> >
> > On Jan 4, 8:16 pm, John  wrote:
> >
> >
> >
> >
> >
> >
> >
> > > If your app is only for GAE (it will not need to run in a 'standard'
> Java
> > > Web App container) Objectify <
> http://code.google.com/p/objectify-appengine/>provides annotation-based
> persistence with a very thin layer over the GAE
> > > datastore. There are certainly limitations with JPA/JDO. My preference
> is
> > > JDO for portable code, as it is more consistent with a non-SQL
> database.
> > > Among the more annoying limitations in JDO is the prohibition of
> > > superclass-table inheritance.
>
> --
> 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-j...@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-j...@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] Re: App Engine Web Services

2011-01-05 Thread Michael
Hi,

There is a new version of webserviceservlet (WSS) where complex
datatypes like Lists, Hastables are now working when creating
Webservices on gae.
It can download at http://code.google.com/p/webserviceservlet/downloads/list

br,
-michael

On Jan 4, 1:57 pm, Michael  wrote:
> Hi,
>
> I get this up and running on gae 1.4 after following tasks.
>
>  1. add xalan jar files to build path and war/lib direcotry (http://
> xml.apache.org/xalan-j/)
>  2. I used lowercase letters as first letter with classes that I run
> though schemagen
>
> After these tasks I manage to create client code and make actual call
> to wss running on gae.
>
> Hope this help.
>
> br,
> -michael
>
> On Dec 14 2010, 10:35 am, snake  wrote:
>
>
>
>
>
>
>
> > Hi, everyone! :)
> > I've worked with Google App Engine for a couple months. I've done web
> > app, hosted it on my app engine account using JPA. After that
> > developing I wanted to create App Engine web service application. I've
> > looked some technologies for creating web services app for a long time
> > and finally I've found it! There 
> > ishttp://code.google.com/p/webserviceservlet/.
> > I downloaded UserGuide.pdf from this link. There is an example in this
> > user guide. I made application by its tutorial.Webserviceservlet
> > doesn't support JAX-WS but it supports JAXB framework. In example the
> > simple way is described. There is one model entity with JAXB
> > annotations - Employee:
>
> > @XmlRootElement
> > @XmlType(name="Employee")
> > public class Employee {
> >        String fname;
> >        public Employee(){
> >        }
> >        public void setFirstName(String value){
> >               this.fname = value;
> >        }
> >        public String getFirstName(){
> >               return this.fname;
> >        }
>
> > }
>
> > My web.xml is the same from tutorial example.
> > Then I've written web method like in the tutorial:
>
> > public class MyWebService {
> >        public MyWebService(){
> >        }
> >        public String addEmployee(Employee emp){
> >               return "ok: emplyee added";
> >        }
>
> > }
>
> > After this need to create xml schema from class Employee. Created
> > schema is an input parameter to web services servlet, described in
> > web.xml
> > I launched app and that's great! It's worked good.
> > But it was easy.
>
> > I've wanted to modify my web services with input List
> > instead of single instance of Employee like tutorial.
> > Modifyed method:
>
> > public class MyWebService {
> >        public MyWebService(){
> >        }
> >        public String addEmployee(List empList){
> >               return "ok: emplyee added";
> >        }
>
> > }
>
> > java.util.List isn't marked with JAXB annotations, so I've created a
> > new class Employees that contains List:
>
> > @XmlRootElement(namespace = "ws.employee.com")
> > @XmlAccessorType(XmlAccessType.FIELD)
> > @XmlType(name = "Employees", namespace = "ws.employee.com")
> > public class Employees {
>
> >         /** */
> >         private List employeeList = new ArrayList();
>
> >         public List getEmployeeList() {
> >                 return employeeList;
> >         }
>
> >         public void setEmployeeList(List employeeList) {
> >                 this.employeeList = employeeList;
> >         }
>
> > }
>
> > New Employee class is shown now:
>
> > @XmlRootElement(namespace = "ws.employee.com")
> > @XmlAccessorType(XmlAccessType.FIELD)
> > @XmlType(name = "Employee", namespace = "ws.jevera.com")
> > public class Employee {
> >         /** */
> >         private String name;
>
> >         public String getName() {
> >                 return name;
> >         }
>
> >         public void setName(String name) {
> >                 this.name = name;
> >         }
>
> > }
>
> > And finally changed web method addEmployee
> > public String addEmployee(Employees emp){
> >       return "ok: emplyee added";
>
> > }
>
> > Schema created OK. And wsdl was created also good. But during making a
> > client through wsimport utilities i catched error - some type in xml
> > schema could not de found.
> > Who worked with lists in Google App Engine Web Services 
> > throughhttp://code.google.com/p/webserviceservlet/pleaseHELP ME. I've tryed
> > all ways to success but it was failed. This task is very important for
> > me.
> > Thank you :)

-- 
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-j...@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] Re: Datastore Backup and Restore (for Java)

2011-01-05 Thread Francois Masurel
Actually there is a problem is you store content keys as string in the 
datastore.
They can't be imported back in another application because keys are 
"application prefixed".
I was hit by this problem and I'm still stuck to my old application that I 
can't rename.

I think GAE really miss an easy to use backup/restore tool.
I know that it's probably quite complex to implement though.

You can star this issue :  
http://code.google.com/p/googleappengine/issues/detail?id=776

-- 
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-j...@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] Re: cost effective way to store PDF and word docs in datastore / blobstore service

2011-01-05 Thread Max
You can just enable billing with a very low daily limit

No harm, right?

On Dec 25 2010, 4:29 pm, Khor Yong Hao  wrote:
> It is possible to store one page / two page PDF (smaller than 1 mb) inside
> normal datastore. By using byte[] in entity datatype.
>
> On Sat, Dec 25, 2010 at 12:31 PM, Patrick Twohig
> wrote:
>
>
>
>
>
>
>
> > Just because billing is enabled that doesn't mean that you are billed for
> > using it. It just uncaps your quotas beyond the free amount.
>
> > Merry Chrismas!
>
> > Sent from my G1 phone.
>
> > On Dec 24, 2010 8:21 AM, "dreamer"  wrote:
>
> > This is what I found in documentation
> > " Note: The Blobstore API is only available for apps with billing
> > enabled. You still get an amount of quota for free, but billing must
> > be enabled to use it".
>
> > In development phase I don't want to be worried about billing. we can
> > live with 1GB restriction while in development across for storage
> > requirements.
>
> > Any body from Google help to relax this restriction ?
>
> > On Dec 24, 7:53 am, dreamer  wrote:
> > > Hi,
>
> > > I need to store pdf ...
>
> >  --
> > 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-j...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > google-appengine-java+unsubscr...@googlegroups.com > 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-j...@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.