[appengine-java] unable to update app:Failed to compile jsp files

2011-04-06 Thread Eric Wu
I got problem when I deploy my project to Google App Engine. The
project works ok on localhost. When deploying, there was a error
message I post below: How to solve it?


Creating staging directory
Scanning for jsp files.
Compiling jsp files.
com.google.appengine.tools.admin.JspCompilationException: Failed to
compile jsp files.
2011/4/7 下午 01:35:47 org.apache.jasper.compiler.AntCompiler
generateClass
嚴重的: Error compiling file: C:\DOCUME~1\WuEric\LOCALS~1\Temp
\appcfg1263523209940719896.tmp\WEB-INF\classes\org\apache\jsp
\match_jsp.java [javac] Compiling 1 source file

2011/4/7 下午 01:35:47 org.apache.jasper.compiler.AntCompiler
generateClass
嚴重的: Javac exception
Error running javac.exe compiler
at
org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.java:
473)
at
org.apache.tools.ant.taskdefs.compilers.JavacExternal.execute(JavacExternal.java:
47)
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:931)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:757)
at
org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:
226)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
at org.apache.jasper.JspC.processFile(JspC.java:1192)
at org.apache.jasper.JspC.execute(JspC.java:1341)
at
com.google.appengine.tools.development.LocalJspC.main(LocalJspC.java:
18)
Caused by: java.io.IOException: Cannot run program "javac.exe":
CreateProcess error=2, ?t?Χ??
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.tools.ant.taskdefs.Execute
$Java13CommandLauncher.exec(Execute.java:834)
at org.apache.tools.ant.taskdefs.Execute.launch(Execute.java:435)
at org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:449)
at
org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.java:
470)
... 8 more
Caused by: java.io.IOException: CreateProcess error=2, ?t?Χ??
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 18 more
--- Nested Exception ---
java.io.IOException: Cannot run program "javac.exe": CreateProcess
error=2, ?t?Χ??
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.tools.ant.taskdefs.Execute
$Java13CommandLauncher.exec(Execute.java:834)
at org.apache.tools.ant.taskdefs.Execute.launch(Execute.java:435)
at org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:449)
at
org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.java:
470)
at
org.apache.tools.ant.taskdefs.compilers.JavacExternal.execute(JavacExternal.java:
47)
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:931)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:757)
at
org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:
226)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
at org.apache.jasper.JspC.processFile(JspC.java:1192)
at org.apache.jasper.JspC.execute(JspC.java:1341)
at
com.google.appengine.tools.development.LocalJspC.main(LocalJspC.java:
18)
Caused by: java.io.IOException: CreateProcess error=2, ?t?Χ??
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 18 more
2011/4/7 下午 01:35:47 org.apache.jasper.compiler.AntCompiler
generateClass
嚴重的: Environment: Compile: javaFileName=C:\DOCUME~1\WuEric
\LOCALS~1\Temp\appcfg1263523209940719896.tmp\WEB-INF\classes\org\apache
\jsp\match_jsp.java
classpath=/E:/eclipse/plugins/
com.google.appengine.eclipse.sdkbundle.1.4.2_1.4.2.v201102111811/
appengine-java-sdk-1.4.2/lib/impl/appengine-api-labs.jar;/E:/eclipse/
plugins/com.google.appengine.eclipse.sdkbundle.
1.4.2_1.4.2.v201102111811/appengine-java-sdk-1.4.2/lib/impl/appengine-
api-stubs.jar;/E:/eclipse/plugins/
com.google.appengine.eclipse.sdkbundle.1.4.2_1.4.2.v201102111811/
appengine-java-sdk-1.4.2/lib/impl/appengine-api.jar;/E:/eclipse/
plugins/com.google.appengine.ec

[appengine-java] Re: cron: AppEngineConfigException: schedule every 5 mins from 00:04 to 23:59 failed to parse

2011-04-06 Thread Mickey Kataria (Google Employee)
Are you seeing this error when you try to upload your app?  Are you
using the latest released (1.4.3) SDK?

On Apr 6, 5:40 am, epure  wrote:
> Ping

-- 
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] Re: Happy Birthday Google App Engine !!

2011-04-06 Thread Thomas Wiradikusuma
I agree with Rajkumar,

GAE/J is a very important service, especially for indie Java
developers like me.
The service is getting better, and the developer groups are vibrant.

