[appengine-java] Blobstore - delete record from apps console
I am try to use the sample mediastore to upload blob data...mediastore works fine. However, when I try to delete the data from application console, I could not. is it a problem in apps console? -- 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: Accessing GMail Inbox
AFAIK from GAW you can only communicate on port 80 and 443 (hhttp and https). And you must use the Url Fetch service. fabrizio On Dec 20, 5:36 pm, Pion onlee2...@gmail.com wrote: Thehttp://java.sun.com/products/javamail/FAQ.html#gmailshows how to access Gmail Inbox using JavaMail. //String host = imap.gmail.com; String host = pop.gmail.com; String username = user; String password = passwd; // ... //Store store = session.getStore(imaps); Store store = session.getStore(pop3s); store.connect(host, username, password); // ... I tried the above code and deployed it on GAE. I received the following log: Unable to locate provider for protocol: pop3s I switched to 'Store store = session.getStore(imaps);', It gave me similar error. Unable to locate provider for protocol: imaps I am using GAE 1.3.0. Please advise if this is even possible. If yes, what did I do wrong? Thanks in advance for your help. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Blobstore - delete record from apps console
I can delete the blob data from mediastore apps, but I want to delete it from apps console, Blob Viewer. It should be no dependency on it, I had manually delete my record in Datastore Viewer. Why still could not delete it from Blob Viewer? -- 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] wrong redirection to google sites
Hie I have a deployed version of my app as: http://1.latest.sakshumweb.appspot.com but when i click on it: it takes me to somewhere else like: http://sites.google.com/a/sakshum.com/www/ui/page/index.html Any idea why? I am hoping to see my site instead. This was working fine few days back and all of a sudden it started happening. I haven't made any changes on my side. Please help Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com -- 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] Wanna share a forum for GAE developers i made
Hi there, I usually write code to anwer something or to make a question in the list, but it is difficult to read because it is no formatted and the syntax isn,t highlight. So, i wanna share with the community a forum for GAE developers, where the main feature is that posts have java syntax highlighting, also files can be uploaded and screenshots too. www.gaeforums.com Enjoy Regards, NM -- 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] How to architect the following persistence problem
I am new to the persistence model of the Google app engine and have a question on how to best model/architect the following scenario. I would really appreciate your feedback! The Partner class can 0-n roles implemented (Teacher, Student, Employee, ...). Partner - Key - Name - RoleList Role abstract - Key - RoleType - RoleDescription - Partner Employee extends Role - Salary Teacher extends Role - Classes Student extends Role - Grades I would like to avoid hard coded relationships in the partner class (meaning having properties pointing to every available role). In addition I need to be able to query the different roles, but also need to be able to show all implemented roles of a particular partner. What would be the best model to architect the mentioned scenario? Is there an option in extending Role and having a list of implemented roles in the Partner object? Does this all make sense or would you re-architect this whole problem differently? Would you denormalize and embed the Partner class in each of the role classes? Thanks, Mirko There are different options I see so far on how to and I would like to store the different facets -- 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] Help with reading file
Hello, I have a simple application to read from a file and carry out operations on it. However, when deployed to appspot, it keeps reading the file as null and doesn't execute. gr17.tsp is a text file containing a travelingsalesman problem. It works fine on localhost so i really don't see what's the problem here. Really appreciate any help, thanks. The application is at http://helloworldureca.appspot.com/ import java.io.*; @SuppressWarnings(serial) public class TSP_gr17Servlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Matrix m1 = new Matrix(); resp.setContentType(text/plain); PrintWriter writer = resp.getWriter(); String filename = web-inf/gr17.tsp; ServletContext context = getServletContext(); // First get the file InputStream using ServletContext.getResourceAsStream() method. InputStream is = context.getResourceAsStream(filename); if (is != null) { m1.readMatrix(is); m1.displayMatrix(writer); m1.insertionCal(writer); writer.println(reached); } -- 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] GAE, GWT and Android code reuse
I am working on on a product on GAE, GWT and Android. It contains a server component on GAE and 2 clients on GWT and Android. I wonder what is the best practice to setup the projects in order to reuse as much code as possible. I google around but couldn't find any useful resource. E.g. I have some entity java classes which is used by both projects. These objects needed to be persisted in GAE. I created a project called core and a class called Parent. Then I referenced the core project in GAE project. The GAE project compiled fine and it runs. But when the code hit core.Parent it throws an exception java.lang.ClassNotFoundException: core.Parent. I tried to add the core project's bin directory in the classpath but it gives out the same exception. Is there an example out there to reference an external project from GAE project? Do I need to build a jar and put it under WEB-INF/lib? Thanks a lot! -- 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] IdGeneratorStrategy.SEQUENCE
I'm using IdGeneratorStrategy.SEQUENCE for the primary key of a table, but it appears AppEngine bounces between 2 different sequence generators as I create new entries. IDs are unique, but not monotonically increasing. It's possible I've coded something wrong, but I'm oretty sure this is a bug. -- 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] The “DataNucleus Enhancer” runs continuously and appears to cause the following error in th e “Guestbook” demo application
Problem: The “DataNucleus Enhancer” runs continuously and appears to cause the following error in the “Guestbook” demo application. Error message: “Class guestbook.Greeting does not seem to have been enhanced ... has no table in the database, but the operation requires it... I am testing the “Guestbook” demo application in AppEngine for Java with Eclipse 3.5 under Windows 7 with “AppEngine_SDK_1.3.0” and “AppEngine_SDK_1.2.8”. I have reached the “Using the Datastore with JDO” step, specifically the “Queries With JDOQL” step where I update the “guestbook.jsp” file. I have determined that the error occurs on the line with: “ListGreeting greetings = (ListGreeting) pm.newQuery(query).execute ();” After playing around with various alternatives I have come to the conclusion that the cause is the continuous running of the “DataNucleus Enhancer”. I concluded this because at one point the enhancer froze and the demo program suddenly worked. I have looked in the “Guestbook\war\WEB-INF\classes\guestbook” directory and the classes there are continuously being deleted and recreated when the “DataNucleus Enhancer” runs continuously. Can anyone tell me how to make the “DataNucleus Enhancer” behave? or provide me with another explanation and solution. I have read the existing entries concerning this and similar errors but none of them apply. I have installed Eclipse 3.5 to develop both Android and AppEngine applications. Robert -- 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 exception from JDO - Please help
Hi, I am a newbie to GAE and it's the first time I try out the JDO facility. I followed the JUnit How-To to create all the base classes for Junit test and the following is my test: public class AbcTest extends LocalServiceTestCase { Abc abcType = null; PersistenceManagerFactory pmf = GAEPresistenceHelper.getPersistenceManagerFactory(); @Override public void setUp() throws Exception { super.setUp(); abcType = new Abc(); abcType.setCreationTime(Calendar.getInstance().getTime()); PersistenceManager pm = pmf.getPersistenceManager(); pm.makePersistent(abcType); pm.close(); } public void testPKGeneration(){ assertNotNull(abcType.getPk()); } @Override public void tearDown() throws Exception { super.tearDown(); System.out.println(KeyFactory.keyToString(abcType.getPk())); PersistenceManager pm = pmf.getPersistenceManager(); ObjectState state = JDOHelper.getObjectState(abcType); System.out.println(state.name()); pm.getObjectById(abcType.getPk()); } } The ABC class: @PersistenceCapable(identityType=IdentityType.APPLICATION) public class Abc { @PrimaryKey @Persistent(valueStrategy=IdGeneratorStrategy.IDENTITY) private Key pk; public Key getPk() { return pk; } public void setPk(Key pk) { this.pk = pk; } } Could someone please advice? Am I doing anything wrong? Thanks in advance. Michael Chan -- 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] GAE roadmap for 2010
Hi, I found the roadmap for 2009 but is there one for 2010 ? I'd like to propose my company to start developement on GAE but the lack of visibility on the platform is an issue. Will you support some of the JEE6 new standard (JSF 2, CDI, JPA 2, EJB 3.1 ?). Is the imageio issue with the JSF richfaces library will be corrected ? I saw a lot of question in the forum but few answer (or wasn't able to find them). Thanks for your answers. Antoine -- 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] BlobstoreService:Must call one of set*BlobStorage() first.
i am using appengine-java-sdk-1.3.0 with eclipse now. in my page,when i click the SUBMIT button,it shows this message: === HTTP ERROR: 500 Must call one of set*BlobStorage() first. RequestURI=/_ah/upload/ agtzaG9ydC1zdG9yeXIbCxIVX19CbG9iVXBsb2FkU2Vzc2lvbl9fGCsM Caused by: java.lang.IllegalStateException: Must call one of set*BlobStorage() first. at com.google.appengine.api.blobstore.dev.BlobStorageFactory.getBlobStorage (BlobStorageFactory.java:24) at com.google.appengine.api.blobstore.dev.UploadBlobServlet.init (UploadBlobServlet.java:88) at javax.servlet.GenericServlet.init(GenericServlet.java:215) at org.mortbay.jetty.servlet.ServletHolder.initServlet (ServletHolder.java:433) at org.mortbay.jetty.servlet.ServletHolder.getServlet (ServletHolder.java:342) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 463) === Form: === %@ page import=com.google.appengine.api.blobstore.BlobstoreServiceFactory% %@ page import=com.google.appengine.api.blobstore.BlobstoreService% % BlobstoreService blobstoreService = BlobstoreServiceFactory .getBlobstoreService(); % form:form action=%= blobstoreService.createUploadUrl(/story_add.do) % method=post enctype=multipart/form-data commandName=theStory === Receiver: === @RequestMapping(value = /story_add.do, method = RequestMethod.POST) @ModelAttribute(theStory) private ShortStory add(ShortStory shortStory, Model model, HttpServletRequest request) { MapString, BlobKey blobs = blobstoreService.getUploadedBlobs (request); BlobKey blobKey = blobs.get(file); if (blobKey != null) { shortStory.setFile(blobKey); } . === what's the wrong?thank you very much. -- 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] Blobstore vs Datastore Blob
Is there any difference apart from API, billing restriction and max size between using Blobstore and Blob in Datastore? For example is it more efficient to store Blobs in Blobstore due to non-existing indexes for properties which would otherwise be present in Blob in Blobstore? Thanks, 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.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] IdGeneratorStrategy.SEQUENCE
Hi Philip, IdGeneratorStrategy.SEQUENCE support is implemented on top of DatastoreService.allocateIds(), which is itself the mechanism that the datastore uses internally to assign ids. So, all properties of datastore id allocation apply to SEQUENCE. There is a lot of good information about these properties in this thread: http://groups.google.com/group/google-appengine/browse_thread/thread/dec83c2dbd9542e4 But in short, sequences are guaranteed to be unique but not monotically increasing. Hope this helps, Max On Mon, Dec 21, 2009 at 12:04 AM, Philip Tucker ptuc...@gmail.com wrote: I'm using IdGeneratorStrategy.SEQUENCE for the primary key of a table, but it appears AppEngine bounces between 2 different sequence generators as I create new entries. IDs are unique, but not monotonically increasing. It's possible I've coded something wrong, but I'm oretty sure this is a bug. -- 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] The “DataNucleus Enhancer” runs continuously and appears to cause the following error i n the “Guestbook” demo application
Hi Robert, Could you see if you have the the latest GPE version installed (1.2.0)? There was a known issue like you describe, but it has been fixed. If you are already running the latest, we can investigate further to see what's going on. Thanks, jason On Fri, Dec 18, 2009 at 3:36 PM, Robert Allard rnall...@gmail.com wrote: Problem: The “DataNucleus Enhancer” runs continuously and appears to cause the following error in the “Guestbook” demo application. Error message: “Class guestbook.Greeting does not seem to have been enhanced ... has no table in the database, but the operation requires it... I am testing the “Guestbook” demo application in AppEngine for Java with Eclipse 3.5 under Windows 7 with “AppEngine_SDK_1.3.0” and “AppEngine_SDK_1.2.8”. I have reached the “Using the Datastore with JDO” step, specifically the “Queries With JDOQL” step where I update the “guestbook.jsp” file. I have determined that the error occurs on the line with: “ListGreeting greetings = (ListGreeting) pm.newQuery(query).execute ();” After playing around with various alternatives I have come to the conclusion that the cause is the continuous running of the “DataNucleus Enhancer”. I concluded this because at one point the enhancer froze and the demo program suddenly worked. I have looked in the “Guestbook\war\WEB-INF\classes\guestbook” directory and the classes there are continuously being deleted and recreated when the “DataNucleus Enhancer” runs continuously. Can anyone tell me how to make the “DataNucleus Enhancer” behave? or provide me with another explanation and solution. I have read the existing entries concerning this and similar errors but none of them apply. I have installed Eclipse 3.5 to develop both Android and AppEngine applications. Robert -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: GAE, GWT and Android code reuse
Yes, you should be fine once you build a jar and include it in a directory where your GAE app can actually see it. On Dec 18, 4:48 pm, Chang Luo chang@gmail.com wrote: I am working on on a product on GAE, GWT and Android. It contains a server component on GAE and 2 clients on GWT and Android. I wonder what is the best practice to setup the projects in order to reuse as much code as possible. I google around but couldn't find any useful resource. E.g. I have some entity java classes which is used by both projects. These objects needed to be persisted in GAE. I created a project called core and a class called Parent. Then I referenced the core project in GAE project. The GAE project compiled fine and it runs. But when the code hit core.Parent it throws an exception java.lang.ClassNotFoundException: core.Parent. I tried to add the core project's bin directory in the classpath but it gives out the same exception. Is there an example out there to reference an external project from GAE project? Do I need to build a jar and put it under WEB-INF/lib? Thanks a lot! -- 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] Where is jsp servlet source directory for jetty gae plugin linux?
A coding short-circuit I use to create servlets is first write a jsp, which the server then converts to a servlet java source. Then I locate the servlet source in Tomcat's runtime webapp directory and poach it and after making some changes to it, I use the source as the actual servlet. But where is the runtime webapp directory for jetty? I think someone also calls it the jetty jsp scratch directory. I managed to look for it for vista/xp but where is it for linux? Specifically for the case of google eclipse plugin. -- 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: IdGeneratorStrategy.SEQUENCE
Thanks! Unless I'm misreading the documentation for SEQUENCE, that breaks the contract of the JDP annotation API, doesn't it? Is there a way to annotate a field as a true sequence, or do I need to create my own sequence and assign the value myself? On Dec 21, 9:29 am, Max Ross (Google) maxr+appeng...@google.com wrote: Hi Philip, IdGeneratorStrategy.SEQUENCE support is implemented on top of DatastoreService.allocateIds(), which is itself the mechanism that the datastore uses internally to assign ids. So, all properties of datastore id allocation apply to SEQUENCE. There is a lot of good information about these properties in this thread:http://groups.google.com/group/google-appengine/browse_thread/thread/... But in short, sequences are guaranteed to be unique but not monotically increasing. Hope this helps, Max On Mon, Dec 21, 2009 at 12:04 AM, Philip Tucker ptuc...@gmail.com wrote: I'm using IdGeneratorStrategy.SEQUENCE for the primary key of a table, but it appears AppEngine bounces between 2 different sequence generators as I create new entries. IDs are unique, but not monotonically increasing. It's possible I've coded something wrong, but I'm oretty sure this is a bug. -- 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%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.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: IdGeneratorStrategy.SEQUENCE
Where are you reading the definition of the contract? On Mon, Dec 21, 2009 at 2:41 PM, Philip Tucker ptuc...@gmail.com wrote: Thanks! Unless I'm misreading the documentation for SEQUENCE, that breaks the contract of the JDP annotation API, doesn't it? Is there a way to annotate a field as a true sequence, or do I need to create my own sequence and assign the value myself? On Dec 21, 9:29 am, Max Ross (Google) maxr+appeng...@google.commaxr%2bappeng...@google.com wrote: Hi Philip, IdGeneratorStrategy.SEQUENCE support is implemented on top of DatastoreService.allocateIds(), which is itself the mechanism that the datastore uses internally to assign ids. So, all properties of datastore id allocation apply to SEQUENCE. There is a lot of good information about these properties in this thread: http://groups.google.com/group/google-appengine/browse_thread/thread/... But in short, sequences are guaranteed to be unique but not monotically increasing. Hope this helps, Max On Mon, Dec 21, 2009 at 12:04 AM, Philip Tucker ptuc...@gmail.com wrote: I'm using IdGeneratorStrategy.SEQUENCE for the primary key of a table, but it appears AppEngine bounces between 2 different sequence generators as I create new entries. IDs are unique, but not monotonically increasing. It's possible I've coded something wrong, but I'm oretty sure this is a bug. -- 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.
[appengine-java] Re: Is there a recommended way to differentiate between production and dev GAE environments?
I found this in the Programming GAE book by Dan Sanderson, O'Reilly, 2010: An app can determine whether it is running on AppEngine or in the development server from the servlet info string in the srvlet context, returned by this.getServletContext()getServletInfo(). This string starts with Google App Engine Development when running in the development server... Jorge Gonzalez On Nov 28, 7:34 am, Guillaume Laforge glafo...@gmail.com wrote: Another approach I've just found is doing something like: ApiProxy.getCurrentEnvironment().getClass().getName().contains (LocalHttpRequestEnvironment) Not sure in the end what's the best approach of them all. On 24 nov, 16:29, Marcel Overdijk marceloverd...@gmail.com wrote: Or use a Listener as described herehttp://marceloverdijk.blogspot.com/2009/10/determining-runtime-enviro... On 23 nov, 15:58, Nacho Coloma icol...@gmail.com wrote: To answer my own question, this has been my best shot this far: SecurityManager sm = System.getSecurityManager(); localDevelopmentEnvironment = sm == null || com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.equals(sm.getClass().getName()); If anyone has a better way, I will be glad to hear. On Nov 23, 1:17 pm, Nacho Coloma icol...@gmail.com wrote: Hi all, I was considering options, but I first wanted to ask: is there a recommended way to differentiate between my localdevelopment environment and the realGAEserver? This far, the only options I can think of are: * adding a -Dtest=true to my eclipse launcher * looking up for any test environment classes (Class.forName) but it's not reliable as they could get included by mistake in any WAR release. * I have been searching for instanceof alternatives i.e.: DatastoreServiceFactory.getService() instanceof LocalDatastoreService but I could not find any such expression that could possibly work. Ideas? What are people using out there? Nacho. -- 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: GetObjectByID JDO question (NucleusObjectNotFoundException)
You can query the key only, hope this helps. http://code.google.com/appengine/docs/python/datastore/queriesandindexes.html#Queries_on_Keys On Dec 21, 8:51 pm, Jess Evans laphroai...@gmail.com wrote: Be wary of a try/get/catch/persist combo. I was doing this initially, but found it triggered a memory leak. I resorted to a query by business key. I can't confirm whats most efficient. It's certainly not in terms of index storage overhead. I just wanted to throw out the warning. On Dec 21, 2009 12:08 PM, t3jem t3j...@gmail.com wrote: Ok, So I'm writing my first game using the Google App Engine and have been finding that using RPC and the datastore is much different than I'm use to. I've managed to get along, but I'm pretty stuck on this one, I can't find it anywhere. My problem is, I need to be able to create a new object with a unique ID when a new user logs into the game. I was doing this by randomly generating a key and then using a query to the datastore to retrieve an object by that ID. If nothing turns up then I persist the new object with that ID. I understand that with an exceedingly great amount of users this method could become a bit slow, but I don't intend to have more than 1000 objects of this type in the datastore so I don't foresee any problems with this method (please tell me if I'm terribly mistaken). I get my error when I go to attempt a retrieval of the missing object from the datastore. I use PersistenceManager.getObjectById(foo.class, Key) when my program reaches the call it throws a NucleusObjectNotFoundException. I understand this is probably normal behavior, the problem is, I can't seem to find a way to check if the key already exists in the datastore or not. Is there a cheap way to check for a key? the only other method I can think of is to get a collection of all the objects of that class and check the created key against all existing ones, but that seems much to expensive. Thank you for your time -- 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%2B unsubscr...@googlegroups.com . For more options, visit this group athttp://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: Does Google App Engine support Apache Mina?
p 2009/10/31 ArtemGr artem...@gmail.com On 31 окт, 19:10, asianCoolz second.co...@gmail.com wrote: anyone tried out apache mina with GAE? any update There's no chance. MINA uses NIO and sockets directly. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.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] Discussion on will-it-play-in-app-engine
WRONG** You have: Direct Web Remoting (DWR) Version(s): 2.0.5, 3.0 RC1 Status: COMPATIBLE If AppEngine does not support spawning new threads then 3.0RC1 won't work out of the box see http://old.nabble.com/DWR3RC1-threads-td23074328.html and/or search the DWR mailing list for appengine to see progress on what approaches people have tried. -- 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: wrong redirection to google sites
hie any help on this plz? I am stuck and my app is down now due to this redirection Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com On Mon, Dec 21, 2009 at 6:00 PM, Vik vik@gmail.com wrote: Hie I have a deployed version of my app as: http://1.latest.sakshumweb.appspot.com but when i click on it: it takes me to somewhere else like: http://sites.google.com/a/sakshum.com/www/ui/page/index.html Any idea why? I am hoping to see my site instead. This was working fine few days back and all of a sudden it started happening. I haven't made any changes on my side. Please help Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com -- 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: Is there a recommended way to differentiate between production and dev GAE environments?
Hi all, App Engine officially supports a way to differentiate between production and development as follows: String env = System.getProperty(com.google.appengine.runtime.environment); if (Development.equals(env)) { ... } else if (Production.equals(env)) { ... } See http://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes Hope this helps, Yasuo Higa -- 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: embedding parent object in parent-child relation with jdo
In that case, do you need the child to be an Entity at all? Perhaps you could simply embed it in the parent. Not too sure about the JDO case, I think it might be impossible to embed a collection unless it is of native values. But with Twig you can embed an entire collection of child objects and they can be automatically encoded as multi-value properties that you can then query on. It does this using the order of multi valued properties. For example: name=Order name date=1 Dec 2009 items.name=[An item, Another Item, Yet another item] items.price=[3.45, 1.67, 8.98] You can now filter (or sort) by a child property and partent property. You cannot find a parent with a certain price AND a name but your case sounds fine. Don't worry, Twig encodes and decodes the objects. This only works for one level of collection; if an item had a collection of parts Twig can still encode it but not as ordered multi-value properties. John 2009/12/22 Eugene Kuleshov ekules...@gmail.com On Dec 19, 2:56 am, jd jdpatter...@gmail.com wrote: Could you not split your query into two? The first to find the parent and the second to return all children with an ancestor query. In my case the main filtering criteria is actually by one of the child's attributes, but then I need to sort the results and present them using some of the parent's attributes. For example, with Order and OrderItem model, find all OrderItems that include the given part number and then sort the result according to the Order's date. So, I do need to preserve parent-child relationship, but don't want to execute N+1 queries (one for each parent referenced from the found children). Also, I would like to maintain parent-child relationship, so entity groups are handled automatically (so I won't have to manually create foreign keys), i.e. I can process all parent-child chunks in one transaction. Thanks Eugene On Dec 19, 3:58 am, Eugene Kuleshov ekules...@gmail.com wrote: It shouldn't be needed, since according to the docs [1], the Key type is only required to record parent relation in the child. But I tried it anyways and got pretty much the same exception: Exception in thread main java.lang.ArrayIndexOutOfBoundsException: 0 at org.datanucleus.store.appengine.DatastoreTable.initializeNonPK (DatastoreTable.java:356) at org.datanucleus.store.appengine.DatastoreTable.buildMapping (DatastoreTable.java:285) at org.datanucleus.store.appengine.DatastoreManager.buildStoreData (DatastoreManager.java:405) ... regards, Eugene [1] http://code.google.com/appengine/docs/java/datastore/creatinggettinga... On Dec 18, 2:33 pm, Rusty Wright rwright.li...@gmail.com wrote: Try making the parent's primary key be Key instead of String. Eugene Kuleshov wrote: I am using the app engine SDK 1.3.0 with the latest Google Eclipse plugin. Currently, in order to be able to run queries on attributes of the parent object I have to embed parent object into a child. So, I have created the following classes @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Parent { @PrimaryKey @Persistent String parentName; @Persistent(mappedBy = parent) ListChild children = new ArrayListChild(); public Parent(String parentName) { this.parentName = parentName; } public void setParentName(String parentName) { this.parentName = parentName; } public String getParentName() { return parentName; } public ListChild getChildren() { return children; } public void addChild(Child child) { child.setParent(this); children.add(child); } } @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Child { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key childKey; @Persistent String childName; @Embedded( members = { @Persistent(name = parentName, column = childParentName) }, ownerMember = children) @Persistent Parent parent; public Child(String childName) { this.childName = childName; } public void setChildName(String childName) { this.childName = childName; } public String getChildName() { return childName; } public void setParent(Parent parent) { this.parent = parent; } public Parent getParent() { return parent; } } and then I created a simple test to verify if I can persist and run queries on those objects: public class ParentTest { public static void main(String[] args) { Parent parent1 = new Parent(parent1); parent1.addChild(new Child(child1)); parent1.addChild(new Child(child2)); Parent parent2 = new Parent(parent2); parent2.addChild(new Child(child3));
[appengine-java] Re: Help with reading file
Hi, I think that I become normal if [web-inf/gr17.tsp] is corrected to [WEB-INF/gr17.tsp]. Please Try. thanks. On 12月21日, 午後1:25, sebas tan sebastianc...@hotmail.com wrote: Hello, I have a simple application to read from afileand carry out operations on it. However, when deployed to appspot, it keepsreading thefileas null and doesn't execute. gr17.tsp is a textfile containing a travelingsalesman problem. It works fine on localhost so i really don't see what's the problem here. Really appreciate anyhelp, thanks. The application is athttp://helloworldureca.appspot.com/ import java.io.*; @SuppressWarnings(serial) public class TSP_gr17Servlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Matrix m1 = new Matrix(); resp.setContentType(text/plain); PrintWriter writer = resp.getWriter(); String filename = web-inf/gr17.tsp; ServletContext context = getServletContext(); // First get thefileInputStream using ServletContext.getResourceAsStream() method. InputStream is = context.getResourceAsStream(filename); if (is != null) { m1.readMatrix(is); m1.displayMatrix(writer); m1.insertionCal(writer); writer.println(reached); } -- 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: Wanna share a forum for GAE developers i made
great! tx On Dec 21, 6:12 pm, nmelen...@getsense.com.ar nmelen...@getsense.com.ar wrote: Hi there, I usually write code to anwer something or to make a question in the list, but it is difficult to read because it is no formatted and the syntax isn,t highlight. So, i wanna share with the community a forum for GAE developers, where the main feature is that posts have java syntax highlighting, also files can be uploaded and screenshots too. www.gaeforums.com Enjoy Regards, NM -- 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: IdGeneratorStrategy.SEQUENCE
Hmm, I thought I'd read that in the DataNucleus documentation, but I can't find any clear definition of it. I must have just assumed sequences were sequential. Borrowing from your example here (http://code.google.com/p/datanucleus- appengine/source/browse/trunk/tests/org/datanucleus/test/ SequenceExamplesJDO.java), it seems if I specify a named sequence and set SequenceStrategy.CONTIGUOUS (NONCONTIGUOUS might work too, I'm guessing !TRANSACTIONAL is the key) that I get a monotonically increasing sequence. Does that seem right? Thanks for the input, Philip On Dec 21, 2:46 pm, Max Ross (Google) maxr+appeng...@google.com wrote: Where are you reading the definition of the contract? On Mon, Dec 21, 2009 at 2:41 PM, Philip Tucker ptuc...@gmail.com wrote: Thanks! Unless I'm misreading the documentation for SEQUENCE, that breaks the contract of the JDP annotation API, doesn't it? Is there a way to annotate a field as a true sequence, or do I need to create my own sequence and assign the value myself? On Dec 21, 9:29 am, Max Ross (Google) maxr+appeng...@google.commaxr%2bappeng...@google.com wrote: Hi Philip, IdGeneratorStrategy.SEQUENCE support is implemented on top of DatastoreService.allocateIds(), which is itself the mechanism that the datastore uses internally to assign ids. So, all properties of datastore id allocation apply to SEQUENCE. There is a lot of good information about these properties in this thread: http://groups.google.com/group/google-appengine/browse_thread/thread/... But in short, sequences are guaranteed to be unique but not monotically increasing. Hope this helps, Max On Mon, Dec 21, 2009 at 12:04 AM, Philip Tucker ptuc...@gmail.com wrote: I'm using IdGeneratorStrategy.SEQUENCE for the primary key of a table, but it appears AppEngine bounces between 2 different sequence generators as I create new entries. IDs are unique, but not monotonically increasing. It's possible I've coded something wrong, but I'm oretty sure this is a bug. -- 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%2B unsubscr...@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%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.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] constructor expressions in JPAQL in GAE
Hi all, Need some help in JPAQL in GAE. The JPAQL specs say that you can create objects from a JPA query directly. e.g. I wrote the following code Query q = manager.createQuery(SELECT new com.test.Person(p.id, p.firstName, p.lastName) from Person p); *List* results = q.getResultList(); It threw the following exception. org.datanucleus.store.appengine.query.DatastoreQuery$UnsupportedDatastoreOperatorException: Problem with query SELECT new com.test.Person(p.id, p.firstName, p.lastName) from Person p: App Engine datastore does not support operator org.datanucleus.query.expression.CreatorExpression. As per the JPA tutorial, constructor expressions are allowed. Am I doing anything wrong here, or is appengine does not support it. If the later is true, how do I solve this problem of selecting only selective properties from an entity. Follow up question is what if there is a one to many relationship between Person and Company, where person has a lookup to Company and in the above query I want to get id of the company and name of the company only and not other details like address, phone, etc. Something similar in SQL, without the constructor expression would be SELECT p.id, p.firstName, p.lastName, p.companyId, c.companyName from Person p, Company c where p.companyId = c.id OR in JPA QL SELECT new Person(id, firstName, lastName, new Company(c.id, c.companyName) from Person p, Company c where p.companyId = c.id I am sure, the above expression is incorrect, but I want something to that effect. Can I do this on GAE? This would help me design efficient queries and still not take away OOness of JPA. Any help is welcome. 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.
Re: [appengine-java] Dynamically create classes using JPA/JDO and bytecode instrumentation
Thanks Ikai for 1. Will definitely refer to the link in 2. and get back if I have more questions. Thanks for the quick help. On Mon, Dec 21, 2009 at 9:38 AM, Ikai L (Google) ika...@google.com wrote: 1. If you just delete all the entities of a single Kind, it is the same effect as deleting a table. You have to remember that the datastore is not SQL. Underneath the hood, it is a schemaless key-value store. Type information is defined within each entity itself and in the corresponding indexes. 2. The solution that seems to fit for the most developers is to do multiple queries and join in memory. Another solution can be to precompute the result at write time and denormalize your schema so that you query on the denormalized field. Without knowing what you are doing, it can be difficult to recommend any particular workaround. I highly recommend watching the videos from Google I/O and reading the articles to understand how filtering and indexing works. This is a pretty good place to start: http://code.google.com/appengine/articles/datastore/overview.html On Fri, Dec 18, 2009 at 10:12 PM, Bombay Goose bombaygo...@gmail.comwrote: Thanks DataNucleus team and Toby. Sorry, but I have some more questions 1. How do I delete a particular table dynamically? would just unloading the class do it? Iin that case, what if there are changes to the dynamic table, i.e. column addition/dropping, wouldnt that require unloading the class and hence deletion of table? 2. I am going through the Queries and Indexes section in the documentation at http://code.google.com/appengine/docs/java/datastore/queriesandindexes.html This section says that inequality operators are allowed only one property. Is anybody handling a situation where there are multiple properties with inequality operators? If yes, how have you done it? Thanks On Wed, Dec 16, 2009 at 12:18 PM, Toby Reyelts to...@google.comwrote: One other thing you might consider is using the native App Engine datastore, since it's already schemaless. You can even mix and match using the native API and JDO/JPA. On Wed, Dec 16, 2009 at 1:30 AM, Bombay Goose bombaygo...@gmail.comwrote: Hello All, I am doing a feasibility study of whether we can develop our application on appengine or not. Our application has a requirement where we have to create tables dynamically, without restarting the application. Is that possible in Appengine? Datanucleus supports this through JDO, with some byte code instrumentation. More info - http://www.jpox.org/servlet/wiki/pages/viewpage.action?pageId=6619188 Is it possible through JPA? if yes, does appengine allow it? if not, does Appengine allow Bytecode instrumentation so that we can create classes dynamically according to the link above using JDO. Any help is greatly appreciated. Thanks, G -- 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. -- 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. -- Ikai Lan Developer Programs Engineer, Google App Engine -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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