Re: [appengine-java] Re: JPA with database
is their is any authentication required to run JPA Program that uses the Database as Google App Engine On Fri, Feb 12, 2010 at 11:40 AM, maheswari maheswari rma...@gmail.comwrote: hai Thanks for your reply But I didnot know where to create a new JPA Project to make databese connection with google app engine, which option i need go, JPA project,web application project or dynamic web project. Thanks in advance On Fri, Feb 12, 2010 at 4:13 AM, Jake jbrooko...@cast.org wrote: It's true that you should read the documentation. As a former newbie and teacher, though, I appreciate the need for some helpful hints: JPA is Java's Persistence (Saving) API found in the javax.persistence.* package. You can use JDO as an alternative, though, instead of JPA. I would recommend this simply because Google App Engine has better documentation for JDO. In the end, to the new user, they are essentially the same. JPA or JDO is how you will save full Java objects into the Google database. It is not difficult to make the database connection if you follow the tutorials. At this stage, it sounds like you will have more trouble creating a basic web application. So, I would start with that first - also in the tutorials. The App Engine SDK comes with a few sample projects that should work out of the box - see if you can get those up and running. Good luck! Jake On Feb 11, 1:38 pm, datanucleus andy_jeffer...@yahoo.com wrote: Really sounds like you ought to read the docs before using the softwarehttp://code.google.com/appengine/docs/ Omitting such a basic step is not advisable. -- 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.comgoogle-appengine-java%2bunsubscr...@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.
[appengine-java] Re: Generic type in GAE JDO. Howto?
java.util.HashMap is not supported, isn't it? I'm using Google plugin for Eclipse. You get this exception from WHERE? i.e please provide the full exception and stack trace. JDO supports persisting a HashMap clearly, as per the spec -- 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: owned relationship ? - could it be a bug
Hello Ikia As suggested by you in the thread 'Incorrect number of entities returned', I have attached the complete files in my previous email. Please let me know, what am I doing wrong here. Thanks -Aswath On Tue, Feb 9, 2010 at 3:06 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello Ikai, Attached is the zip file that contains three files A.java B.java BTest.java Please load in your environment and test it. Thanks. -Aswath On Fri, Feb 5, 2010 at 4:36 PM, aswath satrasala aswath.satras...@gmail.com wrote: B list is missing from class A in my previous posting. Here is the complete A class... @PersistenceCapable(identityType = IdentityType.APPLICATION) public class A { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) @Extension(vendorName = datanucleus, key=gae.encoded-pk, value=true) private String id; @Persistent @Extension(vendorName = datanucleus, key=gae.pk-name, value=true) private String name; @Persistent private ListB bList ; } On Fri, Feb 5, 2010 at 4:32 PM, aswath satrasala aswath.satras...@gmail.com wrote: This is a similar posting I had posted earlier incorrect number of entities returned. Hopefully, this posting may be more clean and I will get some replies. I have two classes 1) A 2) B A is in 1 to many relationship with B @PersistenceCapable(identityType = IdentityType.APPLICATION) public class A { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) @Extension(vendorName = datanucleus, key=gae.encoded-pk, value=true) private String id; @Persistent @Extension(vendorName = datanucleus, key=gae.pk-name, value=true) private String name; } @PersistenceCapable(identityType = IdentityType.APPLICATION) public class B { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) @Extension(vendorName = datanucleus, key = gae.encoded-pk, value = true) private String id; @Persistent @Extension(vendorName = datanucleus, key = gae.pk-name, value = true) private String name; } public class BTest extends JDOTestCase { public void testB() throws Exception { A a = new A(); a.setName(a); B b = new B(); b.setName(b); a.getBList().add(b); beginTxn(); pm.makePersistent(a); a = pm.getObjectById(A.class, a.getId()); assertEquals(1, a.getBList().size()); commitTxn(); B b1 = new B(); b1.setName(b1); beginTxn(); pm.makePersistent(b1); b1 = pm.getObjectById(B.class, b1.getId()); b1.getId(); commitTxn(); } } The test fails at the last line b1.getId() If any of B entity is in relation with A earlier, then another entity of B cannot be persisted by itself. If I move the 2nd transaction to the beginning, the test passes. -Aswath -- 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: Generic type in GAE JDO. Howto?
Also what is this @Element annotation on a Map ? A Map has no elements; it has keys and values. -- 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: Mail with ODT attachment
Hi. ODT might not be able to be used. Please refer to the following links [http://code.google.com/intl/us/appengine/docs/java/mail/ overview.html] [Sending Mail with Attachments] section thanks. On 2月12日, 午前10:25, Geert van Leemputten geert.van.leemput...@gmail.com wrote: I am trying to send a mail containing an openoffice text document with mimetype application/vnd.oasis.opendocument.text, but I cant seem to get it through. So far Ive tried both JavaMail API and googles low-level API unsuccessfully. Caused by: java.lang.IllegalArgumentException: Invalid Attachment Type: Invalid attachment type at com.google.appengine.api.mail.MailServiceImpl.doSend(MailServiceImpl.java: 107) at com.google.appengine.api.mail.MailServiceImpl.send(MailServiceImpl.java: 32) at com.google.appengine.api.mail.stdimpl.GMTransport.sendMessage(GMTransport.java: 247) ... 47 more -- 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: java.io.IOException: Truncated quoted printable data (in 1.3.0 and 1.3.1)
Hi, It is likely already to have tried. This might be useful. Follow this thread: http://groups.google.com/group/google-appengine-java/browse_thread/thread/34fc6354a923e6af/c01e478a169b2e8f?#c01e478a169b2e8f Please try. thanks. On 2月11日, 午前10:36, moca jwein...@gmail.com wrote: I am receiving the error below when receiving an email from Hotmail to an App Engine email Servlet. The same code works fine when receiving emails from Gmail and my cell for instance. gui.EMailReceiverServlet doPost: Truncated quoted printable data java.io.IOException: Truncated quoted printable data at org.apache.geronimo.mail.util.QuotedPrintableEncoder.decodeNonspaceChar(QuotedPrintableEncoder.java: 597) at org.apache.geronimo.mail.util.QuotedPrintableEncoder.decode(QuotedPrintableEncoder.java: 584) at org.apache.geronimo.mail.util.QuotedPrintableDecoderStream.read(QuotedPrintableDecoderStream.java: 80) at org.apache.geronimo.mail.handlers.TextHandler.getContent(TextHandler.java: 107) at javax.activation.DataSourceDataContentHandler.getContent(Unknown Source) at javax.activation.DataHandler.getContent(Unknown Source) at javax.mail.internet.MimeMessage.getContent(MimeMessage.java:927) Fails early when sending email from Hotmail using Plain Text try { Properties props = new Properties(); Session session = Session.getDefaultInstance(props, null); MimeMessage message = new MimeMessage(session, request.getInputStream()); Address[] messageFrom = message.getFrom(); Address messageSender = message.getSender(); Address[] messageReplyTo = message.getReplyTo(); String messageSubject = message.getSubject(); Date messageSentDate = message.getSentDate(); String messageContentType = message.getContentType(); LOGGER.info(received email message.from: + Arrays.toString(messageFrom) + message.sender: + messageSender + message.replyTo: + Arrays.toString(messageReplyTo) + message.subject: + messageSubject + message.sentDate: + messageSentDate + message.contentType: + messageContentType); Object messageContent; try { messageContent = message.getContent(); // THIS SHOULD WORK } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage(), e); ByteArrayOutputStream out = new ByteArrayOutputStream(); message.writeTo(out); A Snippet of what is printed by message.writeTo() (Notice the Content-Transfer-Encoding: quoted-printable and the exception: java.io.IOException: Truncated quoted printable data) Date: Wed, 10 Feb 2010 17:16:32 -0800 Importance: Normal Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginalArrivalTime: 11 Feb 2010 01:16:33.0369 (UTC) FILETIME=[D93A3C90:01CAAAB7] app =20 FYI: My message was app My message comes in, but it is not correctly parsed by the mail implementation. Does anyone know how to work around this?? Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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] Web XML validation NPE upon launching the 1.3.1 dev server
SUMMARY --- I get a NullPointerException (for web XML validation) immediately upon launching the new 1.3.1 GAE/J development server. WHAT STEPS WILL REPRODUCE THE PROBLEM? -- I have installed the latest GAE/J SDK and adjusted my web app to point to the new SDK version (I have renamed the root folder of the previous SDK version from appengine-java-sdk-1.3.0 to appengine-java- sdk-1.3.0 - delete me in order to catch any build and class path change omissions). I build my app and then launch the dev server. WHAT IS THE EXPECTED OUTPUT? I get the following output when I launch the old 1.3.0 GAE/J dev server on my Microsoft Windows command prompt window before any browser activity is made is: C:\Program Files\Google\App Engine\appengine-java-sdk-1.3.0 - delete me\bindev_appserver.cmd \[...]\war There is a new version of the SDK available. --- Latest SDK: Release: 1.3.1 Timestamp: Mon Feb 08 23:00:41 GMT 2010 API versions: [1.0] --- Your SDK: Release: 1.3.0 Timestamp: Mon Dec 14 18:47:37 GMT 2009 API versions: [1.0] --- Please visit http://code.google.com/appengine for the latest SDK. WARNING: The application mode is WicketDevelopment_GAEDevelopment. *** WARNING: Wicket is running in DEVELOPMENT mode. *** *** ^^^*** *** Do NOT deploy to your live server(s) without changing this. *** *** See Application#getConfigurationType() for more information. *** The server is running at http://localhost:8080/ (and my web app will now serve web pages). (The warnings are specific to my app and are OK; they disappear when I reconfigure and rebuild before deployment to production.) WHAT OUTPUT DO YOU SEE INSTEAD? --- I build my app, launch the dev server, and get the following output on my Microsoft Windows command prompt window before any browser activity is made: C:\Program Files\Google\App Engine\appengine-java- sdk-1.3.1\bindev_appserver.cmd \[...]\war java.lang.NullPointerException at com.google.apphosting.utils.config.WebXml.validate(WebXml.java:114) at com.google.appengine.tools.development.AbstractContainerService.loadAppEngineWebXml(AbstractContainerService.java: 242) at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java: 145) at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java: 219) at com.google.appengine.tools.development.DevAppServerMain $StartAction.apply(DevAppServerMain.java:162) at com.google.appengine.tools.util.Parser $ParseResult.applyArgs(Parser.java:48) at com.google.appengine.tools.development.DevAppServerMain.init(DevAppServerMain.java: 113) at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java: 89) C:\Program Files\Google\App Engine\appengine-java-sdk-1.3.1\bin WHAT VERSION OF THE PRODUCT ARE YOU USING? ON WHAT OPERATING SYSTEM? GAE/J version: 1.3.1 JDO version: 1.1.5 (to conform to that used in the latest GAE/J SDK) Web application framework: Apache Wicket 1.4.6 NetBeans development, build and run environment: Product Version: NetBeans IDE 6.7.1 (Build 200907230233) Java: 1.6.0_18; Java HotSpot(TM) Client VM 16.0-b13 System: Windows XP version 5.1 running on x86; Cp1252; en_GB (nb) Web browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv: 1.9.1.7) Gecko/20091221 Firefox/3.5.7 Operating system: Microsoft Windows XP Home Edition Version 2002 Service Pack 3 ADDITIONAL INFORMATION AND CONCLUSION - I have not changed the application code or its configuration except to amend build and class paths to point to the new GAE/J SDK folders and files. I presume that I have done, or omitted to do, something silly, so I ask for comments rather than posting an issue directly. Can anyone give me any pointers as to what I am doing wrong? -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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: Tag search
Thank You very much it works! correct code is:- query.setFilter(tags == 'hello' tags == 'world'); I hope it will work with thousands and millions of records as well. I have not tested with large number of data yet. Thanks again! On Feb 12, 2:46 am, John Patterson jdpatter...@gmail.com wrote: On 12 Feb 2010, at 06:53, Max wrote: I have not coded much in native API but I think it will search first for hello and then for world then mix results. No, it does a merge join - only returning entities that match all filters - not separate queries like the JDO contains() creates. -- 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: Workaround for like keyword in JDOQL
Thanks to all. On Feb 12, 6:27 am, yjun hu itswa...@gmail.com wrote: you can try compass to search On Fri, Feb 12, 2010 at 7:03 AM, John Patterson jdpatter...@gmail.comwrote: The usual approach to complex queries in GAE is to process your data before you need to query it. So in this case for each person create an index entity which simply contains a list of partial names e.g. Pliyush, iyush, yush, ush Then do a keys-only range query for the name part e.g. iyu (look into how to do range queries). Then take the result key's parent and look up the Person entity. On 11 Feb 2010, at 18:26, Piyush wrote: Hi All, I am developing a resource allocation application in GAE with Java. Since there is no like keyword in JDOQL, I am unable to do search in database based on a keyword. For example, I want to list all the employees who have 'ash' word in their name. I have already wasted 3 days due to this problem. So please suggest me some workaround to achieve above this goal. Thanks in advance. Regards, Piyush Jain -- 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.comgoogle-appengine-java%2bunsubscr...@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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- dream or truth -- 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: Workaround for like keyword in JDOQL
Since there is no like keyword in JDOQL JDOQL obviously has {StringField}.matches() since it follows Java -- 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: Handling HardDeadlineExceededError
Hi there: I'm facing the same problem. I tried and I tried and I still can't catch any deadlineException that is supossed to be thrown when I exceed the 30 seconds. The only thing I see is a HardDeadlineExceededError, and in my case it ocurrs in the middle of a JDOQuery.deletePersistentAll() method. Anyone has any ideas? All I want to do is make sure that I'm handling that situation in case it happens. Here's the stack: com.google.apphosting.runtime.HardDeadlineExceededError: This request (ccc45fc5ce7541bd) started at 2010/02/12 14:51:12.763 UTC and was still executing at 2010/02/12 14:51:42.551 UTC. at com.google.appengine.runtime.Request.process-ccc45fc5ce7541bd(Request.java) at sun.misc.Unsafe.park(Native Method) at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source) at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(Unknown Source) at java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(Unknown Source) at java.util.concurrent.CountDownLatch.await(Unknown Source) at com.google.net.rpc.util.RpcWaiter.waitForRpcsToFinish(RpcWaiter.java:96) at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:98) at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:48) at com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall(DatastoreApiHelper.java:52) at com.google.appengine.api.datastore.DatastoreServiceImpl$3.run(DatastoreServiceImpl.java:225) at com.google.appengine.api.datastore.TransactionRunner.runInTransaction(TransactionRunner.java:30) at com.google.appengine.api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java:211) at com.google.appengine.api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java:192) at com.google.appengine.api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java:184) at org.datanucleus.store.appengine.RuntimeExceptionWrappingDatastoreService.delete(RuntimeExceptionWrappingDatastoreService.java:141) at org.datanucleus.store.appengine.DatastorePersistenceHandler.delete(DatastorePersistenceHandler.java:196) at org.datanucleus.store.appengine.DatastorePersistenceHandler.deleteObject(DatastorePersistenceHandler.java:612) at org.datanucleus.state.JDOStateManagerImpl.internalDeletePersistent(JDOStateManagerImpl.java:4198) at org.datanucleus.state.JDOStateManagerImpl.deletePersistent(JDOStateManagerImpl.java:4166) at org.datanucleus.ObjectManagerImpl.deleteObjectInternal(ObjectManagerImpl.java:1470) at org.datanucleus.ObjectManagerImpl.deleteObject(ObjectManagerImpl.java:1395) at org.datanucleus.ObjectManagerImpl.deleteObjects(ObjectManagerImpl.java:1534) at org.datanucleus.store.query.Query.performDeletePersistentAll(Query.java:1881) at org.datanucleus.store.query.AbstractJavaQuery.performDeletePersistentAll(AbstractJavaQuery.java:136) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java:1832) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java:1780) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java:1769) at org.datanucleus.jdo.JDOQuery.deletePersistentAll(JDOQuery.java:159) at ar.com.SomeCodeOfMine$8.doStuff(Blah.java:175) Thanks, Esteban On Thu, Dec 24, 2009 at 4:24 AM, Lior Harsat lior.har...@gmail.com wrote: Hi Don, thanx for your quick reply. I am pretty sure I am not catching DeadlineExceededException anywhere in the code (but I'll check again...). I've seen some posts in the past and some bugs submitted to google code that there is an inconsistent behavior with regard to the deadline error/exception. Thanx,Lior On Dec 23, 10:36 pm, Don Schwarz schwa...@google.com wrote: You cannot catch HardDeadlineExceededError. DeadlineExceededException should be thrown first. Perhaps some code you are using is silently catching and ignoring it? On Wed, Dec 23, 2009 at 4:08 AM, Lior Harsat lior.har...@gmail.com wrote: Hi, I am trying to build some mechanism for handling HardDeadlineExceededError (and other timeouts as well). I wish to catch this Error and wrap up my work so I can send my own response instead of the default error (500) message that GAE produces. Here's the problem. I cant catch this Error for some reason.I've made sure my catch clause is in the right place (from the error provided stack trace). I even catch a Throwable to make sure I don't miss the Error. Sadly I don't reach the catch clause. Has anyone had some experience with this? Do you have some other innovative ideas on how to handle such timeouts ? B.T.W I would have expected that a DeadlineExceededException would be thrown instead , dont you? Thanx, Lior -- 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
[appengine-java] Re: Mail with ODT attachment
Shall we file a bug report for enhancement to include open document formats? What do you think? On Feb 12, 12:05 pm, seleronm seler...@gmail.com wrote: Hi. ODTmight not be able to be used. Please refer to the following links [http://code.google.com/intl/us/appengine/docs/java/mail/ overview.html] [SendingMailwith Attachments] section thanks. On 2月12日, 午前10:25, Geert van Leemputten geert.van.leemput...@gmail.com wrote: I am trying to send amailcontaining an openoffice text document with mimetype application/vnd.oasis.opendocument.text, but I cant seem to get it through. So far Ive tried both JavaMail API and googles low-level API unsuccessfully. Caused by: java.lang.IllegalArgumentException: InvalidAttachment Type: Invalidattachmenttype at com.google.appengine.api.mail.MailServiceImpl.doSend(MailServiceImpl.java: 107) at com.google.appengine.api.mail.MailServiceImpl.send(MailServiceImpl.java: 32) at com.google.appengine.api.mail.stdimpl.GMTransport.sendMessage(GMTransport.j ava: 247) ... 47 more -- 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] java.lang.IllegalArgumentException: java.util.HashMap is not a supported property type.
Hello All, Right now i am using gwt with low level API for creation of dynamic models. But i just got stucked at one place. I had stored my fields attributes in below collection: ListMapString, String fieldMap = new ArrayListMapString, String(); And when i run following code it give me error on second line: Entity entity = new Entity(ModelList); entity.setProperty(model.getModelName(), fieldMap); dataStore.put(entity); Error: java.lang.IllegalArgumentException: java.util.HashMap is not a supported property type. How can i solve this? Actually i am learning all things JPA, JDO, low level API, so i am not able to solve this small issue. Should i use low level API only for dynamic generation of models or is there any other thing available? Application should not decrease the performance. Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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] Local datastore is empty after migrating to 1.3.1
The Development Console tells The datastore is empty after updating to 1.3.1. Any ideas why? I need my local data back. The local_db file is not emoty and contain sthe data it contained before 1.3.1 migration. -- 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] Why does this error happen??
'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't sleep, untill solve this problem. - My enviorment - 1. Eclipse (GANIMEDE) 2. Google Plugin for Eclipse 3.5(1.2.0.v200912062003) 3. Google App Engine Java SDK 1.3.1 (1.3.1.v201002101412) 4. Google Web Toolkit SDK 2.0.1 (2.0.1.v201002021445) -- 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: Eclipse hangs at startup, Ubuntu
Hello, I do have the same Problem (Ubuntu 9.10, Eclipse Galileo, Google Plugin) my, web-inf/lib folder is under source control. I found out that it helps, when i delete the contents of the web-inf/ lib folder prior to starting eclipse. Eclipse then will start without problem and i can get the deleted libraries back from the svn repository... tony On Jan 22, 4:23 pm, Rajeev Dayal rda...@google.com wrote: Hi, What is the name of your project, and the name of your App Engine SDK? I'm trying to decipher (in our code) where the message Updating myproject/...ne - 1.3.0 comes from. When Eclipse starts up, the SDKs will automatically copy over the necessary jars to your project's war/WEB-INF/lib folder. I think that's what is happening here. This should not cause a freeze-up in the IDE though. Is your war/WEB-INF/lib folder version-controlled, and are you using some sort of version-control plugin in Eclipse? If so, does it help if you remove the war/WEB-INF/lib folder from version control? Rajeev On Thu, Jan 14, 2010 at 7:33 AM, pgoetz pgo...@pgoetz.de wrote: On Jan 14, 11:41 am, Blessed Geek blessedg...@gmail.com wrote: Is any of your resources sitting in a foreign file system like smb, ntfs or nfs? No, all of my resources are local. They are attached to a SVN repository, but the subversion plugin does not communicate with the repository at that time. And do you have many projects mounted like I do? I had the same problem and I had to kill/restart the connector process to the foreign file system, whenever this happens. I would notice thrashing going own in the connection and eclipse got stuck. Again no. It is the only project in this workspace (just a test project). [...] Perhaps, you could turn autobuild off everytime you exit eclipse so that it when eclipse is started, it would not autobuild - and turn it back on when eclipse startup has quieted down. That was a hint in the right direction, I think. I have disabled the google plugin, closed the project, reactivated the plugin and after a startup and some time for eclipse to organize itself, I opened the project. That did the trick. In my opinion this is not a very elegant solution, but it works for me so far. Thank you very much for your help! Greetings, 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-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=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] Why does this error happen??
Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote: 'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't sleep, untill solve this problem. - My enviorment - 1. Eclipse (GANIMEDE) 2. Google Plugin for Eclipse 3.5(1.2.0.v200912062003) 3. Google App Engine Java SDK 1.3.1 (1.3.1.v201002101412) 4. Google Web Toolkit SDK 2.0.1 (2.0.1.v201002021445) -- 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.comgoogle-appengine-java%2bunsubscr...@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] Re: Close PersistenceManager every time?
A few clarifications: detaching an object isn't expensive. It just leads you down a path where extremely weird bugs can crop up if you don't keep track of what is managed and what isn't. You can eager load the list before you close the persistence manager by calling a size() method. You can close the Persistence Manager at this point, but the List will have been populated. Yes, getPersistenceManager() should be returning a new PersistenceManager instance each time, but this is very cheap and you shouldn't worry too much about doing this. There's this myth that object instantiation in Java is expensive, and while this is true for things like pooled resource managers or dynamic language interpreters, in general, this is so cheap to the point that it should rarely matter. I wouldn't worry about this in your case. On Thu, Feb 11, 2010 at 10:20 PM, hsjawanda hsjawa...@gmail.com wrote: On Feb 11, 11:42 am, Conor Power iamco...@gmail.com wrote: Hi, I have a question on detachment ... I have my PM in a DAO and I open and close pre / post query. The problem was that the objects returned are null once the PM was closed unless I set them to be detachable. This is exactly the issue I have... My DAO's methods do the querying return a ListE of results. JSP page uses this list to construct and return the page. Unless I close the PM in the JSP by making a second call to a Close() method on the DAO (I don't like that idea), I either leave the PM as it is (which, based on Ikai's reply, does not seem to be a problem) or I detach (duplicate?) the result set. Ikai clearly tells us that detaching is expensive (as expected), so I'll avoid that. Do repeated calls to PMF.get().getPersistenceManager() return the same PM or is a new one created everytime? Even though the getPersistenceManager() call is light, I'd rather avoid repeated calls if it returns a new instance every time. Thanks, HSJ Is there an alternative instead of detach in this case? Should I: 1. make DTO of the returned objects (similar to what would happen in detachable anyway I guess?) 2. design the layers such that the PM is closed at the end of the request once the reponse has been formed using the data from the objects that were queried. thanks ... cowper On Wed, Feb 10, 2010 at 1:46 PM, Ikai L (Google) ika...@google.com wrote: This is really up to you, though I would avoid detaching unless absolutely necessary. Opening and closing a PersistenceManager should be extremely cheap (it's instantiating a PersistenceManagerFactory that's expensive). You've got a few options here, and what you do really just depends on what makes sense for you: - dependency inject the PersistenceManager into a DAO class that you instantiate and pass that instance around, closing it when you are complete - open and close each time in the DAO - the problem here is if you need a PersistenceManager that spans DAO objects (either build that into a method or a Service layer, though for the record I have an aversion to additional, unnecessary layers that do a single thing) From a performance perspective, we aren't doing anything. If you take a look at the low-level API documentation, there's no concept of close: http://code.google.com/appengine/docs/java/javadoc/com/google/appengi. .. On Wed, Feb 10, 2010 at 8:26 AM, hsjawanda hsjawa...@gmail.com wrote: Nobody knows the answer to this? On Feb 7, 2:34 pm, hsjawanda hsjawa...@gmail.com wrote: Should the PersistenceManager be closed after every query? I have a utility class that handles querying the datastore. This class then returns results which are used by JSP pages to show output. AFAIK, these are my options: * Make all my data objects detachable (what is the extra cost of doing this? Don't they have to be copied when detaching? ) * Make a second call on the utility class to close the PM (defeats the purpose of having the utility class) * Leave my PM unclosed (what is/are the implications of this?) I am referring to a case where I am only doing reads from the data store. Regards, Harshdeep -- 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com|http://twitter.com/app_engine -- You received this message
[appengine-java] First access to a jsp takes a while
The first access to a jsp page takes a while. A simple hello world takes about 600ms of cpu time. This is not due to it being a loading request. I have a servlet that doesn't use jsp, and I hit that first to do the loading request, then I hit the jsp and it takes ~600ms to respond. Subsequent requests to any jsp do not have this performance hit. It seems like its just the first time I use the jsp system. NOTE: I have precompilation-enabled set to true. Any ideas of what causes this and does anyone know how to eliminate this? It adds an additional 600ms to my cold start time, and my app is a low traffic app so there are a lot of loading requests. -- 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] Strange error on begin transaction
Hello, I see the following error (INFO severity) in the logs of my app: com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue $SystemLoader loadFinalizer: Not allowed to access system class loader. com.google.appengine.repackaged.com.google.common.base.internal.Finalizer getInheritableThreadLocalsField: Couldn't access Thread.inheritableThreadLocals. Reference finalizer threads will inherit thread local values. com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue init: Failed to start reference finalizer thread. Reference cleanup will only occur when new references are created. java.lang.reflect.InvocationTargetException at com.google.appengine.runtime.Request.process-3dbcd69ac8d2e2a0(Request.java) 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(Method.java:43) at com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue.init(FinalizableReferenceQueue.java: 127) at com.google.appengine.repackaged.com.google.common.collect.Interners $WeakInterner.clinit(Interners.java:118) at com.google.appengine.repackaged.com.google.common.collect.Interners.newWeakInterner(Interners.java: 59) at com.google.appengine.repackaged.com.google.io.protocol.ProtocolSupport.clinit(ProtocolSupport.java: 55) at com.google.apphosting.api.DatastorePb $Transaction.init(DatastorePb.java:61) at com.google.apphosting.api.DatastorePb$Transaction $1.init(DatastorePb.java:327) at com.google.apphosting.api.DatastorePb $Transaction.clinit(DatastorePb.java:327) at com.google.appengine.api.datastore.DatastoreServiceImpl.beginTransaction(DatastoreServiceImpl.java: 268) 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(Method.java:43) at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:161) at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java: 247) at org.mozilla.javascript.optimizer.OptRuntime.callProp0(OptRuntime.java: 119) any idea what that might be? I am using SDK 1.3.1 Thanks in advance, George -- http://www.appenginejs.org -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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] select fails silently
hi, I'm trying to delete some records. but select fails without any exception Code does not reach deletePersistAll in both the cases. All I can see is a CPU spike of 9500 cpu_ms. I do see an exception in try#2. My query expects 400 records index is created. I'm approaching 100% datastore limit. Try#1 String filter = symbol == '+ symbol +' date == '+ now +'; Query query = persistManager.newQuery(select key from + StorableQuote.class); query.setFilter(filter); ListKey results = (ListKey) query.execute(); persistManager.deletePersistentAll(results); Try #2 String filter = symbol == '+ symbol +' date == '+ now +'; Query query = persistManager.newQuery(StorableQuote.class); query.setFilter(filter); ListStorableQuote results = (ListStorableQuote) query.execute(); persistManager.deletePersistentAll(results); Exception from logs com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue init: Failed to start reference finalizer thread. Reference cleanup will only occur when new references are created. java.lang.reflect.InvocationTargetException at com.google.appengine.runtime.Request.process-835b187cc240a3e2(Request.java) 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(Method.java:43) at com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue.init(FinalizableReferenceQueue.java: 127) at com.google.appengine.repackaged.com.google.common.collect.Interners $WeakInterner.clinit(Interners.java:118) at com.google.appengine.repackaged.com.google.common.collect.Interners.newWeakInterner(Interners.java: 59) at com.google.appengine.repackaged.com.google.io.protocol.ProtocolSupport.clinit(ProtocolSupport.java: 55) at com.google.apphosting.api.DatastorePb $Query.init(DatastorePb.java:1185) at com.google.apphosting.api.DatastorePb$Query $1.init(DatastorePb.java:2677) at com.google.apphosting.api.DatastorePb $Query.clinit(DatastorePb.java:2677) at com.google.appengine.api.datastore.QueryTranslator.convertToPb(QueryTranslator.java: 28) at com.google.appengine.api.datastore.PreparedQueryImpl.convertToPb(PreparedQueryImpl.java: 151) at com.google.appengine.api.datastore.PreparedQueryImpl.runQuery(PreparedQueryImpl.java: 111) at com.google.appengine.api.datastore.PreparedQueryImpl.asQueryResultIterator(PreparedQueryImpl.java: 89) at com.google.appengine.api.datastore.BasePreparedQuery $2.iterator(BasePreparedQuery.java:45) at com.google.appengine.api.datastore.BasePreparedQuery $2.iterator(BasePreparedQuery.java:42) at org.datanucleus.store.appengine.query.RuntimeExceptionWrappingIterable.iterator(RuntimeExceptionWrappingIterable.java: 42) at org.datanucleus.store.appengine.query.LazyResult.init(LazyResult.java: 67) at org.datanucleus.store.appengine.query.StreamingQueryResult.init(StreamingQueryResult.java: 63) at org.datanucleus.store.appengine.query.DatastoreQuery.newStreamingQueryResultForEntities(DatastoreQuery.java: 399) at org.datanucleus.store.appengine.query.DatastoreQuery.wrapEntityQueryResult(DatastoreQuery.java: 372) at org.datanucleus.store.appengine.query.DatastoreQuery.fulfillEntityQuery(DatastoreQuery.java: 364) at org.datanucleus.store.appengine.query.DatastoreQuery.executeQuery(DatastoreQuery.java: 265) at org.datanucleus.store.appengine.query.DatastoreQuery.performExecute(DatastoreQuery.java: 228) at org.datanucleus.store.appengine.query.JDOQLQuery.performExecute(JDOQLQuery.java: 85) at org.datanucleus.store.query.Query.executeQuery(Query.java:1489) at org.datanucleus.store.query.Query.executeWithArray(Query.java: 1371) at org.datanucleus.store.query.Query.execute(Query.java:1344) at org.datanucleus.jdo.JDOQuery.execute(JDOQuery.java:221) at com.client.GraphFutureServlet.deleteDBInternal(GraphFutureServlet.java: 571) at com.client.GraphFutureServlet.doGet(GraphFutureServlet.java:157) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java: 97) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java: 35) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084)
[appengine-java] Re: Why does this error happen??
Yeah. Of course. Thank you to your reply. -- HTTP ERROR: 500 twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. RequestURI=/test Caused by: java.lang.NoClassDefFoundError: twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java: 51) at twilist.UpdateTwit.getOAuthData(UpdateTwit.java:60) at twilist.UpdateTwit.doGet(UpdateTwit.java:19) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 51) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 121) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:352) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 396) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:442) On Feb 13, 1:59 am, Don Schwarz schwa...@google.com wrote: Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote: 'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't sleep, untill solve this problem. - My enviorment - 1. Eclipse (GANIMEDE) 2. Google Plugin for Eclipse 3.5 (1.2.0.v200912062003) 3. Google App Engine Java SDK 1.3.1 (1.3.1.v201002101412) 4. Google Web Toolkit SDK 2.0.1 (2.0.1.v201002021445) -- 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.comgoogle-appengine-java%2bunsubscr...@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] Re: App Engine SDK 1.3.1 is out!
Thanks for making the code available. This looks like an unintentional bug fix to me. There is a hard and fast rule that you can't operate on more than one entity group inside a transaction, so creating and saving two instances of EntityA should always generate an exception because they are both root entities and therefore part of different entity groups. This code _should_ have thrown an exception in 1.3.0 (and earlier), but it didn't. I made some implementation changes to how transactions are managed in 1.3.1 and it looks like I fixed this problem as part of it. Max On Fri, Feb 12, 2010 at 12:10 AM, vori vori...@gmail.com wrote: The following source code has the same problem. - PersistenceManager pm = pmfInstance.getPersistenceManager(); pm.makePersistent(new EntityB(key)); // If this two lines are commented out, pm.getObjectById(EntityB.class, key); // the following code throws exception on sdk1.3.0 too. Transaction tx = pm.currentTransaction(); tx.begin(); pm.makePersistent(new EntityA()); pm.makePersistent(new EntityA()); // it throws exception if it compiled using sdk1.3.1. tx.commit(); - Full source code is included in the following repository. Hg repo https://test-gae-j-sdk-131.googlecode.com/hg/ Project page: http://code.google.com/p/test-gae-j-sdk-131/ On 2月12日, 午後4:25, vori vori...@gmail.com wrote: Sorry, I am wrong. I inspected my source code and found the real cause. The following code can works on SDK1.3.0, but it throws java.lang.IllegalArgumentException: can't operate on multiple entity groups in a single transaction. when it used on SDK1.3.1. PersistenceManager pm = pmfInstance.getPersistenceManager(); pm.makePersistent(new EntityB(key)); // If this two lines are commented out, pm.getObjectById(EntityB.class, key); // the following code throws exception on SDK1.3.0 too. ArrayListEntityA entities = new ArrayListEntityA(2); entities.add(new EntityA()); entities.add(new EntityA()); Transaction tx = pm.currentTransaction(); tx.begin(); pm.makePersistentAll(entities); // it throws exception if it compiled using sdk1.3.1. tx.commit(); Full source code is here.https://test-gae-j-sdk-131.googlecode.com/hg/ On 2月12日, 午前3:11, Max Ross (Google) maxr+appeng...@google.commaxr%2bappeng...@google.com wrote: Assuming a ClassA object with the specified id already exists, the code you've posted works fine for me. Could you put together a complete example that demonstrates the unexpected behavior? Thanks, Max On Wed, Feb 10, 2010 at 7:49 PM, vori vori...@gmail.com wrote: Is it a bug on JDO of SDK 1.3.1? -- PersistentManager pm = PMF.get().getPersistenceManager();; ClassA classA = pm.getObjectById(ClassA.class, id); ClassB classB = new ClassB(); Transaction tx = pm.currentTransaction(); tx.begin(); pm.makePersistent(classB); tx.commit(); // It throws javax.jdo.JDOException: can't operate on multiple entity groups in a single transaction. -- -- 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%2B 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.comgoogle-appengine-java%2bunsubscr...@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] Re: Why does this error happen??
Where is your twitter4j jar file located? For example, do you have a copy of it in your JDK's extension folder (e.g. jre/lib/ext)? On Fri, Feb 12, 2010 at 1:05 PM, Jongmin Yoon zect...@gmail.com wrote: Yeah. Of course. Thank you to your reply. -- HTTP ERROR: 500 twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. RequestURI=/test Caused by: java.lang.NoClassDefFoundError: twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java: 51) at twilist.UpdateTwit.getOAuthData(UpdateTwit.java:60) at twilist.UpdateTwit.doGet(UpdateTwit.java:19) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 51) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 121) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:352) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 396) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:442) On Feb 13, 1:59 am, Don Schwarz schwa...@google.com wrote: Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote: 'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't sleep, untill solve this problem. - My enviorment - 1. Eclipse (GANIMEDE) 2. Google Plugin for Eclipse 3.5(1.2.0.v200912062003) 3. Google App Engine Java SDK 1.3.1 (1.3.1.v201002101412) 4. Google Web Toolkit SDK 2.0.1 (2.0.1.v201002021445) -- 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@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
[appengine-java] Re: Why does this error happen??
Yes, I did. total 3.. 1. JAVA_HOME/jre/lib/ext 2. Include /war/WEB-INF/lib 3. 2 - 'Add to Build Path' Not only 'twitter4j'! logback-classic-0.9.6.jar logback-core-0.9.6.jar jdom.jar junit.jar rome-0.9.jar slf4j-api-1.5.0.jar twitter4j-core-2.1.1-SNAPSHOT-javadoc.jar twitter4j-core-2.1.1-SNAPSHOT-sources.jar twitter4j-core-2.1.1-SNAPSHOT.jar - this is 'twitter4j' I just hopedT_T On Feb 13, 3:43 am, Toby Reyelts to...@google.com wrote: Where is your twitter4j jar file located? For example, do you have a copy of it in your JDK's extension folder (e.g. jre/lib/ext)? On Fri, Feb 12, 2010 at 1:05 PM, Jongmin Yoon zect...@gmail.com wrote: Yeah. Of course. Thank you to your reply. -- HTTP ERROR: 500 twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. RequestURI=/test Caused by: java.lang.NoClassDefFoundError: twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java: 51) at twilist.UpdateTwit.getOAuthData(UpdateTwit.java:60) at twilist.UpdateTwit.doGet(UpdateTwit.java:19) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 51) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 121) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:352) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 396) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:442) On Feb 13, 1:59 am, Don Schwarz schwa...@google.com wrote: Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote: 'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't sleep, untill solve this problem. - My enviorment - 1. Eclipse (GANIMEDE) 2. Google Plugin for Eclipse 3.5 (1.2.0.v200912062003) 3. Google App Engine Java SDK 1.3.1 (1.3.1.v201002101412) 4. Google Web Toolkit SDK 2.0.1 (2.0.1.v201002021445) -- 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
Re: [appengine-java] Re: Why does this error happen??
On Fri, Feb 12, 2010 at 1:53 PM, Jongmin Yoon zect...@gmail.com wrote: Yes, I did. total 3.. 1. JAVA_HOME/jre/lib/ext This is the problem. The dev_appserver does not allow you to use arbitrary libraries that live in your own personal JDK's extension folder. (For example, we don't copy that folder up when you deploy your application). If you delete the jar file from lib/ext and leave it in WEB-INF/lib, the problem should go away. 2. Include /war/WEB-INF/lib 3. 2 - 'Add to Build Path' Not only 'twitter4j'! logback-classic-0.9.6.jar logback-core-0.9.6.jar jdom.jar junit.jar rome-0.9.jar slf4j-api-1.5.0.jar twitter4j-core-2.1.1-SNAPSHOT-javadoc.jar twitter4j-core-2.1.1-SNAPSHOT-sources.jar twitter4j-core-2.1.1-SNAPSHOT.jar - this is 'twitter4j' I just hopedT_T On Feb 13, 3:43 am, Toby Reyelts to...@google.com wrote: Where is your twitter4j jar file located? For example, do you have a copy of it in your JDK's extension folder (e.g. jre/lib/ext)? On Fri, Feb 12, 2010 at 1:05 PM, Jongmin Yoon zect...@gmail.com wrote: Yeah. Of course. Thank you to your reply. -- HTTP ERROR: 500 twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. RequestURI=/test Caused by: java.lang.NoClassDefFoundError: twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java: 51) at twilist.UpdateTwit.getOAuthData(UpdateTwit.java:60) at twilist.UpdateTwit.doGet(UpdateTwit.java:19) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 51) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 121) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:352) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 396) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:442) On Feb 13, 1:59 am, Don Schwarz schwa...@google.com wrote: Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote: 'com.google.appengine.tools.development.agent.runtime.Runtime.reject' It is occur error when include any class. After upload to 'appspot.com', the error does not occur. But error occurred on my computer. Same java source. I've tried to include jar library on my project. (many many many times) But error occurred. Somebody help me. I can't
[appengine-java] Re: Why does this error happen??
whawhat.. Here it is a heaven Thank you very(*unlimit) much!! I'm so happy, now! XD Thank you, again On Feb 13, 4:07 am, Toby Reyelts to...@google.com wrote: On Fri, Feb 12, 2010 at 1:53 PM, Jongmin Yoon zect...@gmail.com wrote: Yes, I did. total 3.. 1. JAVA_HOME/jre/lib/ext This is the problem. The dev_appserver does not allow you to use arbitrary libraries that live in your own personal JDK's extension folder. (For example, we don't copy that folder up when you deploy your application). If you delete the jar file from lib/ext and leave it in WEB-INF/lib, the problem should go away. 2. Include /war/WEB-INF/lib 3. 2 - 'Add to Build Path' Not only 'twitter4j'! logback-classic-0.9.6.jar logback-core-0.9.6.jar jdom.jar junit.jar rome-0.9.jar slf4j-api-1.5.0.jar twitter4j-core-2.1.1-SNAPSHOT-javadoc.jar twitter4j-core-2.1.1-SNAPSHOT-sources.jar twitter4j-core-2.1.1-SNAPSHOT.jar - this is 'twitter4j' I just hopedT_T On Feb 13, 3:43 am, Toby Reyelts to...@google.com wrote: Where is your twitter4j jar file located? For example, do you have a copy of it in your JDK's extension folder (e.g. jre/lib/ext)? On Fri, Feb 12, 2010 at 1:05 PM, Jongmin Yoon zect...@gmail.com wrote: Yeah. Of course. Thank you to your reply. -- HTTP ERROR: 500 twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. RequestURI=/test Caused by: java.lang.NoClassDefFoundError: twitter4j.TwitterFactory is a restricted class. Please see the Google App Engine developer's guide for more details. at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java: 51) at twilist.UpdateTwit.getOAuthData(UpdateTwit.java:60) at twilist.UpdateTwit.doGet(UpdateTwit.java:19) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 51) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 121) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:352) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 396) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:442) On Feb 13, 1:59 am, Don Schwarz schwa...@google.com wrote: Can you provide the full error you're getting? Ideally with a stack trace? On Fri, Feb 12, 2010 at 9:13 AM, Jongmin Yoon zect...@gmail.com wrote:
Re: [appengine-java] Re: Handling HardDeadlineExceededError
I believe that the stack trace from a HDEE is not accurate. I found that it seemed to be copied from the first DEE. Are you sure you are not catching and ignoring this first? On 12 Feb 2010, at 22:24, Esteban Ignacio Masoero wrote: Hi there: I'm facing the same problem. I tried and I tried and I still can't catch any deadlineException that is supossed to be thrown when I exceed the 30 seconds. The only thing I see is a HardDeadlineExceededError, and in my case it ocurrs in the middle of a JDOQuery.deletePersistentAll() method. Anyone has any ideas? All I want to do is make sure that I'm handling that situation in case it happens. Here's the stack: com.google.apphosting.runtime.HardDeadlineExceededError: This request (ccc45fc5ce7541bd) started at 2010/02/12 14:51:12.763 UTC and was still executing at 2010/02/12 14:51:42.551 UTC. at com.google.appengine.runtime.Request.process- ccc45fc5ce7541bd(Request.java) at sun.misc.Unsafe.park(Native Method) at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source) at java .util .concurrent .locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(Unknown Source) at java .util .concurrent .locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(Unknown Source) at java.util.concurrent.CountDownLatch.await(Unknown Source) at com.google.net.rpc.util.RpcWaiter.waitForRpcsToFinish(RpcWaiter.java: 96) at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:98) at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:48) at com .google .appengine .api .datastore.DatastoreApiHelper.makeSyncCall(DatastoreApiHelper.java:52) at com.google.appengine.api.datastore.DatastoreServiceImpl $3.run(DatastoreServiceImpl.java:225) at com .google .appengine .api .datastore.TransactionRunner.runInTransaction(TransactionRunner.java: 30) at com .google .appengine .api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java: 211) at com .google .appengine .api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java: 192) at com .google .appengine .api.datastore.DatastoreServiceImpl.delete(DatastoreServiceImpl.java: 184) at org .datanucleus .store .appengine .RuntimeExceptionWrappingDatastoreService .delete(RuntimeExceptionWrappingDatastoreService.java:141) at org .datanucleus .store .appengine .DatastorePersistenceHandler.delete(DatastorePersistenceHandler.java: 196) at org .datanucleus .store .appengine .DatastorePersistenceHandler .deleteObject(DatastorePersistenceHandler.java:612) at org .datanucleus .state .JDOStateManagerImpl .internalDeletePersistent(JDOStateManagerImpl.java:4198) at org .datanucleus .state.JDOStateManagerImpl.deletePersistent(JDOStateManagerImpl.java: 4166) at org .datanucleus .ObjectManagerImpl.deleteObjectInternal(ObjectManagerImpl.java:1470) at org .datanucleus.ObjectManagerImpl.deleteObject(ObjectManagerImpl.java: 1395) at org .datanucleus.ObjectManagerImpl.deleteObjects(ObjectManagerImpl.java: 1534) at org .datanucleus.store.query.Query.performDeletePersistentAll(Query.java: 1881) at org .datanucleus .store .query .AbstractJavaQuery.performDeletePersistentAll(AbstractJavaQuery.java: 136) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java: 1832) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java: 1780) at org.datanucleus.store.query.Query.deletePersistentAll(Query.java: 1769) at org.datanucleus.jdo.JDOQuery.deletePersistentAll(JDOQuery.java:159) at ar.com.SomeCodeOfMine$8.doStuff(Blah.java:175) Thanks, Esteban On Thu, Dec 24, 2009 at 4:24 AM, Lior Harsat lior.har...@gmail.com wrote: Hi Don, thanx for your quick reply. I am pretty sure I am not catching DeadlineExceededException anywhere in the code (but I'll check again...). I've seen some posts in the past and some bugs submitted to google code that there is an inconsistent behavior with regard to the deadline error/exception. Thanx,Lior On Dec 23, 10:36 pm, Don Schwarz schwa...@google.com wrote: You cannot catch HardDeadlineExceededError. DeadlineExceededException should be thrown first. Perhaps some code you are using is silently catching and ignoring it? On Wed, Dec 23, 2009 at 4:08 AM, Lior Harsat lior.har...@gmail.com wrote: Hi, I am trying to build some mechanism for handling HardDeadlineExceededError (and other timeouts as well). I wish to catch this Error and wrap up my work so I can send my own response instead of the default error (500) message that GAE produces. Here's the problem. I cant catch this Error for some reason.I've made sure my catch clause is in the right place (from the error provided stack trace). I even catch a Throwable to make sure I don't miss the Error. Sadly I don't reach the catch clause. Has anyone had some experience with this? Do you have some other innovative ideas on how to handle such timeouts ?
[appengine-java] JDO/JPA Snippets That Work - The Truth About Joins
http://gae-java-persistence.blogspot.com/2010/02/truth-about-joins.html -- 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] can not get message containing embedded widget to work
when defining a simple embedded link in a msg, using uibinder, I can not get the text of the Hyperlink to appear without a br (I would like to get in a single line starts at hyp01 but I keep on getting start at hyp01 - panel definition from xml --- g:HTMLPanel ui:msg starts at, g:Hyperlink ui:field=hyper1uhyp01/u/g:Hyperlink /ui:msg /g:HTMLPanel -- 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: Local datastore is empty after migrating to 1.3.1
Same thing happened to me. Got an empty local datastore after updating to 1.3.1. Hopefully I didn't have much data in it. But it might not be the case for everybody. On 12 fév, 09:35, Al Murauski a.murau...@gmail.com wrote: The Development Console tells The datastore is empty after updating to 1.3.1. Any ideas why? I need my local data back. The local_db file is not emoty and contain sthe data it contained before 1.3.1 migration. -- 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: Strange error on begin transaction
Any idea? -g. On Feb 12, 7:55 pm, George Moschovitis george.moschovi...@gmail.com wrote: Hello, I see the following error (INFO severity) in the logs of my app: com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue $SystemLoader loadFinalizer: Not allowed to access system class loader. com.google.appengine.repackaged.com.google.common.base.internal.Finalizer getInheritableThreadLocalsField: Couldn't access Thread.inheritableThreadLocals. Reference finalizer threads will inherit thread local values. com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue init: Failed to start reference finalizer thread. Reference cleanup will only occur when new references are created. java.lang.reflect.InvocationTargetException at com.google.appengine.runtime.Request.process-3dbcd69ac8d2e2a0(Request.java) 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(Method.java:43) at com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue.init(FinalizableReferenceQueue.java: 127) at com.google.appengine.repackaged.com.google.common.collect.Interners $WeakInterner.clinit(Interners.java:118) at com.google.appengine.repackaged.com.google.common.collect.Interners.newWeak Interner(Interners.java: 59) at com.google.appengine.repackaged.com.google.io.protocol.ProtocolSupport.cli nit(ProtocolSupport.java: 55) at com.google.apphosting.api.DatastorePb $Transaction.init(DatastorePb.java:61) at com.google.apphosting.api.DatastorePb$Transaction $1.init(DatastorePb.java:327) at com.google.apphosting.api.DatastorePb $Transaction.clinit(DatastorePb.java:327) at com.google.appengine.api.datastore.DatastoreServiceImpl.beginTransaction(Da tastoreServiceImpl.java: 268) 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(Method.java:43) at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:161) at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java: 247) at org.mozilla.javascript.optimizer.OptRuntime.callProp0(OptRuntime.java: 119) any idea what that might be? I am using SDK 1.3.1 Thanks in advance, George --http://www.appenginejs.org -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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: Strange error on begin transaction
You can ignore it. It's a red herring http://tinyurl.com/y8tlejt. On Sat, Feb 13, 2010 at 1:43 AM, George Moschovitis george.moschovi...@gmail.com wrote: Any idea? -g. On Feb 12, 7:55 pm, George Moschovitis george.moschovi...@gmail.com wrote: Hello, I see the following error (INFO severity) in the logs of my app: com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue $SystemLoader loadFinalizer: Not allowed to access system class loader. com.google.appengine.repackaged.com.google.common.base.internal.Finalizer getInheritableThreadLocalsField: Couldn't access Thread.inheritableThreadLocals. Reference finalizer threads will inherit thread local values. com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue init: Failed to start reference finalizer thread. Reference cleanup will only occur when new references are created. java.lang.reflect.InvocationTargetException at com.google.appengine.runtime.Request.process-3dbcd69ac8d2e2a0(Request.java) 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(Method.java:43) at com.google.appengine.repackaged.com.google.common.base.FinalizableReference Queue.init(FinalizableReferenceQueue.java: 127) at com.google.appengine.repackaged.com.google.common.collect.Interners $WeakInterner.clinit(Interners.java:118) at com.google.appengine.repackaged.com.google.common.collect.Interners.newWeak Interner(Interners.java: 59) at com.google.appengine.repackaged.com.google.io.protocol.ProtocolSupport.cli nit(ProtocolSupport.java: 55) at com.google.apphosting.api.DatastorePb $Transaction.init(DatastorePb.java:61) at com.google.apphosting.api.DatastorePb$Transaction $1.init(DatastorePb.java:327) at com.google.apphosting.api.DatastorePb $Transaction.clinit(DatastorePb.java:327) at com.google.appengine.api.datastore.DatastoreServiceImpl.beginTransaction(Da tastoreServiceImpl.java: 268) 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(Method.java:43) at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:161) at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java: 247) at org.mozilla.javascript.optimizer.OptRuntime.callProp0(OptRuntime.java: 119) any idea what that might be? I am using SDK 1.3.1 Thanks in advance, George --http://www.appenginejs.org -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=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.
[google-appengine] Re: how large data can i use in App Caching and how long will it be cached?
App caching could last as little as a few minutes if your site is not used. In addition if multiple instances are run then only one instance will have the counter with the correct value. You should store your obj in the datastore and cache it in memcache. module level caching is really only useful for cacheable things for each instance, for example compiled templates. T On Feb 12, 3:34 pm, saintthor saintt...@gmail.com wrote: ### mymodule.py counter = LargeObj() ### myhandler.py import mymodule print Content-Type: text/plain print print My number: + str(mymodule.counter) if sizeof counter is greater than 1M, can it work? if there is no request for days, will counter still be cached? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: When is the Timeout bug going to get fixed?
On Feb 11, 3:08 pm, phtq pher...@typequick.com.au wrote: Looking at our error logs for the last 2 days, I would have to save the situation is improved with the advent of 1.3.1, but certainly not fixed. From the standpoint of our app., being forced to supply all our mp3, png, etc. files out of the database enormously increases our exposure to the timeout 'feature'. i definitely agree, serving static files from the datastore is far from optimal. the 1000 file limit is definitely something we're aware of and still actively thinking about, but i don't have any updates on that right now. having said that, if these truly are static files that don't change, i assume you're caching them in memcache and usually serving from there, as opposed to serving them from the datastore on every request...? also, if they're static files, the blobstore api would be much more appropriate than the datastore. have you tried it? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] JDO: Owned 1 to Many relationship between the objects of the same class
Hi guys, yesterday I was trying to model a simple forum comments. Just a comments which you can add more comments to. So, the approximation of the entity is like this: --- @PersistenceCapable (detachable = true, identityType = IdentityType.APPLICATION) public class CommentEntity { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private Key key; @Persistent private String category; @Persistent private String commentDate; @Persistent private String userName; @Persistent private String commentBody; @Persistent private ListCommentEntity children = new ArrayListCommentEntity(); getters/setters/etc. } DataNucleus enhancement goes ok, no errors in the console. Call of the pm.makePersistent() goes without any exceptions for such entity. BUT IT IS NOT PERSISTED. I found out that problem is in children property. And the problem is it's a list of objects of the same class as the parent entity. If I comment that property declaration the entity is persisted. Also if I change the type of the child entities to some new class (not extending the CommentEntity) it also gets persisted. So my suspicion is that JDO (or GAE JDO impl) does not allow child entities to be of the same class. Is it correct? Maybe I'm missing something essential? Please advice. Sincerely, Alex -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] HardDeadlineExceededError ExceptionInInitializerError
my gae app run well at localhost. however, the deployed version always got the HardDeadlineExceededError ExceptionInInitializerError. IMHO, it is not acceptable as ONLY me using it while the error occurred. Question (1) Will enable billing helps to eliminate the errors? (My answer is no - but just to confirm whether will it help.) (2) Any experience with Amazon Web Services (aws.amazon.com). Is it better? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: how large data can i use in App Caching and how long will it be cached?
see the demo in this page:http://code.google.com/intl/en/appengine/ docs/python/runtime.html#App_Caching ### mymodule.py counter = 0 def increment(): global counter counter += 1 return counter ### myhandler.py import mymodule print Content-Type: text/plain print print My number: + str(mymodule.increment()) do you mean if the site has not accessed for some minutes, counter will be reset to 0? On 2月12日, 下午4时24分, Tim Hoffman zutes...@gmail.com wrote: App caching could last as little as a few minutes if your site is not used. In addition if multiple instances are run then only one instance will have the counter with the correct value. You should store your obj in the datastore and cache it in memcache. module level caching is really only useful for cacheable things for each instance, for example compiled templates. T On Feb 12, 3:34 pm, saintthor saintt...@gmail.com wrote: ### mymodule.py counter = LargeObj() ### myhandler.py import mymodule print Content-Type: text/plain print print My number: + str(mymodule.counter) if sizeof counter is greater than 1M, can it work? if there is no request for days, will counter still be cached? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Server time issue - off by 2 days?
it's important to bear in mind that no guarantee of sequentiality is made for the automatic IDs, only that they'll be unique http://groups.google.com/group/google-appengine/t/2d0b9f20ac51560d On 11 February 2010 23:31, Peter Liu tinyee...@gmail.com wrote: We just found something very strange in our member table. ID/Name enabled registerDate id=7015 True 2010-02-11 23:15:02.359000 id=8001 True 2010-02-09 18:12:27.603000 The register date is the current time (when user register). If ID is suppose to be keep increasing, there's no way that the registerDate for 2nd entry be less than the 1st entry. Could it be a server time issue? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Keymaster to store your keys
I've since built a helper module: http://github.com/hackerdojo/hd-domain/blob/master/keymaster.py On Jan 23, 6:01 am, Barry Hunter barrybhun...@googlemail.com wrote: Do you have an example client implementation? I'm not totally sure how to use it. (but am looking though the source) 2010/1/22 Jeff Lindsay progr...@gmail.com: For a while I've been complaining App Engine needs Admin defined environment variables that can be used to store api keys, passwords, and other sensitive information you wouldn't want in your source code repository. For a while, I was making a keys.py file that I'd import that I'd keep out of the repository. Unfortunately, in rare cases I would switch machines and deploy, forgetting I didn't have keys.py and the app would break. So it's a pretty fragile solution. I had an idea to keep my keys in a hardcoded Scriptlet (scriptlets.org), but it wouldn't be very secure. So I expanded on the idea and built an app just for this purpose: http://thekeymaster.org Maybe some of you will find it useful. You'd first have to trust its encryption, which is done with the PyCrypt library. The source is also open so what's going on is all transparent. No doubt many of you will be afraid to use it. That's fine. I'm not. But I figure some of you might find it useful. Cheers! Jeff Lindsay -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group athttp://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] about clearing the datastore
My total datastore has been reached 77% and I'd like to clear some old data. How can I remove a whole Model in GAE? And how can I delete huge amount of data? I'm now using the task queue to delete. Wish someone can give me some better way. Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: HardDeadlineExceededError ExceptionInInitializerError
1. No, the request deadline isn't affected by billing. 2. Yes, if you need to run processes for longer than 30 seconds, EC2 is probably what you want. By the way, if you're hitting the hard deadline, this is almost always a sign that you're catching the initial DeadlineExceeded exception and then ignoring it. You shouldn't do that. On Feb 12, 4:12 am, gaenoob spellw...@gmail.com wrote: my gae app run well at localhost. however, the deployed version always got the HardDeadlineExceededError ExceptionInInitializerError. IMHO, it is not acceptable as ONLY me using it while the error occurred. Question (1) Will enable billing helps to eliminate the errors? (My answer is no - but just to confirm whether will it help.) (2) Any experience with Amazon Web Services (aws.amazon.com). Is it better? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] need help on creating sub domain
just visit my.xyz.appspot.com...it is automatically equal to www.xyz.appspot.com On Wed, Feb 10, 2010 at 2:56 PM, technut worldh...@gmail.com wrote: Hi, How do i configure sub domain in apps engine. my existing domain is : www.xyz.appspot.com want to include subdomain : my.xyz.appspot.com Its appreciate if any one can look into it. Thanks Biswajit -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Verification email not received when adding new developer
It still isn't working. Can someone from Google send me a P.M. ? Thanks. On Feb 11, 1:10 pm, A1programmer derrick.simp...@gmail.com wrote: Using Google Apps (specifically email), I have set up a new account contact. I can send/receive email to other (non google/gmail) email addresses, but I cannot receive the the email to verify the new user as a Google App Engine Developer. I've tried numerous times, and the email is not being received. Any help would be greatly appreciated! -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: get_by_key_name vs fetch performance
On Feb 11, 11:31 am, Waldemar Kornewald wkornew...@gmail.com wrote: Will every query that works directly on a (composite) datastore index be almost as fast as db.get()? as a general rule, no. queries that scan indices will always have to do at least two serial disk seeks, one to read the index and one to look up the entities the index rows point to. gets only need a single disk seek, since they have the entities' primary key. having said that, one vs two disk seeks isn't always the dominating factor for latency. instead, python protocol buffer decoding might dominate, or the bigtable tablet server RPCs might, e.g. if you're fetching many entities from many different tablet servers. (we'll issue a lot of RPCs in parallel on your behalf, but not arbitrarily many.) note that this only applies to queries that use an index. kindless ancestor queries and queries on __key__, for example, scan the entities table directly, so they'll only need a single disk seek. Why don't you also increase the number of retries for run_in_transaction? agreed, we probably will, hopefully as soon as 1.3.2. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Upload and download files (Blob)
If I save a file as a Blob (let's say i have a class with a key,String filename and Blob data) how do i restore the file and send it to the client ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] eclipse
i want to create new site using GData.what option i need to go. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Connection Time Out - Could not deploy App in App Engine!
Unable to update: java.net.ConnectException: Connection timed out: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java: 195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.Socket.connect(Socket.java:519) at java.net.Socket.connect(Socket.java:469) at sun.net.NetworkClient.doConnect(NetworkClient.java:157) at sun.net.www.http.HttpClient.openServer(HttpClient.java:382) at sun.net.www.http.HttpClient.openServer(HttpClient.java:509) at sun.net.www.http.HttpClient.init(HttpClient.java:231) at sun.net.www.http.HttpClient.New(HttpClient.java:304) at sun.net.www.http.HttpClient.New(HttpClient.java:316) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java: 817) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java: 769) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java: 694) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java: 861) at com.google.appengine.tools.admin.ServerConnection.connect(ServerConnection.java: 333) at com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java: 127) at com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java: 81) at com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java: 522) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersionUpload.java: 339) at com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java: 111) at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 56) at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java: 271) at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java: 148) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java: 38) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Application seems to restart after arbitrary amount of time...?
Hi all, I've created a very simple application as a test for a bigger application I'm thinking of building on GAE. Right now, it mostly contains only two servlets and a single cron job. One servlet is loaded on init (and logs an init message), and the other one is called every minute by the cron job (and also logs a message). My issue is that I'm watching the logs and I'm noticing that my applications context is reloaded after an arbitrary amount of time. To be more precise, here is an example of what I'd see in the logs... [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. [INFO] Servlet called 3 times. ... [INFO] Servlet called 79 times. [INFO] Servlet called 80 times. [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. So, as you can see, the application starts and the init servlet is loaded (as expected) and I get the Application initializing info log message. After that, cron calls the other servlet every minute, and it posts another log message. However, after a seemingly random amount of time, in this case 80 minutes, the application context reloads which makes me assume that my entire application restarted. It happens at different intervals each time, anywhere from half an hour to a few hours. And, I never get any error messages in my log. Can someone help me understand this? Thanks in advance Charles -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Server time issue - off by 2 days?
The ID is only granted to be unique and not increasing. On Fri, Feb 12, 2010 at 12:31 AM, Peter Liu tinyee...@gmail.com wrote: We just found something very strange in our member table. ID/Name enabled registerDate id=7015 True2010-02-11 23:15:02.359000 id=8001 True2010-02-09 18:12:27.603000 The register date is the current time (when user register). If ID is suppose to be keep increasing, there's no way that the registerDate for 2nd entry be less than the 1st entry. Could it be a server time issue? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Problems with my AppEngine Account
Hello, I have a serious problem with my app engine account. Seems to be related to rights management issues or login problems. I added one application without problems, I could upload it using appcfg.sh update But now I made some changes at the domain and added the application to Google Apps. First I got redirect errors, when accessing the Appengine portal - these problems somehow got solved. The app works as expected,it is now available at www.exclamation.de. But: I am not allowed to update the application with further versions. Output: 403 Forbidden You do not have permission to modify this app (app_id=u'exclam123'). And: If I add a new application, I get the message, that I don't have access to the new application, and it does not show up in the applications overview. But the count of available applications (10 at account creation) was decreased by 1. I am writing from my second email address, as the MX records of my primary email address is currently changing to google mail. Unfortunately I already wrote the group admin of this group, because I could not find any contact information for server problems. Is anyone in this group able to help me with my problems? The account is gk(at)exclamation.de Or can anyone give me a contact info of the google administration? thank you very much, Guido -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Can I use urlfetch to do a multipart post?
You just submit the encoded multipart form and it will be OK. you can see this code: http://code.google.com/p/python-twitpic/ On Sat, Feb 13, 2010 at 12:54 AM, Join findhe...@gmail.com wrote: Hi Team, I'm making an app to implement following design: binary+text - browser - app engine(my app) - 3rd party server My problem is in the last step,the 3rd party server requires binary +text being posted as multipart form data. How can I simulate this with app engine? Any information would be appreciated. Thanks. Join -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Select columns
Thanks a bunch Tim for your inputs, My rationale for adding the date to the appstore generated key is to make pagination easier. I would do pagination on the key and not add a separate column for that. (Pagination by date alone will also not solve my problem since it can have duplicates and hence couple it with the key) I understand fetching by keys is much faster. Though I don't see a scenario where I would have to do that now I would like to architect my app where that would be possible. However, I do not have anything unique in my record with which I can set the key. It just contains city name, locality details and a series of other fields all of which could have duplicates. Any ideas as to how I can generate unique ids from these or any general pointers towards generating unique Ids from data where the data itself does not have a unique field? Manny On Thu, Feb 11, 2010 at 4:49 PM, Tim Hoffman zutes...@gmail.com wrote: Hi Manny Do you really want to do that for a key. One if the big advantages of creating your own keys is being able to explicitly get entities by key (1 or more with db.get(list_of_keys) which is much quicker than a gql or filter. Making your keys include dates mean you will be unlikely to guess/know what the keys are in advance. This of course may not be useful for what you are doing, but worth keeping in mind. Rgds T On Feb 11, 2:12 pm, Manny S manny.m...@gmail.com wrote: Hi Ikai, I did read the documentation and now I have my data structures in place. One thing I wanted to do and that was not clear from my previous post was to append a app generated string (not unique) as a prefix to a datastore generated key. For instance, I want to generate a key that has the date (of record creation) as a prefix to the datastore generated unique key. Is there a way to do this? I do not want my application to generate unique Ids. From reading through the literature so far, I am guessing that will not be possible since the datastore keys are generated only at the time when the objects are being made persistent. Manny On Wed, Feb 10, 2010 at 3:30 AM, Ikai L (Google) ika...@google.com wrote: Have you read our documentation on KeyFactory? http://code.google.com/appengine/docs/java/datastore/relationships.html http://code.google.com/appengine/docs/java/datastore/relationships.html I'd try to understand what's going on there. It sounds like you're doing it the right way, but it's up to you to benchmark and find the best approach for what works for you. The usage characteristics of your application should determine the way your store your data. On Wed, Feb 3, 2010 at 3:42 AM, Manny S manny.m...@gmail.com wrote: Ikai, Based on your inputs I created two data classes that have a unidirectional one-to-one relationship Now, I have two data classes simpledata and detailscol. simpledata contains fields A, B, C (and a Key field) detailscol just contains field D. simpledata imports detailscol that contains field D (and a Key field). It also contains an accessor for the detailscol. Code: simpledata sdata = new simpledata(A,B,C); sdata.setKey(null); detailscol obj = new detailscol(D); sdata.setD(obj); The keys are generated by the application and then I make the data persistent. Now, I display just the data in simpledata and if the user clicks on a details link I get the data stored in detailscol To get to that data I just do detailscol d = sdata.getDetails(); Two questions: 1) Is this the right approach? 2) If I want to get the child data using just the parent keyhow do I go about it? E.g, user clicks details and I use some AJAX to redirect to a different servlet with just parent key as a parameter (since I don't access the child object yet). I get the parent key using KeyFactory.keyToString(sdata.getKey()); Now, that I have the parent's key should I do a getObjectbyID on the parent data again using this and then get the child using the accessor method or is there a direct way to construct the child key and get to the child data. Due to the nature of my application I would like to have the key generated automatically (using setKey(null)). Apologies for the confusion in advance :) Manny On Sat, Jan 30, 2010 at 12:16 AM, Ikai L (Google) ika...@google.com wrote: Hi Manny, A few things to first remember - App Engine's datastore is not a database, but a distributed key value store with additional features. Thus, we should be careful not to frame our thinking in terms of RDBMS schemas. For this reason, I like to avoid using database terminology that can confound the design process like table or column. App Engine stores objects serialized (entities) and indexes on the values. It'd be similar to an approach of creating a MySQL table with a String ID
Re: [google-appengine] Upload and download files (Blob)
http://code.google.com/appengine/docs/python/blobstore/overview.html On Sat, Feb 13, 2010 at 12:58 AM, Ice13ill andrei.fifi...@gmail.com wrote: If I save a file as a Blob (let's say i have a class with a key,String filename and Blob data) how do i restore the file and send it to the client ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Upload and download files (Blob)
So that is the only way ? I saw that is experimental... that's still ok right ? On Feb 12, 7:01 pm, kang areyouloo...@gmail.com wrote: http://code.google.com/appengine/docs/python/blobstore/overview.html On Sat, Feb 13, 2010 at 12:58 AM, Ice13ill andrei.fifi...@gmail.com wrote: If I save a file as a Blob (let's say i have a class with a key,String filename and Blob data) how do i restore the file and send it to the client ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: When is the Timeout bug going to get fixed?
On Feb 12, 8:33 am, ryan ryanb+appeng...@google.com wrote: On Feb 11, 3:08 pm, phtq pher...@typequick.com.au wrote: Looking at our error logs for the last 2 days, I would have to save the situation is improved with the advent of 1.3.1, but certainly not fixed. From the standpoint of our app., being forced to supply all our mp3, png, etc. files out of the database enormously increases our exposure to the timeout 'feature'. i definitely agree, serving static files from the datastore is far from optimal. the 1000 file limit is definitely something we're aware of and still actively thinking about, but i don't have any updates on that right now. http://highscalability.com/blog/2010/1/22/how-buddypoke-scales-on-facebook-using-google-app-engine.html Most of the cost of BuddyPoke is in content delivery. The main app for BuddyPoke is a flash file must be served. These costs are much higher than the costs for running the actual application. Dave is investigating Rackspace for file serving. GAE has a relatively high failure rate for accessing content, which is acceptable when returning avatars, but is not OK for loading up the initial image. ie. the failure rate for static file serving on App Engine is so high that BuddyPoke has to use an expensive content delivery network to serve it's flash app. :-( also, if they're static files, the blobstore api would be much more appropriate than the datastore. have you tried it? Is the blobstore API faster/more-reliable than serving from the db/ memcache? Obviously, if your files are 1MB then the blobstore is your only option. If you have a few static files then static file serving is an option. But if you have dynamic files 1MB there are now two options: db/memcache or blobstore. Which is better, and why? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Upload and download files (Blob)
Its not the only way http://code.google.com/appengine/articles/images.html As for being experimental, its not really any more experimental that the whole App Engine - use it would probably be fine, just watch when new releases come out incase some syntax changes - unlikly though IMHO. On 12 February 2010 17:07, Ice13ill andrei.fifi...@gmail.com wrote: So that is the only way ? I saw that is experimental... that's still ok right ? On Feb 12, 7:01 pm, kang areyouloo...@gmail.com wrote: http://code.google.com/appengine/docs/python/blobstore/overview.html On Sat, Feb 13, 2010 at 12:58 AM, Ice13ill andrei.fifi...@gmail.com wrote: If I save a file as a Blob (let's say i have a class with a key,String filename and Blob data) how do i restore the file and send it to the client ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] about clearing the datastore
Unfortunately, we don't have mass deletion capability yet. The datastore isn't like a relational database where we can just drop a table. Entities are schemaless and are indexed, so a mass deletion would need to traverse the EntitiesByKind index: http://code.google.com/appengine/articles/storage_breakdown.html#anc-entitiestable http://code.google.com/appengine/articles/storage_breakdown.html#anc-entitiestableAt some point, we may offer a delete better tools for managing a mass delete, though it would likely be implemented on top of our Task Queue infrastructure since it wouldn't be a trivial operation. Can you add/find the issue in our issues tracker and star it? http://code.google.com/p/googleappengine/issues On Fri, Feb 12, 2010 at 6:49 AM, lookon areyouloo...@gmail.com wrote: My total datastore has been reached 77% and I'd like to clear some old data. How can I remove a whole Model in GAE? And how can I delete huge amount of data? I'm now using the task queue to delete. Wish someone can give me some better way. Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Verification email not received when adding new developer
I'm a bit confused about your issue. Are you having problems adding a new developer to your App Engine app? On Fri, Feb 12, 2010 at 8:06 AM, A1programmer derrick.simp...@gmail.comwrote: It still isn't working. Can someone from Google send me a P.M. ? Thanks. On Feb 11, 1:10 pm, A1programmer derrick.simp...@gmail.com wrote: Using Google Apps (specifically email), I have set up a new account contact. I can send/receive email to other (non google/gmail) email addresses, but I cannot receive the the email to verify the new user as a Google App Engine Developer. I've tried numerous times, and the email is not being received. Any help would be greatly appreciated! -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: App Engine SDK 1.3.1 is out!
On Feb 12, 4:09 pm, ryan ryanb+appeng...@google.com wrote: On Feb 11, 6:53 am, Brandon Thomson gra...@gmail.com wrote: The downside of extra latency for get()s is it means users will very occasionally see the spinning beach ball for a long time instead of an error page after 4 seconds in non-ajax applications. It's not a big deal for AJAX handlers because we can choose a timeout and control the experience client-side but for guys with a lot of non-AJAX html pages it could be frustrating. very good point. happily, we're planning to expose a deadline parameter for most datastore calls soon, maybe as soon as 1.3.2. that should give you the flexibility to control which calls need to return fast and which can afford to run longer. Are we charged for failed API calls? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: When is the Timeout bug going to get fixed?
I actually have some familiarity with BuddyPoke. Regarding static file serving failures: they're actually very low, but they are still higher than a traditional CDN provider's. Dave's entire application IS a Flash application, so if this doesn't serve, his application won't work. We're working to improve this, but we can understand that there are parts of his business needs that we can't meet yet. On Fri, Feb 12, 2010 at 9:42 AM, Stephen sdea...@gmail.com wrote: On Feb 12, 8:33 am, ryan ryanb+appeng...@google.comryanb%2bappeng...@google.com wrote: On Feb 11, 3:08 pm, phtq pher...@typequick.com.au wrote: Looking at our error logs for the last 2 days, I would have to save the situation is improved with the advent of 1.3.1, but certainly not fixed. From the standpoint of our app., being forced to supply all our mp3, png, etc. files out of the database enormously increases our exposure to the timeout 'feature'. i definitely agree, serving static files from the datastore is far from optimal. the 1000 file limit is definitely something we're aware of and still actively thinking about, but i don't have any updates on that right now. http://highscalability.com/blog/2010/1/22/how-buddypoke-scales-on-facebook-using-google-app-engine.html Most of the cost of BuddyPoke is in content delivery. The main app for BuddyPoke is a flash file must be served. These costs are much higher than the costs for running the actual application. Dave is investigating Rackspace for file serving. GAE has a relatively high failure rate for accessing content, which is acceptable when returning avatars, but is not OK for loading up the initial image. ie. the failure rate for static file serving on App Engine is so high that BuddyPoke has to use an expensive content delivery network to serve it's flash app. :-( also, if they're static files, the blobstore api would be much more appropriate than the datastore. have you tried it? Is the blobstore API faster/more-reliable than serving from the db/ memcache? Obviously, if your files are 1MB then the blobstore is your only option. If you have a few static files then static file serving is an option. But if you have dynamic files 1MB there are now two options: db/memcache or blobstore. Which is better, and why? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Server time issue - off by 2 days?
Thanks. That explains it. On Feb 12, 12:02 am, Stefano Ciccarelli sciccare...@gmail.com wrote: The ID is only granted to be unique and not increasing. On Fri, Feb 12, 2010 at 12:31 AM, Peter Liu tinyee...@gmail.com wrote: We just found something very strange in our member table. ID/Name enabled registerDate id=7015 True 2010-02-11 23:15:02.359000 id=8001 True 2010-02-09 18:12:27.603000 The register date is the current time (when user register). If ID is suppose to be keep increasing, there's no way that the registerDate for 2nd entry be less than the 1st entry. Could it be a server time issue? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] appstats intermittent error
Has anyone else had intermittent problems with appengine_config.py and the new stats framework? I'm getting this error intermittently, both locally and online: appengine_config.py, line 159, in appstats_should_record if config.FILTER_LIST: NameError: global name 'config' is not defined It looks like this is a better syntax for that if: if globals().has_key('config') and config.FILTER_LIST: But I dont know why their own sample code would break It appears config is supposed to be defined globally somewhere, but it doesn't always happen? I am using Django, and have this in settings.py: MIDDLEWARE_CLASSES = ( 'google.appengine.ext.appstats.recording.AppStatsDjangoMiddleware', Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: JDO: Owned 1 to Many relationship between the objects of the same class
Hi Alex, This is a known issue. Check out this thread for discussion + workarounds: http://groups.google.com/group/google-appengine-java/browse_thread/thread/3affdf1441f864b6 Marc On Feb 12, 3:55 am, Alexander Arendar alexander.aren...@gmail.com wrote: Hi guys, yesterday I was trying to model a simple forum comments. Just a comments which you can add more comments to. So, the approximation of the entity is like this: --- @PersistenceCapable (detachable = true, identityType = IdentityType.APPLICATION) public class CommentEntity { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private Key key; @Persistent private String category; @Persistent private String commentDate; @Persistent private String userName; @Persistent private String commentBody; @Persistent private ListCommentEntity children = new ArrayListCommentEntity(); getters/setters/etc. } DataNucleus enhancement goes ok, no errors in the console. Call of the pm.makePersistent() goes without any exceptions for such entity. BUT IT IS NOT PERSISTED. I found out that problem is in children property. And the problem is it's a list of objects of the same class as the parent entity. If I comment that property declaration the entity is persisted. Also if I change the type of the child entities to some new class (not extending the CommentEntity) it also gets persisted. So my suspicion is that JDO (or GAE JDO impl) does not allow child entities to be of the same class. Is it correct? Maybe I'm missing something essential? Please advice. Sincerely, Alex -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Verification email not received when adding new developer
Right. The email containing the verification link isn't being sent to the address. I've resorted to using the primary admin address to send email, but would like to use cont...@domain. As I said earlier, I have sent/received to third party addresses, using the contact user, without problems. On Feb 12, 12:54 pm, Ikai L (Google) ika...@google.com wrote: I'm a bit confused about your issue. Are you having problems adding a new developer to your App Engine app? On Fri, Feb 12, 2010 at 8:06 AM, A1programmer derrick.simp...@gmail.comwrote: It still isn't working. Can someone from Google send me a P.M. ? Thanks. On Feb 11, 1:10 pm, A1programmer derrick.simp...@gmail.com wrote: Using Google Apps (specifically email), I have set up a new account contact. I can send/receive email to other (non google/gmail) email addresses, but I cannot receive the the email to verify the new user as a Google App Engine Developer. I've tried numerous times, and the email is not being received. Any help would be greatly appreciated! -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Why i don't use Google App Engine... and don't recomend it to you
Google could provide decent service without making technical compromises. The only tradeoff is they'd have to charge a little more. That's a tradeoff I'd be willing to make. It can't be that expensive, because Rackspace does it, and their cloud prices are right in line with the rest. On Fri, Feb 12, 2010 at 1:15 AM, Tim Hoffman zutes...@gmail.com wrote: But then I have to manage systems, scalablity, load balancing. Everything is a trade off ;-) T On Feb 12, 12:15 pm, Dennis Peterson dennisbpeter...@gmail.com wrote: It's not google's fault, but on the other hand, deploy at Rackspace and you can call them on the phone and sort things out. On Thu, Feb 11, 2010 at 10:19 PM, Tim Hoffman zutes...@gmail.com wrote: I access appengine from multiple systems' (access to app engineis not tied to a O/S install) Looks like you haven't kept track of you gmail accounts. Hardly googles or appengines fault. T On Feb 12, 3:22 am, ai_...@live.ru ai_...@live.ru wrote: Well it's a short story. I register an account on App Engine. I made a 2-3 sites. Everithing was fine and i was happy :) But one time i reinstall my operating system (you know what system nead to be reainstalled :) ) i get strange error. I coldn't loggin to my account. I search for reasons, make post in tech support but i get nothing. NO ONE from tech support have contact with me. NO ONE!!! But one day i read some smart artice and i finally loged in. But then i faced with other bug. When i try to create new site, i get this message You have no right to work wot this site. After that i didn't see site in my sites list and lose it. So i couldn control him and even edit... I spend 6 months at Google App Engine to get nothing. So... GOOGLE APP ENGINE IS VERRY BAD SERVISE... DON'T USE IT... SAVE YOUR TIME.. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com . To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com google-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%252bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: appstats intermittent error
I dumped appengine_config.py, and it seems to be fine now. Perhaps something with my sys.path. Strange that the problem was intermittent. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Why i don't use Google App Engine... and don't recomend it to you
Google provides a pretty good service here, with a few trade offs: 1) If you format your hard-drive, you need to back up your source code first 2) You have to remember your login id On Feb 11, 2:22 pm, ai_...@live.ru ai_...@live.ru wrote: Well it's a short story. I register an account on App Engine. I made a 2-3 sites. Everithing was fine and i was happy :) But one time i reinstall my operating system (you know what system nead to be reainstalled :) ) i get strange error. I coldn't loggin to my account. I search for reasons, make post in tech support but i get nothing. NO ONE from tech support have contact with me. NO ONE!!! But one day i read some smart artice and i finally loged in. But then i faced with other bug. When i try to create new site, i get this message You have no right to work wot this site. After that i didn't see site in my sites list and lose it. So i couldn control him and even edit... I spend 6 months at Google App Engine to get nothing. So... GOOGLE APP ENGINE IS VERRY BAD SERVISE... DON'T USE IT... SAVE YOUR TIME.. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] intermittent template tags errors
Intermittently (1-2 times per week), I get an error where my custom template tags don't load. Where I have a register.filter('filtername', filtername), I get the error: TemplateSyntaxError: Invalid filter: 'filtername' Where I have @register.inclusion_tag('sometemplate.html'), I get the error AttributeError: 'InclusionNode' object has no attribute 'must_be_first' Any ideas? Very hard to diagnose when they are intermittent. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Why i don't use Google App Engine... and don't recomend it to you
1) If you format your hard-drive, you need to back up your source code first s/If you format your hard-drive, // -- Best Regards Piotr Jaroszyński -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Application seems to restart after arbitrary amount of time...?
Charles, the app instance can be unloaded at any time and a new one will initialize to handle the next incoming request. there can be up to 30 at once. it is by design, not an error. On Feb 12, 12:20 am, Charles char...@whoischarles.com wrote: Hi all, I've created a very simple application as a test for a bigger application I'm thinking of building on GAE. Right now, it mostly contains only two servlets and a single cron job. One servlet is loaded on init (and logs an init message), and the other one is called every minute by the cron job (and also logs a message). My issue is that I'm watching the logs and I'm noticing that my applications context is reloaded after an arbitrary amount of time. To be more precise, here is an example of what I'd see in the logs... [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. [INFO] Servlet called 3 times. ... [INFO] Servlet called 79 times. [INFO] Servlet called 80 times. [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. So, as you can see, the application starts and the init servlet is loaded (as expected) and I get the Application initializing info log message. After that, cron calls the other servlet every minute, and it posts another log message. However, after a seemingly random amount of time, in this case 80 minutes, the application context reloads which makes me assume that my entire application restarted. It happens at different intervals each time, anywhere from half an hour to a few hours. And, I never get any error messages in my log. Can someone help me understand this? Thanks in advance Charles -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Lucene/Compass
I was curious if anybody is using Lucene and Compass and how well it works in the app engine. I've seen some other posts indicating that it actually manages to handle quite a bit of data, but I was curious if anybody else out there could attest to how well it works. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Cold start and googlebot crawl rate
Hi guys, Can someone share their experience with getting google to index your site? Recently I added my site to various search engine, including Google. In the webmaster tool setting, I see this: Your site has been assigned special crawl rate settings. You will not be able to change the crawl rate. This doesn't sound right so I search on support and someone suggest that if the page load time is slow, google will crawl is slowly. I check the diagnostic section and see: HighAverage Low Time spent downloading a page (in milliseconds) 5,800 1,898 139 Average of 1.898 seems pretty slow (most likely due to cold start). My question: 1. Do my site have special rate because of slow response time? 2. Maybe all apps on GAE have this special rate? 3. What's the rate that your guys are seeing? I am about to join the wagon and keep pinging the server. Please advice. Thanks. Peter -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Application seems to restart after arbitrary amount of time...?
Hi Brandon, Thanks for the reply. Just from a bit more research, this seems to be related to loading requests (http://code.google.com/appengine/kb/ java.html#What_Is_A_Loading_Request) and their frequency. From the FAQ, it seems like with apps with minimal traffic, or test traffic, VMs seem to be recycled during inactivity. When subsequent requests hit your app after your VM has been handed off, GAE has to spin up a new JVM (a loading request) which re-initializes the entire context (and also eats up significant CPU time). Anyways, kinda sucks that this is how it works, but I can understand why they'd want to do that. And, this only really affects apps in testing or production apps with little traffic. When we get real traffic, *hopefully* this becomes a non-issue. Also, it looks like they're playing around with the idea of being able to pay to reserve a dedicated JVM (http://code.google.com/appengine/kb/ java.html#Can_I_Pay_To_Reserve_My_JVM). This would be a good solution as well. Charles On Feb 12, 12:31 pm, Brandon Thomson gra...@gmail.com wrote: Charles, the app instance can be unloaded at any time and a new one will initialize to handle the next incoming request. there can be up to 30 at once. it is by design, not an error. On Feb 12, 12:20 am, Charles char...@whoischarles.com wrote: Hi all, I've created a very simple application as a test for a bigger application I'm thinking of building on GAE. Right now, it mostly contains only two servlets and a single cron job. One servlet is loaded on init (and logs an init message), and the other one is called every minute by the cron job (and also logs a message). My issue is that I'm watching the logs and I'm noticing that my applications context is reloaded after an arbitrary amount of time. To be more precise, here is an example of what I'd see in the logs... [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. [INFO] Servlet called 3 times. ... [INFO] Servlet called 79 times. [INFO] Servlet called 80 times. [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. So, as you can see, the application starts and the init servlet is loaded (as expected) and I get the Application initializing info log message. After that, cron calls the other servlet every minute, and it posts another log message. However, after a seemingly random amount of time, in this case 80 minutes, the application context reloads which makes me assume that my entire application restarted. It happens at different intervals each time, anywhere from half an hour to a few hours. And, I never get any error messages in my log. Can someone help me understand this? Thanks in advance Charles -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Select columns
Hi Manny Understood. You know you can let the system generate the entity identifiers for you, and pagination will just work (by __key__) any way. So you don't have to the key_name or id at all if you don't care what the key is. Rgds T On Feb 13, 1:00 am, Manny S manny.m...@gmail.com wrote: Thanks a bunch Tim for your inputs, My rationale for adding the date to the appstore generated key is to make pagination easier. I would do pagination on the key and not add a separate column for that. (Pagination by date alone will also not solve my problem since it can have duplicates and hence couple it with the key) I understand fetching by keys is much faster. Though I don't see a scenario where I would have to do that now I would like to architect my app where that would be possible. However, I do not have anything unique in my record with which I can set the key. It just contains city name, locality details and a series of other fields all of which could have duplicates. Any ideas as to how I can generate unique ids from these or any general pointers towards generating unique Ids from data where the data itself does not have a unique field? Manny On Thu, Feb 11, 2010 at 4:49 PM, Tim Hoffman zutes...@gmail.com wrote: Hi Manny Do you really want to do that for a key. One if the big advantages of creating your own keys is being able to explicitly get entities by key (1 or more with db.get(list_of_keys) which is much quicker than a gql or filter. Making your keys include dates mean you will be unlikely to guess/know what the keys are in advance. This of course may not be useful for what you are doing, but worth keeping in mind. Rgds T On Feb 11, 2:12 pm, Manny S manny.m...@gmail.com wrote: Hi Ikai, I did read the documentation and now I have my data structures in place. One thing I wanted to do and that was not clear from my previous post was to append a app generated string (not unique) as a prefix to a datastore generated key. For instance, I want to generate a key that has the date (of record creation) as a prefix to the datastore generated unique key. Is there a way to do this? I do not want my application to generate unique Ids. From reading through the literature so far, I am guessing that will not be possible since the datastore keys are generated only at the time when the objects are being made persistent. Manny On Wed, Feb 10, 2010 at 3:30 AM, Ikai L (Google) ika...@google.com wrote: Have you read our documentation on KeyFactory? http://code.google.com/appengine/docs/java/datastore/relationships.html http://code.google.com/appengine/docs/java/datastore/relationships.html I'd try to understand what's going on there. It sounds like you're doing it the right way, but it's up to you to benchmark and find the best approach for what works for you. The usage characteristics of your application should determine the way your store your data. On Wed, Feb 3, 2010 at 3:42 AM, Manny S manny.m...@gmail.com wrote: Ikai, Based on your inputs I created two data classes that have a unidirectional one-to-one relationship Now, I have two data classes simpledata and detailscol. simpledata contains fields A, B, C (and a Key field) detailscol just contains field D. simpledata imports detailscol that contains field D (and a Key field). It also contains an accessor for the detailscol. Code: simpledata sdata = new simpledata(A,B,C); sdata.setKey(null); detailscol obj = new detailscol(D); sdata.setD(obj); The keys are generated by the application and then I make the data persistent. Now, I display just the data in simpledata and if the user clicks on a details link I get the data stored in detailscol To get to that data I just do detailscol d = sdata.getDetails(); Two questions: 1) Is this the right approach? 2) If I want to get the child data using just the parent keyhow do I go about it? E.g, user clicks details and I use some AJAX to redirect to a different servlet with just parent key as a parameter (since I don't access the child object yet). I get the parent key using KeyFactory.keyToString(sdata.getKey()); Now, that I have the parent's key should I do a getObjectbyID on the parent data again using this and then get the child using the accessor method or is there a direct way to construct the child key and get to the child data. Due to the nature of my application I would like to have the key generated automatically (using setKey(null)). Apologies for the confusion in advance :) Manny On Sat, Jan 30, 2010 at 12:16 AM, Ikai L (Google) ika...@google.com wrote: Hi Manny, A few things to first remember - App Engine's datastore is not a database, but a distributed key value store with additional
[google-appengine] Re: Application seems to restart after arbitrary amount of time...?
Hi You should never depend on any specific instance hanging around just the same as you cannot depend on anything in memcache hanging around. Rgds T On Feb 13, 12:29 pm, Charles char...@whoischarles.com wrote: Hi Brandon, Thanks for the reply. Just from a bit more research, this seems to be related to loading requests (http://code.google.com/appengine/kb/ java.html#What_Is_A_Loading_Request) and their frequency. From the FAQ, it seems like with apps with minimal traffic, or test traffic, VMs seem to be recycled during inactivity. When subsequent requests hit your app after your VM has been handed off, GAE has to spin up a new JVM (a loading request) which re-initializes the entire context (and also eats up significant CPU time). Anyways, kinda sucks that this is how it works, but I can understand why they'd want to do that. And, this only really affects apps in testing or production apps with little traffic. When we get real traffic, *hopefully* this becomes a non-issue. Also, it looks like they're playing around with the idea of being able to pay to reserve a dedicated JVM (http://code.google.com/appengine/kb/ java.html#Can_I_Pay_To_Reserve_My_JVM). This would be a good solution as well. Charles On Feb 12, 12:31 pm, Brandon Thomson gra...@gmail.com wrote: Charles, the app instance can be unloaded at any time and a new one will initialize to handle the next incoming request. there can be up to 30 at once. it is by design, not an error. On Feb 12, 12:20 am, Charles char...@whoischarles.com wrote: Hi all, I've created a very simple application as a test for a bigger application I'm thinking of building on GAE. Right now, it mostly contains only two servlets and a single cron job. One servlet is loaded on init (and logs an init message), and the other one is called every minute by the cron job (and also logs a message). My issue is that I'm watching the logs and I'm noticing that my applications context is reloaded after an arbitrary amount of time. To be more precise, here is an example of what I'd see in the logs... [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. [INFO] Servlet called 3 times. ... [INFO] Servlet called 79 times. [INFO] Servlet called 80 times. [INFO] Application initializing... [INFO] Servlet called 1 times. [INFO] Servlet called 2 times. So, as you can see, the application starts and the init servlet is loaded (as expected) and I get the Application initializing info log message. After that, cron calls the other servlet every minute, and it posts another log message. However, after a seemingly random amount of time, in this case 80 minutes, the application context reloads which makes me assume that my entire application restarted. It happens at different intervals each time, anywhere from half an hour to a few hours. And, I never get any error messages in my log. Can someone help me understand this? Thanks in advance Charles -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.