Happy Birthday GAE!

regards,
Thomas Wiradikusuma

On Apr 7, 12:17 pm, Rajkumar Radhakrishnan 
wrote:
> Hi,
>
> It is now 3 years since Google App Engine was first released. *Happy
> Birthday Google App Engine !!*

-- 
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] bulkloader error

2011-04-06 Thread Aswath Satrasala
Hello,
I get the following errors while uploading the data to my appid on the cloud
using bulk-loader.
Also any tips on making the uploading/downloading data faster.  It is taking
2-3 hrs for my data to download.

Regards,
-Aswath

Uploading data records.
[INFO] Logging to bulkloader-log-20110407.100130
[INFO] Throttling transfers:
[INFO] Bandwidth: 25 bytes/second
[INFO] HTTP connections: 8/second
[INFO] Entities inserted/fetched/modified: 20/second
[INFO] Batch Size: 10
[INFO] Opening database: bulkloader-progress-20110407.100130.sql3
[INFO] Connecting to accounting-guru.appspot.com/remote_api
Traceback (most recent call last):
  File "\Program Files\Google\google_appengine\appcfg.py", line 71, in

run_file(__file__, globals())
  File "\Program Files\Google\google_appengine\appcfg.py", line 67, in
run_file
execfile(script_path, globals_)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 3134, in 
main(sys.argv)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 3125, in main
result = AppCfgApp(argv).Run()
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 2039, in Run
self.action(self)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 2978, in __call__
return method()
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 2828, in PerformUpload
run_fn(args)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appcfg.p
y", line 2723, in RunBulkloader
sys.exit(bulkloader.Run(arg_dict))
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line 4022, in Run
return _PerformBulkload(arg_dict)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line 3890, in _PerformBulkload
return_code = app.Run()
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line 3187, in Run
kinds = self.RunPostAuthentication()
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line 3295, in RunPostAuthentication
self.request_manager.IncrementId(list(ancestor_path), kind, high_id)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line 1233, in IncrementId
IncrementId(high_id_key)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\bulkload
er.py", line , in IncrementId
unused_start, end = datastore.AllocateIds(high_id_key, max=
high_id_key.id())

  File "C:\Program
Files\Google\google_appengine\google\appengine\api\datastore.
py", line 1619, in AllocateIds
return rpc.get_result()
  File "C:\Program
Files\Google\google_appengine\google\appengine\api\apiproxy_s
tub_map.py", line 534, in get_result
return self.__get_result_hook(self)
  File "C:\Program
Files\Google\google_appengine\google\appengine\datastore\data
store_rpc.py", line 1351, in __allocate_ids_hook
self.check_rpc_success(rpc)
  File "C:\Program
Files\Google\google_appengine\google\appengine\datastore\data
store_rpc.py", line 975, in check_rpc_success
rpc.check_success()
  File "C:\Program
Files\Google\google_appengine\google\appengine\api\apiproxy_s
tub_map.py", line 506, in check_success
self.__rpc.CheckSuccess()
  File "C:\Program
Files\Google\google_appengine\google\appengine\api\apiproxy_r
pc.py", line 149, in _WaitImpl
self.request, self.response)
  File "C:\Program
Files\Google\google_appengine\google\appengine\ext\remote_api
\remote_api_stub.py", line 227, in MakeSyncCall
response)
  File "C:\Program
Files\Google\google_appengine\google\appengine\ext\remote_api
\remote_api_stub.py", line 156, in MakeSyncCall
self._MakeRealSyncCall(service, call, request, response)
  File "C:\Program
Files\Google\google_appengine\google\appengine\ext\remote_api
\remote_api_stub.py", line 168, in _MakeRealSyncCall
encoded_response = self._server.Send(self._path, encoded_request)
  File "C:\Program
Files\Google\google_appengine\google\appengine\tools\appengin
e_rpc.py", line 346, in Send
f = self.opener.open(req)
  File "C:\Python25\lib\urllib2.py", line 381, in open
response = self._open(req, data)
  File "C:\Python25\lib\urllib2.py", line 399, in _open
'_open', req)
  File "C:\Python25\lib\urllib2.py", line 360, in _call_chain
result = func(*args)
  File "C:\Python25\lib\urllib2.py", line 1107, in http_open
return self.do_open(httplib.HTTPConnection, req)
  File "C:\Python25\lib\urllib2.py", line 1082, in do_open
raise URLError(err)
urllib2.URLError: 

-- 
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...@go

[appengine-java] Happy Birthday Google App Engine !!

2011-04-06 Thread Rajkumar Radhakrishnan
Hi,

It is now 3 years since Google App Engine was first released. *Happy
Birthday Google App Engine !!*

A warm thanks to folks at Google, for continuing to make Google App Engine
better and for your support in the developer groups and in other forums.
Keep up the good work !!

For me, *Google App Engine is like integration point for so many other
Google Services.*

I work on a online application builder over Google App Engine : iFreeTools
Creator , which enables building
customizable database apps, by defining entities and attributes.

iFreeTools Creator, over Google App Engine, enables integration with the
following Google services..
* Google Contacts (import contacts to any custom database table having an
email-id fields, after defining a field mapping and uploading of contacts).
* Google Docs (attach documents to any database record)
* Google Maps (mark and search records based on geographic locations)
* Google Apps (supports login using Google Apps user accounts, using Google
App Engine's federated login feature, and mapping to sub-domain from Google
Apps dashboard).

The application also uses the following Google services..
* Google Visualizations (table and chart views)
* Google Analytics
* Google AdSense
// hope, I did not miss some service.

Upcoming integrations / support :
* Google Calendar
* Gmail (from within gadgets)
* Android

Of course.. more integrations are possible from within GAE, given the
extensive GData APIs available, but these are based on what the current
users have requested from my app.

So, Google App Engine should be proud that it can enable developers to
integrate-with and use so many other Google services, from within its
service. Thank you once again.

Thanks & Regards,
R.Rajkumar

-- 
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] Re: JPA/JDO vs low level API

2011-04-06 Thread Matthew Adams
On Apr 6, 5:23 am, Jeff Schnitzer  wrote:
> The thread-local transaction model that JPA/JDO inherited from EJB
> assumes the flexibility of RDBMS transactions that let you touch any
> piece of data you want.  That just doesn't work on appengine.
>
> Jeff

Don't forget that JDO did not inherit the EJB transaction model, per
se.  JPA does, due to its lineage.

There are things in JDO that depend to a certain degree on the ACID
properties of transactions, which may break down against GAE/J's
BigTable.  However, DataNucleus has been happily building plugins for
other nonrelational stores.  I can't speak for them, but they indicate
that there are, thus far, no issues where the semantics of JDO
conflict with these other stores (Cassandra, Hadoop, etc).

There is an issue entered with JDO, 
https://issues.apache.org/jira/browse/JDO-651,
that is there to address any specification modifications that need to
be made to support NoSQL datastores.  It appears, though, that
BigTable's entity groups may be a different enough beast from the
other NoSQL databases that it can't be treated like them.  Hard to
say.

Good or bad, definitely give your feedback on your JDO experiences to
DataNucleus and the GAE/J team, particularly Max Ross.  The issue
tracking systems are at the following locations:

https://issues.apache.org/jira/browse/JDO
http://code.google.com/p/googleappengine/issues/list

Squeaky wheels and all, you know.

-matthew

-- 
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 authenticate from iPhone client to App Engine server

2011-04-06 Thread Peter
Ikai,

Thank you for your help.

Regards,
Peter

-- 
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/JDO vs low level API

2011-04-06 Thread SkYlEsS
Ok thank you, it's just what I thought ;)

-- 
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] Custom security for servlets

2011-04-06 Thread Amit Pandey
Hi All,

I wrote a servlet in app engine which return some response. It will be
invoked by java stand alone applications (it is not going to invoke
by browser at all). I want to apply some security constraint for that
servlet so that servlet will accesible to only authenticated user. I was
thinking for http basic authentication but it is not working.

Any help would be appreciated.

Thanks in advance.

-Amit

-- 
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 authenticate from iPhone client to App Engine server

2011-04-06 Thread Ikai Lan (Google)
I'm going to plead with you not to ask the user for a username and password
- this trains users in insecure behaviors. Instead, look into a solution
like OAuth:

http://code.google.com/appengine/docs/python/oauth/overview.html

We've even published a Google Code blog about this:

http://googlemac.blogspot.com/2010/09/oauth-sign-in-controllers-for-ios-and.html

Ikai Lan
Developer Programs Engineer, Google App Engine
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/appengine



On Wed, Apr 6, 2011 at 7:56 AM, Peter  wrote:

> Folks,
>
> I am planning to develop a client-server application. The client will be an
> iPhone/Android application. The server will be running on App Engine. I
> intend to implement only SOAP based services on the server side.
>
> One issue that I need to resolve is that of authentication. In the iPhone
> app, I can pop up a form for the user to enter gmail address and password.
> The idea is to pass in the username and password over to the server.
> However, I don't know if App engine exposes any API that takes
> username/password and returns a login token for the user.
>
> I would appreciate your help if you can point me in the right direction.
> Also, if there is a better way to handle authentication, please share it
> with me.
>
> Regards,
> Peter
>
> --
> 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/JDO vs low level API

2011-04-06 Thread Jeff Schnitzer
You can only read or write from a single entity group in a
transaction.  Yet I often find that during the course of a transaction
I require multiple pieces of additional data that are not part of my
entity group.

For example, during Similarity's* login process I synchronize a lot of
data into your account.  Most of it comes from Facebook but some of it
relies on data that is cached locally in the datastore.  There's a
transaction that protects the update of your profile, but the "other
data" is not part of your entity group.  So I open an additional
non-transactional Objectify in the middle of my transaction, fetch the
relevant data, and carry on.

The thread-local transaction model that JPA/JDO inherited from EJB
assumes the flexibility of RDBMS transactions that let you touch any
piece of data you want.  That just doesn't work on appengine.

Jeff

* http://www.similarity.com/ (for the curious)

On Wed, Apr 6, 2011 at 2:59 AM, SkYlEsS  wrote:
> Hi Jeff'
>
> In fact, I'm not sure to understand what you means by “Because of GAE's
> transaction model, this is actually necessary quite often.” : what are the
> characteristics/limitations of GAE's transaction model you thinking about ?
>
> Thx
>
> --
> 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] How can I make the session to be held open as long as the user got its browser opened?

2011-04-06 Thread Daniel
Hi

I need to keep the session opened as long as the user got its browser
opened in my web app...

Is there such a setting that i can enable for my web app?

If not, Is there any suggester/recommend way to achieve it?

Thanks ahead!


Daniel.

-- 
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/JDO vs low level API

2011-04-06 Thread SkYlEsS
Hi Jeff'

In fact, I'm not sure to understand what you means by “Because of GAE's 
transaction model, this is actually necessary quite often.” : what are the 
characteristics/limitations of GAE's transaction model you thinking about ?

Thx

-- 
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] Re: App Engine identifier. Key vs Id

2011-04-06 Thread Ian Marshall
Yes, there is. Code extracts from what I use are below. I trust that
this helps.


Finding an object by its Long ID

This is interesting since one needs to build a key containing the
ancestor path from the object you want to find all the way back to its
entity group root.

  PersistenceManager pm = ...
  Builder kbBuilder = new KeyFactory.Builder(clClass1.getSimpleName(),
loID1);// Root
  kbBuilder = kbBuilder.addChild(clClass2.getSimpleName(), loID2);
  ...
  kbBuilder = kbBuilder.addChild(clClassN.getSimpleName(),
loIDN);// The class you seek
  Key key = kbBuilder.getKey();
  Object objFound = pm.getObjectById(clClassN, key);

  pm.close();


Finding an object by its encoded key string
---
This is more direct since the encoded key string has the ancestor path
encoded in it. This way of doing things is less portable to outside of
Google BigTable, though, compared to finding by ID.

  PersistenceManager pm = ...
  Object objFound = pm.getObjectById(Class cl, String sEncodedKey);
  pm.close();


On Apr 6, 8:24 am, Luca Matteis  wrote:
> Thanks for this. But is there a way to get a specific entity using the
> "ID/Name" value generated by the data-store?

-- 
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: JPA/JDO vs low level API

2011-04-06 Thread Ikai Lan (Google)
It's a mixed bag with regards to Google internal projects. There are folks
using JDO/JPA, and there are folks who go straight to the Low-Level API.

I spoke with one internal team who mentioned an interest in Objectify but
were concerned it could be abandoned because they had had a similar
experience with appengine-patch for Django. Next time I see those guys, I'll
let them know that the Objectify community seems to be thriving. The Slim3
community is also doing pretty well, but it seems like most of the useful
posts are in Japanese. Ultimately, that's the risk you run with any kind of
software. At least if it's open source, you can pick at it and keep the bits
you need running.

I'm personally hoping we can better support framework developers and just
keep the Low Level API very tight and consistent.

Ikai Lan
Developer Programs Engineer, Google App Engine
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/appengine



On Wed, Apr 6, 2011 at 6:58 AM, Andrew  wrote:

> I couldn't agree more with Jeff. JDO/JPA on GAE is pants for any real
> project.
>
> I am part of a 4 person development team that recently completed a
> fairly hefty 6 month GAE project built using GAE, GWT and Guice. We
> used JDO/Datanucleus for the persistence technology which caused
> significant problems across the project.
>
> As well as the issues that Jeff points out, simple things like IDE
> integration (predominantly Eclipse) with Datanucleus never seemed to
> work very well. Getting transaction demarcation to work with how the
> store 'actually' works is also practically impossible. We burnt a lot
> of days getting around a mass of silly little issues for no real
> benefit.
>
> To be clear, in standard relational environments we'll use Hibernate
> (et al) almost exclusively as an ORM, but, in my view, trying to use
> JDO/JPA on GAE is at this point in time a frivolous exercise that
> ultimately will heavily limit what you can do on the platform (not
> discounting the great work done be those that did port the standard
> over). It also lures you into this familiar relational way of looking
> at persistence problems which really does not, in any way, translate
> to how the datastore actually works.
>
> I'd be very interested to know how Google's internal projects work
> with the store -- as presumably, it's going to be a fairly similar
> interface -- but, if we were starting from scratch, I'd lobby very
> hard for using the low-level API on its lonesome (it's already a
> pretty clean service).
>
> On Apr 5, 6:22 pm, SkYlEsS  wrote:
> > Thanks you so much for all this responses everybody !
>
> --
> 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] Can i run a python and java server pointing to the same appspot id but different versions?

2011-04-06 Thread ruskyn
Hi All,

I was wondering if this can be done.

If so, supposed my datastore uses JDO , how can i provide access to my
python counterpart.

Apologies if my question sounds bizarre !

-- 
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: App Engine identifier. Key vs Id

2011-04-06 Thread Luca Matteis
Thanks for this. But is there a way to get a specific entity using the
"ID/Name" value generated by the data-store?

On Wed, Apr 6, 2011 at 8:19 AM, Ian Marshall  wrote:
> I use the following code to define my persistent entity classes in
> JDO.
>
> I have find my persistent entities by encoded key string or ID - my
> choice.
>
> Enjoy?
>
> @PersistenceCapable(identityType = IdentityType.APPLICATION,
>  detachable = "true")
> public class MyPersistentClass implements Serializable
> {
>  private static final long serialVersionUID = 1L;
>
>  @PrimaryKey
>  @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
>  @Extension(vendorName="datanucleus", key="gae.encoded-pk",
> value="true")
>  private String sEncodedKey;
>
>  @Persistent
>  @Extension(vendorName="datanucleus", key="gae.pk-id", value="true")
>  private Long loID;
>
>  //
>  // Other persistent data members...
>  //
>
>  public String getEncodedKey()
>  {
>    return sEncodedKey;
>  }
>
>  public Long getID()
>  {
>    return loID;
>  }
>
>  //
>  // Getter and setter methods for
>  // the other persistent data members...
>  //
> }
>
>
> On Apr 5, 3:44 pm, Luca Matteis  wrote:
>> To identify my JDO objects in Google App Engine I use the Key type. It
>> works fine but when I need to pass this through urls it gets sort of
>> long.
>>
>> For 
>> example:http://mysite.com/user/aghtaWx1LWFwcHIZCxIGTXlVc2VyGAMMCxIHTXlJbWFnZR...
>>
>> When viewing my entities in my admin viewer I can see that the
>> data-store also sets an "id" for my entity object, which seems to be
>> an incremental numeric value, which is quite short compared to the Key
>> string. Can I use this to grab information on my object? How do I do
>> this? I tried using getObjectbyId() with the id instead of the key...
>> it doesn't work.
>>
>> Also, should I be using a Long type to identify objects instead of Key types?
>
> --
> 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.