[appengine-java] Re: GAE/J with Flex Session
when I writing this,I try to re-set the attribute, it works, at the end of second set the client again. FlexContext.getFlexSession().setAttribute(client, _session); 2009/11/18 magic.yang zju...@gmail.com first request: login by username and pwd, and create the session _session = new FbdanciSession(); _session.setUser(user); FlexContext.getFlexSession().setAttribute(client, _session); second request: update the _session _session = FlexContext.getFlexSession().getAttribute(client); _session.setName(I am not null); FlexContext.getFlexSession().setAttribute(client, _session); third request: print the name _session = FlexContext.getFlexSession().getAttribute(client); System.out.println(_session.getUser());// the reuslt is not null; System.out.println(_session.getName());// the reuslt is null; I don't know what happened , could anyone help me out; advance thanks -- best regards, -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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=.
[appengine-java] web.xml version=2.5 is not supported
Hi all, I have been trying to use the following web.xml elements in GAE: jsp-config jsp-property-group url-pattern*.jsp/url-pattern el-ignoredfalse/el-ignored include-prelude/WEB-INF/taglibs.jspf/include-prelude deferred-syntax-allowed-as-literaltrue/deferred-syntax-allowed- as-literal trim-directive-whitespacestrue/trim-directive-whitespaces /jsp-property-group /jsp-config This instructs the JSP compiler to add some directives at the beginning of all JSP pages: * el-ignored: to be able to use ${...} at every page. * include-prelude: to include a jsp fragment with tag libraries etc at the beginning. * deferred-syntax-allowed-as-literal: to ignore the use of #{...} literals * trim-directive-whitespaces: to trim the line feeds at the beginning of each page The thing is, this is only supported for web.xml 2.5 which I know is supported by jetty but not by AppEngine. Anyway, I would expect it to throw an exception instead of ignoring my XML start: ?xml version=1.0 encoding=UTF-8? web-app xmlns=http://java.sun.com/xml/ns/javaee; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; metadata-complete=true version=2.5 The thing is, I don't know if: * It is planned to be supported by AppEngine at some point. * I am missing the correct way of configuring this in GAE. * Just nobody looked at it before. Comments would be welcome. Best regards, 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=.
[appengine-java] Re: Concurrency In Transaction
On Nov 17, 10:27 pm, Rusty Wright rwright.li...@gmail.com wrote: Ah, thanks. So if I knew how many servers my cloud is made of then I should use that number for my MAX_RETRIES. ;-) I'm curious about how others are handling the exceptions. The JDOCanRetryException is subclassed by other exceptions that don't seem like things I'd want to retry, but perhaps I don't understand the subtleties. You are correct, you don't want to retry on any error, only the 'retry' errors. I would write the retry method something like this... public Object retry(final ProceedingJoinPoint pjp) throws Throwable { this.log.debug(called); int retryCount = 0; while (true) { JDOException exception = null; try { return (pjp.proceed()); } catch (final JDOCanRetryException ex) { exception = ex; // retry } catch (final JDOException ex) { /** * to quote Google's documentation: If any action * fails due to the requested entity group being in * use by another process, JDO throws a * JDODataStoreException or a JDOException, caused by a * java.util.ConcurrentModificationException. */ if (!(ex.getCause() instanceof ConcurrentModificationException)) throw ex; // fail exception = ex; // retry } this.log.debug(retryCount: {}, exception: {}, Integer.valueOf(++retryCount), ExceptionUtils.getFullStackTrace(exception)); } } -- 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=.
Re: [appengine-java] web.xml version=2.5 is not supported
One of the issues that you are going to encounter is the mismatch between the JSP API defined in GAE and the implementation of that API provided. As documented in bug 1506http://code.google.com/p/googleappengine/issues/detail?id=1506, GAE includes the JSP 2.1 specification (found in the geronimo-jsp_2.1_spec-1.0.1.jar); however, they provide the Apache Tomcat Jasper classes from 5.0.28 which implements the 2.0 JSP specification. If you want to use the 2.1 Unified Expression language, then you're going to need to download the Unified Expression Language https://uel.dev.java.net/ 1.1 API (el-api-1.1.jarhttp://download.java.net/maven/glassfish/javax/el/el-api/1.1/el-api-1.1.jar) and Implementation (el-impl-1.1jarhttp://download.java.net/maven/glassfish/org/glassfish/web/el-impl/1.1/el-impl-1.1.jar) files and place them in the WEB-INF/lib directory of your web application. Once that is done, modify your web.xml with the following snippet of code: !-- GAE Bug 1506 JSP 2.1 API but 2.0 Implementation -- context-param param-namecom.sun.faces.expressionFactory/param-name param-valuecom.sun.el.ExpressionFactoryImpl/param-value /context-param This should make the Unified EL available to your web application. Derek Berube Wildstar Technologies, LLC. 1453 Riverview Run Lane Suwanee, Georgia 30024-3890 M: (404) 444-5283 http://www.wildstartech.com/ On Wed, Nov 18, 2009 at 5:24 AM, Nacho Coloma icol...@gmail.com wrote: Hi all, I have been trying to use the following web.xml elements in GAE: jsp-config jsp-property-group url-pattern*.jsp/url-pattern el-ignoredfalse/el-ignored include-prelude/WEB-INF/taglibs.jspf/include-prelude deferred-syntax-allowed-as-literaltrue/deferred-syntax-allowed- as-literal trim-directive-whitespacestrue/trim-directive-whitespaces /jsp-property-group /jsp-config This instructs the JSP compiler to add some directives at the beginning of all JSP pages: * el-ignored: to be able to use ${...} at every page. * include-prelude: to include a jsp fragment with tag libraries etc at the beginning. * deferred-syntax-allowed-as-literal: to ignore the use of #{...} literals * trim-directive-whitespaces: to trim the line feeds at the beginning of each page The thing is, this is only supported for web.xml 2.5 which I know is supported by jetty but not by AppEngine. Anyway, I would expect it to throw an exception instead of ignoring my XML start: ?xml version=1.0 encoding=UTF-8? web-app xmlns=http://java.sun.com/xml/ns/javaee; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; metadata-complete=true version=2.5 The thing is, I don't know if: * It is planned to be supported by AppEngine at some point. * I am missing the correct way of configuring this in GAE. * Just nobody looked at it before. Comments would be welcome. Best regards, 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=. -- 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=.
Re: [appengine-java] Configuring JSF 2.0 to run on Google App Engine
Denden, What does your web.xml look like? What libraries to you have in the WEB-INF/lib directory of your web application? Are you trying to use a component library such as ADF, RichFaces, or ICEFaces? I have a working version of the JSF2 framework running on GAE posted at jsf2template.appspot.com. The source code for this project is available from Google code at: http://code.google.com/p/jsf2gae/. Derek Berube Wildstar Technologies, LLC. 1453 Riverview Run Lane Suwanee, Georgia 30024-3890 M: (404) 444-5283 . http://www.wildstartech.com/ On Tue, Nov 17, 2009 at 2:24 AM, Denden Gajudo dgaj...@gmail.com wrote: I'm attempting to configure JSF 2.0 to run on Google App Engine using the following setup: Apache Xalan-J 2.9.0 Google AppEngine for Java SDK v1.2.5 Sun Java ServerFaces 2.0 FCS Unified Expression Language 1.1 API (el-api-1.1.jar) and Implementation (el-impl-1.1jar) I followed the procedure indicated in http://java.wildstartech.com/Java-Platform-Enterpr...to-run-on-the-google-appengine However, I am getting the following errors on startup. I was wondering if anyone has experienced this problem. WARNING: Failed startup of context com.google.apphosting.utils.jetty.devappenginewebappcont...@14b081b {/,C:\workspace\JSFTemplate\war} com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 354) at com.sun.faces.config.ConfigureListener.contextInitialized (ConfigureListener.java:219) at org.mortbay.jetty.handler.ContextHandler.startContext (ContextHandler.java:530) at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) at org.mortbay.jetty.webapp.WebAppContext.startContext (WebAppContext.java:1218) at org.mortbay.jetty.handler.ContextHandler.doStart (ContextHandler.java:500) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 448) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.jetty.Server.doStart(Server.java:217) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java:152) at com.google.appengine.tools.development.AbstractContainerService.startup (AbstractContainerService.java:116) at com.google.appengine.tools.development.DevAppServerImpl.start (DevAppServerImpl.java:218) 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) Caused by: java.lang.NullPointerException at com.sun.faces.util.Util.loadClass(Util.java:200) at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass (AbstractConfigProcessor.java:312) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass (FaceletTaglibConfigProcessor.java:416) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags (FaceletTaglibConfigProcessor.java:370) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary (FaceletTaglibConfigProcessor.java:313) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process (FaceletTaglibConfigProcessor.java:262) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 337) ... 19 more Any assistance is much appreciated. 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=. -- 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=.
Re: [appengine-java] JDO : setting filter ! MyList.contains(\tag) OR MyList.doesnotcontains(\tag)
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=.
[appengine-java] Re: Spring Web Flow
Indeed, I have created a similar thread over there: http://forum.springsource.org/showthread.php?t=80572 If anyone has any clue what could have been wrong, or wants to help me and wants to see some of the code, let me know! On Nov 13, 10:08 pm, Rusty Wright rwright.li...@gmail.com wrote: Have you tried the Spring forums? Perhaps your problem is specific to Spring Web Flow and not App Engine. http://forum.springsource.org/ DieterHubauwrote: I hope some people who know stuff about Spring Web Flow are reading this :-) On Nov 12, 3:48 pm,DieterHubaudhu...@gmail.com wrote: Anyone? If you need extra information, I'm willing to paste more of the code here.. On Nov 12, 10:29 am,DieterHubaudhu...@gmail.com wrote: Hi everyone, I m having an error using Spring + Spring Web Flow in my java web application. I have already fixed lots of small problems to get it working, but this one I can t figure out. The app is:http://toverexpressforever.appspot.com When you click on the register button, a new Spring Web Flow is started and it takes you to the first view-state of the float, /WEB- INF/jsp/subscription/details.jsp Then you can continue in the flow, by clicking on one of the two links. One leads you to another jsp (WEB-INF/jsp/subscription/ summary.jsp), the second will lead you back to the homepage /home.do The first time when I try this, it always works... But whenever I try to go to /subscription.do a second time (or 3rd ,4rd, ...) it fails... What am I doing wrong here? He always gives me the error message: Error: Not Found The requested URL /subscription was not found on this server. And in the logs, I see this error message for the /subscription.do URL: # 1. 11-12 01:27AM 36.070 /subscription 404 1ms 0cpu_ms 0kb Mozilla/ 5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4 (.NET CLR 3.5.30729),gzip(gfe) See details ***.***.***.*** - - [12/Nov/2009:01:27:36 -0800] GET / subscription HTTP/1.1 404 0 http://toverexpressforever.appspot.com/; Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.4) Gecko/ 20091016 Firefox/3.5.4 (.NET CLR 3.5.30729),gzip(gfe) toverexpressforever.appspot.com 2. W 11-12 01:27AM 36.070 No handlers matched this URL. Anyone know what I'm doing wrong here? On a local Tomcat server (in Eclipse) it works, as well as with the Eclipse plugin server (by doing Run As - Web Application)... Any help is greatly appreciated!! Kind regards, DieterH -- 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 athttp://groups.google.com/group/google-appengine-java?hl=. -- 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=.
[appengine-java] Re: Exception When Uploading Application To AppEngine
I'm seeing the same thing here. All of a sudden I can't deploy to the cloud. I'm using gae 1.2.2, and I'm getting the exact same error. The only thing that may have an effect is that I had someone else on my team deploy to the same account (different app id), since then I haven't been able to deploy. I can't believe that you can't have more than one person ever deploy to an account. Any guidance would be 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.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=.
[appengine-java] Reading from the database
Hi How do i read items in the database in order to display that data to the user per say? -- 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=.
[appengine-java] Re: Session handleing example
Ikai Even this basic page scope isn't working for me. public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { req.setAttribute(helloWorld, Testing); RequestDispatcher dispatcher = req.getRequestDispatcher(/helloworld.jsp); dispatcher.forward(req, resp); } %@ page isELIgnored=false % body Hello world % String str = (String) session.getAttribute(helloWorld); % h1${helloWorld}/h1 /body The value for ${helloWorld} is null. I am testing this through eclipse. Google App Engine Java SDK 1.2.6 Google Web Toolkit SDK 1.7.1 Google Plugin for Eclipse 3.5 I am running this on mac (snow leopard). java version 1.6.0_15 Java(TM) SE Runtime Environment (build 1.6.0_15-b03-219) Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-90, mixed mode) On Nov 10, 10:36 am, Ikai L (Google) ika...@google.com wrote: Ilya, Are you looking to persist objects for a lifetime of a session, or are you looking to minimize the logic you are using in your JSPs? As a general design principle, we recommend that you minimize usage of session scope. Variables bound to session scope are serialized and stored to distributed memory, and as a result, it will work best if you use it to pass around small, simple, immutable objects. If you're looking to pass a variable to a view, Java Servlets have a concept of page scope as well as session scope. You don't need to store a variable in session scope if you just want to dispatch the request to a JSP. For instance, you can define a Servlet that looks like this: public class MyServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String myVar = this is a string that will be passed to the JSP; request.setAttribute(myVar, myVar); RequestDispatcher dispatcher = request.getRequestDispatcher(/WEB-INF/my.jsp); dispatcher.forward(request, response); } } In my.jsp, you can now refer to this variable: %@ page isELIgnored=false % body h1${myVar}/h1 /body Ikai Lan Developer Programs Engineer, Google App Engine On Tue, Nov 10, 2009 at 2:39 PM, IlyaE ilyaelk...@gmail.com wrote: Well as i found out, session attributes don't always guarantee that they are sent back to the same JVM thus i keep getting null objects in my view. While i saw a similar discussion before the only examples i found were for Python. I'm looking for a simple java example that saves an object in the servlet and retrieves it in the jsp. On Nov 9, 5:44 pm, victor victoraco...@gmail.com wrote: What issue are you encountering? When you make changes to a session object state, make sure to explicitly call the session.setAttribute(you session ID, you modified session state object) again. i think there is an issue discussed about this before. On Nov 9, 10:58 am, IlyaE ilyaelk...@gmail.com wrote: Does anyone have a java session handleing example? It seems that saving objects in the session only works locally. -- 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=.
[appengine-java] Re: Configuring JSF 2.0 to run on Google App Engine
Denden, I have same problem. the root cause is the version of Mojarra2.0.0 if you open jsf-impl.jar, there is a file: META/taglib/ui.taglib.xml notice the tag remove tag-nameremove/tag-name handler-class/handler-class handler-class is NOT defined. this would cause a problem and throw NPE. change the jsf2 libraries from mojarra 2.0.1 everything is OK. Andy On Nov 17, 2:24 am, Denden Gajudo dgaj...@gmail.com wrote: I'm attempting to configure JSF 2.0 to run on Google App Engine using the following setup: Apache Xalan-J 2.9.0 Google AppEngine for Java SDK v1.2.5 Sun Java ServerFaces 2.0 FCS Unified Expression Language 1.1 API (el-api-1.1.jar) and Implementation (el-impl-1.1jar) I followed the procedure indicated inhttp://java.wildstartech.com/Java-Platform-Enterpr...to-run-on-the-go... However, I am getting the following errors on startup. I was wondering if anyone has experienced this problem. WARNING: Failed startup of context com.google.apphosting.utils.jetty.devappenginewebappcont...@14b081b {/,C:\workspace\JSFTemplate\war} com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 354) at com.sun.faces.config.ConfigureListener.contextInitialized (ConfigureListener.java:219) at org.mortbay.jetty.handler.ContextHandler.startContext (ContextHandler.java:530) at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) at org.mortbay.jetty.webapp.WebAppContext.startContext (WebAppContext.java:1218) at org.mortbay.jetty.handler.ContextHandler.doStart (ContextHandler.java:500) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 448) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.jetty.Server.doStart(Server.java:217) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java:152) at com.google.appengine.tools.development.AbstractContainerService.startup (AbstractContainerService.java:116) at com.google.appengine.tools.development.DevAppServerImpl.start (DevAppServerImpl.java:218) 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) Caused by: java.lang.NullPointerException at com.sun.faces.util.Util.loadClass(Util.java:200) at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass (AbstractConfigProcessor.java:312) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass (FaceletTaglibConfigProcessor.java:416) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags (FaceletTaglibConfigProcessor.java:370) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary (FaceletTaglibConfigProcessor.java:313) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process (FaceletTaglibConfigProcessor.java:262) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 337) ... 19 more Any assistance is much appreciated. 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] Re: Configuring JSF 2.0 to run on Google App Engine
Denden, I have the same problem as you. I found the root cause. The library jsf-impl.jar you(and I ) is in downloaded zip file: mojarra-2.0.0-FCS-binary.zip. if you open jsf-impl.jar, there is a file: META-INF/taglib/ ui.taglib.xml. at the end of this file: tag-nameremove/tag-name handler-class/handler-class handler-class is NOT defined,this causes a problem and throw NPE Once I replaced with mojarra-2.0.1, then It's OK. Andy On Nov 17, 2:24 am, Denden Gajudo dgaj...@gmail.com wrote: I'm attempting to configure JSF 2.0 to run on Google App Engine using the following setup: Apache Xalan-J 2.9.0 Google AppEngine for Java SDK v1.2.5 Sun Java ServerFaces 2.0 FCS Unified Expression Language 1.1 API (el-api-1.1.jar) and Implementation (el-impl-1.1jar) I followed the procedure indicated inhttp://java.wildstartech.com/Java-Platform-Enterpr...to-run-on-the-go... However, I am getting the following errors on startup. I was wondering if anyone has experienced this problem. WARNING: Failed startup of context com.google.apphosting.utils.jetty.devappenginewebappcont...@14b081b {/,C:\workspace\JSFTemplate\war} com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 354) at com.sun.faces.config.ConfigureListener.contextInitialized (ConfigureListener.java:219) at org.mortbay.jetty.handler.ContextHandler.startContext (ContextHandler.java:530) at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) at org.mortbay.jetty.webapp.WebAppContext.startContext (WebAppContext.java:1218) at org.mortbay.jetty.handler.ContextHandler.doStart (ContextHandler.java:500) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 448) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart (HandlerWrapper.java:117) at org.mortbay.jetty.Server.doStart(Server.java:217) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:40) at com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java:152) at com.google.appengine.tools.development.AbstractContainerService.startup (AbstractContainerService.java:116) at com.google.appengine.tools.development.DevAppServerImpl.start (DevAppServerImpl.java:218) 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) Caused by: java.lang.NullPointerException at com.sun.faces.util.Util.loadClass(Util.java:200) at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass (AbstractConfigProcessor.java:312) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass (FaceletTaglibConfigProcessor.java:416) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags (FaceletTaglibConfigProcessor.java:370) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary (FaceletTaglibConfigProcessor.java:313) at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process (FaceletTaglibConfigProcessor.java:262) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 337) ... 19 more Any assistance is much appreciated. 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] Re: NullPointer on key
Running into another issue. So i'm detaching my object and passing it along in a session. I'm now getting this error WARNING: javax.jdo.JDODetachedFieldAccessException: You have just attempted to access field contactInfo yet this field was not detached when you detached the object. Either dont access this field, or detach it when detaching the object. my contactInfo is an embedded persistent object in the object i am detaching. @Embedded @Persistent private ContactInfo contactInfo; If i make contactInfo @Persistent(defaultFetchGroup=true) then i get this error. WARNING: The datastore does not support joins and therefore cannot honor requests to place child objects in the default fetch group. The field will be fetched lazily on first access. You can modify this warning by setting the datanucleus.appengine.ignorableMetaDataBehavior property in your config. A value of NONE will silence the warning. A value of ERROR will turn the warning into an exception. What is the correct way of making sure this embedded object is also detached when i save it to the session? On Nov 14, 6:37 am, datanucleus andy_jeffer...@yahoo.com wrote: What state is the object in when you access its field ? (Call JDOHelper.getObjectState(obj)). Since no transaction boundaries or PM lifecycle is presented, it's hard to guess. If you leave the object to become transient then it will likely have its field values nulled when leaving the transaction/ PM (unless you bothered setting javax.jdo.option.RetainValues) -- 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: Time zones implementation is broken in Java AppEngine
Issue 2330 - still nothing is done about this. On Tue, Oct 27, 2009 at 6:55 PM, Jason (Google) apija...@google.com wrote: At the very least, the local and production environments should have identical behavior, and I agree that App Engine should not be returning GMT for well-established time zones. Please file a new issue in the tracker: http://code.google.com/p/googleappengine/issues/list - Jason On Sat, Oct 24, 2009 at 10:14 AM, Alexander Kolesnikov otry.it...@gmail.com wrote: I have just found that, while everything works fine locally, the real AppEngine returns GMT for most time zones. I wonder if this is going to be fixed. Below see the local output and then the one I am having after uploading the app. Thanks, Alex LOCAL: Asia/Aden3false0Arabia Standard Time Asia/Almaty6false0Alma-Ata Time Asia/Amman3true1Eastern European Time Asia/Anadyr12false1Anadyr Time Asia/Aqtau5false0Aqtau Time Asia/Aqtobe5false0Aqtobe Time Asia/Ashgabat5false0Turkmenistan Time Asia/Ashkhabad5false0Turkmenistan Time Asia/Baghdad3false0Arabia Standard Time Asia/Bahrain3false0Arabia Standard Time Asia/Baku5true1Azerbaijan Time Asia/Bangkok7false0Indochina Time ONLINE: Asia/Aden3false0Arabia Standard Time Asia/Almaty0false0Greenwich Mean Time Asia/Amman0false0Greenwich Mean Time Asia/Anadyr0false0Greenwich Mean Time Asia/Aqtau0false0Greenwich Mean Time Asia/Aqtobe0false0Greenwich Mean Time Asia/Ashgabat0false0Greenwich Mean Time Asia/Ashkhabad0false0Greenwich Mean Time Asia/Baghdad0false0Greenwich Mean Time Asia/Bahrain0false0Greenwich Mean Time Asia/Baku5true1Azerbaijan Time Asia/Bangkok0false0Greenwich Mean 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-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] Re: Cannot retrieve value of the newly created attribute in a JDO
Would you share the solution with us? please On Nov 7, 3:59 am, delightwjk delight@gmail.com wrote: I have fixed this problem. Thanks. On Nov 6, 11:05 am, delightwjk delight@gmail.com wrote: Thank you Jorge, I checked the document you mentioned, but i'm still not sure what is the reason of my issue. I added a field in JDO (Boolean successFlag), and stored several entities in datastore, I was able to see the entities with successFlag property from admin console Datastore - Data Viewer, and the values of successFlag properties were correct. The entities have the property successFlag with correct value, and the JDO class has the corresponding field, but why I could not retrieve the values of successFlag via JDO? Jiakuan On Nov 5, 9:57 pm, Jorge athenas...@gmail.com wrote: You may want to check the rules that apply in this case as documented at the bottom of this page:: http://code.google.com/appengine/docs/java/datastore/dataclasses.html Jorge Gonzalez On Nov 4, 8:06 am, delightwjk delight@gmail.com wrote: Hi All, I created a JDO class, which had some attributes, and I created some CRUD operations, all of them worked correctly. Then I added a new attribute in the JDO class, and then set value to it and persisted it as usual when I executed CRUD operations. The problem is that I cannot retrieve the value of the new attribute in program, the value is always null. But when I check the value in Datastore - Data Viewer, the value is correct. So i'm wondering why it cannot be retrieved in application. Is there some cache mechanism? Thanks in advance! Jiakuan -- 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: Xalan
Hi, I have the same problem when using the xml tags of jstl with appengine 1.2.6. I also tried to put the missing class into the WEB-INF/classes/... folder but still no success. Note that http://code.google.com/p/googleappengine/issues/detail?id=2180 has not a fix but only verifies that the class org.apache.xpath.VariableStack is available at compile time but not at run time. Regards, Stephan On Oct 5, 7:18 pm, Jason (Google) apija...@google.com wrote: Can you confirm that the tip inhttp://code.google.com/p/googleappengine/issues/detail?id=2180(see the second comment) works for you? - Jason On Wed, Sep 30, 2009 at 9:17 AM, Maniacs sony.trico...@gmail.com wrote: I tried to use JSTL xml tags and I got the following exception :java.lang.NoClassDefFoundError: org/apache/xpath/ VariableStack However, I put in WEB-INF/lib the file xalan.jar. Is xalan incompatible with app-engine ? Regards -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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] 500 Internal Server Error, when update appl
What is your app ID? Can you also provide the following details: - application ID - SDK version. Also include whether it is Python or Java - Operating System - Whether this is the first push or not - Are you behind a proxy? As much information as you can give me would be helpful. On Mon, Nov 16, 2009 at 10:25 PM, Jackob jrozn...@gmail.com wrote: The problem is not fixed , i can't upload update. The happened only with my account? On Mon, Nov 16, 2009 at 11:59 PM, Ikai L (Google) ika...@google.comwrote: Have you been able to update this application? On Wed, Nov 11, 2009 at 11:53 PM, Jackroz jrozn...@gmail.com wrote: Hi Team, Last two day i can't update appl, what is wrong? Please see detail log: Unable to update: java.io.IOException: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send (ServerConnection.java:143) at com.google.appengine.tools.admin.ServerConnection.post (ServerConnection.java:81) at com.google.appengine.tools.admin.AppVersionUpload.send (AppVersionUpload.java:427) at com.google.appengine.tools.admin.AppVersionUpload.cloneFiles (AppVersionUpload.java:293) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:255) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute (AppCfg.java:521) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58) at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54) com.google.appengine.tools.admin.AdminException: Unable to update app: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:62) at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute (AppCfg.java:521) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58) at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54) Caused by: java.io.IOException: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send (ServerConnection.java:143) at com.google.appengine.tools.admin.ServerConnection.post (ServerConnection.java:81) at com.google.appengine.tools.admin.AppVersionUpload.send (AppVersionUpload.java:427) at com.google.appengine.tools.admin.AppVersionUpload.cloneFiles (AppVersionUpload.java:293) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:255) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) ... 4 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=. -- 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=. -- Best regards, Yakov Liskoff Mobile: 972-54-4512963 Email: jrozn...@gmail.com Web: http://www.vcomm.co.nr IM: jackobl (Skype) - The contents of this email and any attachments are confidential. It is intended for the named recipient(s) only. - -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send
Re: [appengine-java] Re: Session handleing example
Doyou see these issues locally or when deployed? On Tue, Nov 17, 2009 at 9:03 PM, Obelix anand.sanka...@gmail.com wrote: Ikai Even this basic page scope isn't working for me. public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { req.setAttribute(helloWorld, Testing); RequestDispatcher dispatcher = req.getRequestDispatcher(/helloworld.jsp); dispatcher.forward(req, resp); } %@ page isELIgnored=false % body Hello world % String str = (String) session.getAttribute(helloWorld); % h1${helloWorld}/h1 /body The value for ${helloWorld} is null. I am testing this through eclipse. Google App Engine Java SDK 1.2.6 Google Web Toolkit SDK 1.7.1 Google Plugin for Eclipse 3.5 I am running this on mac (snow leopard). java version 1.6.0_15 Java(TM) SE Runtime Environment (build 1.6.0_15-b03-219) Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-90, mixed mode) On Nov 10, 10:36 am, Ikai L (Google) ika...@google.com wrote: Ilya, Are you looking to persist objects for a lifetime of a session, or are you looking to minimize the logic you are using in your JSPs? As a general design principle, we recommend that you minimize usage of session scope. Variables bound to session scope are serialized and stored to distributed memory, and as a result, it will work best if you use it to pass around small, simple, immutable objects. If you're looking to pass a variable to a view, Java Servlets have a concept of page scope as well as session scope. You don't need to store a variable in session scope if you just want to dispatch the request to a JSP. For instance, you can define a Servlet that looks like this: public class MyServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String myVar = this is a string that will be passed to the JSP; request.setAttribute(myVar, myVar); RequestDispatcher dispatcher = request.getRequestDispatcher(/WEB-INF/my.jsp); dispatcher.forward(request, response); } } In my.jsp, you can now refer to this variable: %@ page isELIgnored=false % body h1${myVar}/h1 /body Ikai Lan Developer Programs Engineer, Google App Engine On Tue, Nov 10, 2009 at 2:39 PM, IlyaE ilyaelk...@gmail.com wrote: Well as i found out, session attributes don't always guarantee that they are sent back to the same JVM thus i keep getting null objects in my view. While i saw a similar discussion before the only examples i found were for Python. I'm looking for a simple java example that saves an object in the servlet and retrieves it in the jsp. On Nov 9, 5:44 pm, victor victoraco...@gmail.com wrote: What issue are you encountering? When you make changes to a session object state, make sure to explicitly call the session.setAttribute(you session ID, you modified session state object) again. i think there is an issue discussed about this before. On Nov 9, 10:58 am, IlyaE ilyaelk...@gmail.com wrote: Does anyone have a java session handleing example? It seems that saving objects in the session only works locally. -- 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=. -- 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.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Can't send mail with attachment using JavaMail API
I'm just sending a simple mail from my Gmail account with an embedded gif image. I can perfectly read it from my mail servlet handler but when I try to relay it (cf. code from first message) I get this annoying Converting attachment data failed error which seems to be specific to GAE. Here is the mail sent data : MIME-Version: 1.0 Sender: x...@gmail.com Received: by 10.142.204.15 with HTTP; Wed, 18 Nov 2009 13:57:20 -0800 (PST) Date: Wed, 18 Nov 2009 22:57:20 +0100 Delivered-To: x...@gmail.com X-Google-Sender-Auth: c9f34852bdb4f249 Message-ID: 75c1488c0911181357w4e8efdc2r7e82d8e1c3e03...@mail.gmail.com Subject: Test From: Francois MASUREL x...@mably.com To: contact-test contact-t...@webwinewatch.appspotmail.com Content-Type: multipart/related; boundary=001636e90e61aa516e0478ac5398 --001636e90e61aa516e0478ac5398 Content-Type: multipart/alternative; boundary=001636e90e61aa516b0478ac5397 --001636e90e61aa516b0478ac5397 Content-Type: text/plain; charset=UTF-8 [image: ? ui=2view=attth=125094c9bff3199battid=0.1disp=attdrealattid=ii_125094c9bff3199bzw] --001636e90e61aa516b0478ac5397 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable img title=3D? ui=3D2amp;view=3Dattamp;th=3D125094c9bff3199bamp;attid=3D= 0.1amp;disp=3Dattdamp;realattid=3Dii_125094c9bff3199bamp;zw alt=3D?ui= =3D2amp;view=3Dattamp;th=3D125094c9bff3199bamp;attid=3D0.1amp;disp=3Dat= tdamp;realattid=3Dii_125094c9bff3199bamp;zw src=3Dcid:ii_125094c9bff319= 9bbr br --001636e90e61aa516b0478ac5397-- --001636e90e61aa516e0478ac5398 Content-Type: image/gif; name=enveloppe.gif Content-Transfer-Encoding: base64 Content-ID: ii_125094c9bff3199b X-Attachment-Id: ii_125094c9bff3199b R0lGODlhEAAQAPeYAP39/tHR5MrK4fLy99PT6NfX6Nvb6/ f3+ff3+uDg7sPD3fHx9ra206qqyrKy 0eLi8Onp8bCwz +jo8cvL4WVlm7y81cLC2fPz96ysyrCwzcXF3c7O487O4tDQ5Le30+fn8cvL4ufn 8PDw9/Ly+fDw9PLy+N7e66Skx8/ P46mpymBglNLS5KKixoWFsYaGs56ewNXV5pqawKyszuTk7pyc wdra6Pr6/ Ht7qnt7qXl5qry82LGx0MbG3pCQsrOz0qyszZubucjI3eLi7eDg6eDg7X5+rJSUu9zc 54uLtvz8/b+/2KenyPX1+K6uzpmZwOvr9a6uz8XF3Ovr9tLS5uPj8Hx8qvv7/ ZiYwLm50NPT5tjY 6K+v0M7O5IGBqtzc68/ P3mpqnoeHsLCwynJypNjY60ZGgJ2dw1hYjc7O4bi40nh4qWlpnNjY5fn5 +5SUvcTE2oCAqbOz0Le31tzc7L292vj4+sPD2by81unp8s/P5s3N3fPz +VxckqOjyHZ2psLC23p6 pt3d7d7e7PDw+L292JOTu/z8/Kury7Ozyra20ubm8MTE1/b2/Pn5/ Hd3qJCQvOnp876+2tHR5tHR 4oaGrbW10pmZv/7+/v/// wAA ACH5BAEAAJgALAAQABAA AAjlADEJHCiwzSQjamYQXIjAAo0fAq5gWChwgB03PiBdkhDkxgKCITywiLLn0qUkU2A4ESPQRKIm K5iYNIlHCREefg5gMjNBBICZAKx4SUGlQA4smOJw +BAAjaJLABh1aBCITJ8uNmrIuDRAS4Uldwyk OZQFhQIKXxCcEGLSkCBLOKowoKNDARJKmN5AMQmghIBIEfKAICTnURlMFwotuNQogYYHcwJsYDDm DCKBGXZcGiQpgIECf1zwAUJiIIQWI6RwSUAghooeQyi +cPCEwBYwcI5QFMimSCVHgPTsHlgnzJpF OncHBAA7 --001636e90e61aa516e0478ac5398-- On Nov 18, 10:34 pm, Ikai L (Google) ika...@google.com wrote: François, I'm not familiar with any standards with regard to inline images. Do you have this working outside of App Engine? Do you have working code from that? If there are discrepancies in our implementation of javax.mail.* and standard implementations we should be aware. On Mon, Nov 16, 2009 at 10:30 PM, mably fm2...@mably.com wrote: In fact standards attachments works. But it's not what I'm trying do do. I'm need to relay HTML messages with inline images and this is still not working. Is it a kind of limitation of GAE or is it supposed to work ? Thanx for your help. François On 16 nov, 23:09, mably fm2...@mably.com wrote: Hi Ikai, thanx for you help. I've copy pasted your code on my webapp (webwinewatch), I've no error but the mail isn't correctly relayed, all attachements are removed. I've just modified the sender, from and recipient lines : message.setSender(new InternetAddress(myaddress@gmail.com, Relay account)); message.setFrom(message.getSender()); message.setRecipient(Message.RecipientType.TO, message.getSender()); Do you have any clue ? You can test it, sending an email to : contact- t...@webwinewatch.appspotmail.com Thanx again for your help. On 16 nov, 21:35, Ikai L (Google) ika...@google.com wrote: I couldn't reproduce your exact error, but I was able to put together a working example of an inbound email handler to relay messages. I'm going to expand the documentation about processing inbound emails. Here's some working code:http://pastie.org/701517 Does this example help any? Code is also pasted below, but it'll be easier for you to look at the Pastie. import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest;
Re: [appengine-java] Re: Can't send mail with attachment using JavaMail API
What I mean is, is this code working on a different mail server? On Wed, Nov 18, 2009 at 2:00 PM, mably fm2...@mably.com wrote: I'm just sending a simple mail from my Gmail account with an embedded gif image. I can perfectly read it from my mail servlet handler but when I try to relay it (cf. code from first message) I get this annoying Converting attachment data failed error which seems to be specific to GAE. Here is the mail sent data : MIME-Version: 1.0 Sender: x...@gmail.com Received: by 10.142.204.15 with HTTP; Wed, 18 Nov 2009 13:57:20 -0800 (PST) Date: Wed, 18 Nov 2009 22:57:20 +0100 Delivered-To: x...@gmail.com X-Google-Sender-Auth: c9f34852bdb4f249 Message-ID: 75c1488c0911181357w4e8efdc2r7e82d8e1c3e03...@mail.gmail.com Subject: Test From: Francois MASUREL x...@mably.com To: contact-test contact-t...@webwinewatch.appspotmail.com Content-Type: multipart/related; boundary=001636e90e61aa516e0478ac5398 --001636e90e61aa516e0478ac5398 Content-Type: multipart/alternative; boundary=001636e90e61aa516b0478ac5397 --001636e90e61aa516b0478ac5397 Content-Type: text/plain; charset=UTF-8 [image: ? ui=2view=attth=125094c9bff3199battid=0.1disp=attdrealattid=ii_125094c9bff3199bzw] --001636e90e61aa516b0478ac5397 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable img title=3D? ui=3D2amp;view=3Dattamp;th=3D125094c9bff3199bamp;attid=3D= 0.1amp;disp=3Dattdamp;realattid=3Dii_125094c9bff3199bamp;zw alt=3D?ui= =3D2amp;view=3Dattamp;th=3D125094c9bff3199bamp;attid=3D0.1amp;disp=3Dat= tdamp;realattid=3Dii_125094c9bff3199bamp;zw src=3Dcid:ii_125094c9bff319= 9bbr br --001636e90e61aa516b0478ac5397-- --001636e90e61aa516e0478ac5398 Content-Type: image/gif; name=enveloppe.gif Content-Transfer-Encoding: base64 Content-ID: ii_125094c9bff3199b X-Attachment-Id: ii_125094c9bff3199b R0lGODlhEAAQAPeYAP39/tHR5MrK4fLy99PT6NfX6Nvb6/ f3+ff3+uDg7sPD3fHx9ra206qqyrKy 0eLi8Onp8bCwz +jo8cvL4WVlm7y81cLC2fPz96ysyrCwzcXF3c7O487O4tDQ5Le30+fn8cvL4ufn 8PDw9/Ly+fDw9PLy+N7e66Skx8/ P46mpymBglNLS5KKixoWFsYaGs56ewNXV5pqawKyszuTk7pyc wdra6Pr6/ Ht7qnt7qXl5qry82LGx0MbG3pCQsrOz0qyszZubucjI3eLi7eDg6eDg7X5+rJSUu9zc 54uLtvz8/b+/2KenyPX1+K6uzpmZwOvr9a6uz8XF3Ovr9tLS5uPj8Hx8qvv7/ ZiYwLm50NPT5tjY 6K+v0M7O5IGBqtzc68/ P3mpqnoeHsLCwynJypNjY60ZGgJ2dw1hYjc7O4bi40nh4qWlpnNjY5fn5 +5SUvcTE2oCAqbOz0Le31tzc7L292vj4+sPD2by81unp8s/P5s3N3fPz +VxckqOjyHZ2psLC23p6 pt3d7d7e7PDw+L292JOTu/z8/Kury7Ozyra20ubm8MTE1/b2/Pn5/ Hd3qJCQvOnp876+2tHR5tHR 4oaGrbW10pmZv/7+/v/// wAA ACH5BAEAAJgALAAQABAA AAjlADEJHCiwzSQjamYQXIjAAo0fAq5gWChwgB03PiBdkhDkxgKCITywiLLn0qUkU2A4ESPQRKIm K5iYNIlHCREefg5gMjNBBICZAKx4SUGlQA4smOJw +BAAjaJLABh1aBCITJ8uNmrIuDRAS4Uldwyk OZQFhQIKXxCcEGLSkCBLOKowoKNDARJKmN5AMQmghIBIEfKAICTnURlMFwotuNQogYYHcwJsYDDm DCKBGXZcGiQpgIECf1zwAUJiIIQWI6RwSUAghooeQyi +cPCEwBYwcI5QFMimSCVHgPTsHlgnzJpF OncHBAA7 --001636e90e61aa516e0478ac5398-- On Nov 18, 10:34 pm, Ikai L (Google) ika...@google.com wrote: François, I'm not familiar with any standards with regard to inline images. Do you have this working outside of App Engine? Do you have working code from that? If there are discrepancies in our implementation of javax.mail.* and standard implementations we should be aware. On Mon, Nov 16, 2009 at 10:30 PM, mably fm2...@mably.com wrote: In fact standards attachments works. But it's not what I'm trying do do. I'm need to relay HTML messages with inline images and this is still not working. Is it a kind of limitation of GAE or is it supposed to work ? Thanx for your help. François On 16 nov, 23:09, mably fm2...@mably.com wrote: Hi Ikai, thanx for you help. I've copy pasted your code on my webapp (webwinewatch), I've no error but the mail isn't correctly relayed, all attachements are removed. I've just modified the sender, from and recipient lines : message.setSender(new InternetAddress(myaddress@gmail.com, Relay account)); message.setFrom(message.getSender()); message.setRecipient(Message.RecipientType.TO, message.getSender()); Do you have any clue ? You can test it, sending an email to : contact- t...@webwinewatch.appspotmail.com Thanx again for your help. On 16 nov, 21:35, Ikai L (Google) ika...@google.com wrote: I couldn't reproduce your exact error, but I was able to put together a working example of an inbound email handler to relay messages. I'm going to expand the documentation about processing inbound emails. Here's
[appengine-java] Re: Looking for Bulk Loader beta testers
Hi everyone, Thanks for the response so far--we'll be getting back to you over the next few days. I'd like to point out an existing feature which will be helpful to many of you: --dump and --restore. This will download or upload all of the entities for a particular Kind and save them in a local sqlite database. It's useful for general backup (e.g. a weekly backup), and also useful for moving data across applications, such as between your app running on the dev_appserver and on App Engine, or to load a staging instance with a known set of test data. You can find more information here: http://code.google.com/appengine/docs/python/tools/uploadingdata.html#Downloading_and_Uploading_All_Data Also, for Java developers, there is a remote API handler available; adding following to your web xml file should work (disclaimer: I have not yet personally tested this.) servlet servlet-nameremoteapi/servlet-name servlet-classcom.google.apphosting.utils.remoteapi.RemoteApiServlet/servlet-class /servlet servlet-mapping servlet-nameremoteapi/servlet-name url-pattern/remote_api/url-pattern /servlet-mapping security-constraint web-resource-collection web-resource-nameremoteapi/web-resource-name url-pattern/remote_api/url-pattern /web-resource-collection auth-constraint role-nameadmin/role-name /auth-constraint /security-constraint --Matthew On Tue, Nov 17, 2009 at 12:53 PM, Matthew Blain matthew.bl...@google.comwrote: Hi App Engine developers, We're working on some improvements and additions to the bulk loader to make it easier to move data between the App Engine Datastore and other data files you may have. If you're doing this right now, we're looking for some beta testers. Two specific issues we're addressing at this time are: * More language-neutral: Java developers, this will help you! * More format-neutral: If you use some format other than CSV, this will help you! If you're interested, fill out the form at https://spreadsheets.google.com/viewform?formkey=dC15V2hwczhpZ1VVWFhPZGhXR1dydUE6MQ to get started. --Matthew -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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=.
[appengine-java] Re: Can't send mail with attachment using JavaMail API
Of course, the code above doesn't need to be run in mail handler servlet :-) On Nov 19, 12:01 am, mably fm2...@mably.com wrote: I've written a simple class sending an HTML email with an embedded image (cf. below) via GMail SMTP. It works perfectly fine when run locally from Eclipse. The same code in a GAE mail servlet handler produce the infamous Converting attachment data failed error. So it really seems to be a problem in GAE javamail implementation. /* * Copyright (C) 2009 Francois Masurel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/. */ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; /** * @author Francois * */ public class GMailSMTP { private static final String SMTP_HOST_NAME = smtp.gmail.com; private static final int SMTP_HOST_PORT = 465; private static final String SMTP_AUTH_USER = x...@gmail.com; private static final String SMTP_AUTH_PWD = yyy; public static void main(String[] args) throws Exception{ new GMailSMTP().test(); } public void test() throws Exception{ Properties props = new Properties(); props.put(mail.transport.protocol, smtps); props.put(mail.smtps.host, SMTP_HOST_NAME); props.put(mail.smtps.auth, true); // props.put(mail.smtps.quitwait, false); String from = SMTP_AUTH_USER; String to = SMTP_AUTH_USER; String subject = Testing SMTP-SSL; String htmlText = h1Hello/h1img src=\cid:image\; byte[] imgData = this.obtainByteData(enveloppe.gif); Session mailSession = Session.getDefaultInstance(props); mailSession.setDebug(true); Message msg = new MimeMessage(mailSession); msg.setFrom(new InternetAddress(from)); msg.addRecipient(Message.RecipientType.TO, new InternetAddress (to)); msg.setSubject(subject); Multipart mp = new MimeMultipart(related); MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent(htmlText, text/html); mp.addBodyPart(htmlPart); MimeBodyPart attachment = new MimeBodyPart(); attachment.setFileName(test.gif); attachment.setContent(imgData, image/gif); attachment.setHeader(Content-ID,image); mp.addBodyPart(attachment); msg.setContent(mp); Transport transport = mailSession.getTransport(); transport.connect (SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD); transport.sendMessage(msg, msg.getRecipients(Message.RecipientType.TO)); transport.close(); } /** * Constructs a byte array and fills it with data that is read from the * specified resource. * @param filename the path to the resource * @return the specified resource as a byte array * @throws java.io.IOException if the resource cannot be read, or the * bytes cannot be written, or the streams cannot be closed */ private byte[] obtainByteData(String filename) throws IOException { InputStream inputStream = getClass().getResourceAsStream (filename); ByteArrayOutputStream outputStream = new ByteArrayOutputStream (1024); byte[] bytes = new byte[512]; // Read bytes from the input stream in bytes.length-sized chunks and write // them into the output stream int readBytes; while ((readBytes = inputStream.read(bytes)) 0) { outputStream.write(bytes, 0, readBytes); } // Convert the contents of the output stream into a byte array byte[] byteData = outputStream.toByteArray(); // Close the streams inputStream.close(); outputStream.close(); return byteData; } } On Nov 18, 11:11 pm, Ikai L (Google) ika...@google.com wrote: What I mean is, is this code working on a different mail server? On Wed, Nov 18, 2009 at 2:00 PM, mably fm2...@mably.com wrote: I'm just sending a simple
Re: [appengine-java] Re: Can't send mail with attachment using JavaMail API
That's good information to know. We are not using Sun's JavaMail implementation, so it's possible there are points of incompatibility. There's one last thing you may want to try: http://code.google.com/appengine/docs/java/javadoc/com/google/appengine/api/mail/package-summary.html The above page documents the Low-Level API. Try creating an email object via that API, setting the Content-ID of the attachment and the HTML tag to point to the cid. You're already doing that in the example you sent using javax.mail, but I'm wondering if the low-level API is capable of doing this. If not, I'll open an issue. On Wed, Nov 18, 2009 at 3:06 PM, mably fm2...@mably.com wrote: Of course, the code above doesn't need to be run in mail handler servlet :-) On Nov 19, 12:01 am, mably fm2...@mably.com wrote: I've written a simple class sending an HTML email with an embedded image (cf. below) via GMail SMTP. It works perfectly fine when run locally from Eclipse. The same code in a GAE mail servlet handler produce the infamous Converting attachment data failed error. So it really seems to be a problem in GAE javamail implementation. /* * Copyright (C) 2009 Francois Masurel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/. */ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; /** * @author Francois * */ public class GMailSMTP { private static final String SMTP_HOST_NAME = smtp.gmail.com; private static final int SMTP_HOST_PORT = 465; private static final String SMTP_AUTH_USER = x...@gmail.com; private static final String SMTP_AUTH_PWD = yyy; public static void main(String[] args) throws Exception{ new GMailSMTP().test(); } public void test() throws Exception{ Properties props = new Properties(); props.put(mail.transport.protocol, smtps); props.put(mail.smtps.host, SMTP_HOST_NAME); props.put(mail.smtps.auth, true); // props.put(mail.smtps.quitwait, false); String from = SMTP_AUTH_USER; String to = SMTP_AUTH_USER; String subject = Testing SMTP-SSL; String htmlText = h1Hello/h1img src=\cid:image\; byte[] imgData = this.obtainByteData(enveloppe.gif); Session mailSession = Session.getDefaultInstance(props); mailSession.setDebug(true); Message msg = new MimeMessage(mailSession); msg.setFrom(new InternetAddress(from)); msg.addRecipient(Message.RecipientType.TO, new InternetAddress (to)); msg.setSubject(subject); Multipart mp = new MimeMultipart(related); MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent(htmlText, text/html); mp.addBodyPart(htmlPart); MimeBodyPart attachment = new MimeBodyPart(); attachment.setFileName(test.gif); attachment.setContent(imgData, image/gif); attachment.setHeader(Content-ID,image); mp.addBodyPart(attachment); msg.setContent(mp); Transport transport = mailSession.getTransport(); transport.connect (SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD); transport.sendMessage(msg, msg.getRecipients(Message.RecipientType.TO)); transport.close(); } /** * Constructs a byte array and fills it with data that is read from the * specified resource. * @param filename the path to the resource * @return the specified resource as a byte array * @throws java.io.IOException if the resource cannot be read, or the * bytes cannot be written, or the streams cannot be closed */ private byte[] obtainByteData(String filename) throws IOException { InputStream inputStream = getClass().getResourceAsStream (filename); ByteArrayOutputStream outputStream = new ByteArrayOutputStream (1024);
[appengine-java] Re: Can't send mail with attachment using JavaMail API
I haven't found a way to set a Content-ID header on a mimebodypart/ attachment using the low-level API. The MailService.Attachment class is quite rudimentary (only filename and data). May be some part of the low level API are still undocumented ? Thanx for all. On Nov 19, 12:25 am, Ikai L (Google) ika...@google.com wrote: That's good information to know. We are not using Sun's JavaMail implementation, so it's possible there are points of incompatibility. There's one last thing you may want to try: http://code.google.com/appengine/docs/java/javadoc/com/google/appengi... The above page documents the Low-Level API. Try creating an email object via that API, setting the Content-ID of the attachment and the HTML tag to point to the cid. You're already doing that in the example you sent using javax.mail, but I'm wondering if the low-level API is capable of doing this. If not, I'll open an issue. On Wed, Nov 18, 2009 at 3:06 PM, mably fm2...@mably.com wrote: Of course, the code above doesn't need to be run in mail handler servlet :-) On Nov 19, 12:01 am, mably fm2...@mably.com wrote: I've written a simple class sending an HTML email with an embedded image (cf. below) via GMail SMTP. It works perfectly fine when run locally from Eclipse. The same code in a GAE mail servlet handler produce the infamous Converting attachment data failed error. So it really seems to be a problem in GAE javamail implementation. /* * Copyright (C) 2009 Francois Masurel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/. */ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; /** * @author Francois * */ public class GMailSMTP { private static final String SMTP_HOST_NAME = smtp.gmail.com; private static final int SMTP_HOST_PORT = 465; private static final String SMTP_AUTH_USER = x...@gmail.com; private static final String SMTP_AUTH_PWD = yyy; public static void main(String[] args) throws Exception{ new GMailSMTP().test(); } public void test() throws Exception{ Properties props = new Properties(); props.put(mail.transport.protocol, smtps); props.put(mail.smtps.host, SMTP_HOST_NAME); props.put(mail.smtps.auth, true); // props.put(mail.smtps.quitwait, false); String from = SMTP_AUTH_USER; String to = SMTP_AUTH_USER; String subject = Testing SMTP-SSL; String htmlText = h1Hello/h1img src=\cid:image\; byte[] imgData = this.obtainByteData(enveloppe.gif); Session mailSession = Session.getDefaultInstance(props); mailSession.setDebug(true); Message msg = new MimeMessage(mailSession); msg.setFrom(new InternetAddress(from)); msg.addRecipient(Message.RecipientType.TO, new InternetAddress (to)); msg.setSubject(subject); Multipart mp = new MimeMultipart(related); MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent(htmlText, text/html); mp.addBodyPart(htmlPart); MimeBodyPart attachment = new MimeBodyPart(); attachment.setFileName(test.gif); attachment.setContent(imgData, image/gif); attachment.setHeader(Content-ID,image); mp.addBodyPart(attachment); msg.setContent(mp); Transport transport = mailSession.getTransport(); transport.connect (SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD); transport.sendMessage(msg, msg.getRecipients(Message.RecipientType.TO)); transport.close(); } /** * Constructs a byte array and fills it with data that is read from the * specified resource. * @param filename the path to the resource * @return the specified resource as a byte array * @throws
Re: [appengine-java] Problems with large request/response headers
Matt, There probably isn't anything you'll be able to do in the meantime. You may not see this when deployed since we are not using a different servlet engine in production. Can you go ahead and open an issue here for us to upgrade our SDK's version of Jetty? http://code.google.com/p/googleappengine/issues/list?can=2q=jetty It's something we'd eventually want to do anyway, and getting it into the issue tracker will mean it's on our radar. On Wed, Nov 18, 2009 at 8:32 AM, Matthew McGinty mcgin...@gmail.com wrote: Ikai, Reading all of the Jetty bug report you found, I see that it is possible to configure the size of the header buffer used by Jetty. This is done in the jetty.xml file. I don't see that file within my GAE project. I see appengine-web.xml. Does GAE expose/use jetty.xml or some equivalent? If so, where would I find it? If I can configure the Jetty that is bundled with GAE Dev server, then that would solve my problem. Thanks. Matt On Wed, Nov 18, 2009 at 11:23 AM, Matthew McGinty mcgin...@gmail.com wrote: Thanks Ikai for responding and for finding that Jetty bug report. It is marked as fixed in Jetty 6.1.11. Do you know if that fix is in the version of Jetty that is bundled with the GAE Dev server? I can't store that data in the session because the data being stored in the cookies is not being placed there by me. It is being placed there by the Application Server software I'm using which is running on top of the GAE. Specifically it is being placed there by OpenBD Google which is a version of BlueDragon (a CFML Engine) ported to run on GAE. BlueDragon is the Application Server that powers MySpace. http://www.openbluedragon.org/ http://wiki.openbluedragon.org/wiki/index.php/Category:GoogleAppEngine Storing such data in cookies is a requirement/feature of the CFML Engine. That is how Adobe's ColdFusion CFML Engine functions. It is jjust name/value pair data (String data)... variable defined to be in something called the client scope (in CFML speak). BD may be configured to store client scoped variables in either cookies or a database... so using the database option would work around this problem but it still seems like something that should be fixed for GAE. BlueDragon runs on top of various platforms: Microsoft .NET framework WebSphere Weblogic ServletExec and behind commercial grade webservers (IIS, and Apache) and does not exhibit this problem in any of those environments... only with Jetty. Matt On Mon, Nov 16, 2009 at 5:36 PM, Ikai L (Google) ika...@google.com wrote: Matt, This looks like it may be a JeTTy issue: http://jira.codehaus.org/browse/JETTY-336 That being said, I'm curious as to what data you are storing in the cookie. Less than 1.5% of sites pass cookies larger than 1501 bytes, and there are performance implications for passing large amounts of cookies: http://yuiblog.com/blog/2007/03/01/performance-research-part-3 Is this data you can store in the session instead? On Fri, Nov 13, 2009 at 12:05 PM, Matthew McGinty mcgin...@gmail.com wrote: I'm using the GAE Java Dev Server (i.e. Jetty). When I request a page that sends a large amount of cookie data to the browser and then re-request the page (so that the browser sends the cookies back to the server) I get this stacktrace: == Nov 13, 2009 6:35:13 PM com.google.apphosting.utils.jetty.JettyLogger warn WARNING: handle failed java.io.IOException: FULL head at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:276) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205) 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) == The behavior I see is that the browser receives what seems to be a completely empty response body, and the access log does not show the request at all (likely because the request/response protocol was halted when the exception occured). If I configure my browser to send its requests through a diagnostic proxy tool, I can see that the request headers being sent are about 5k total. But the response takes 2-3 minutes to come. Once it does, the proxy tool shows me only response headers (no response body): === HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 Expires: Thu, 01 Jan 1970 00:00:00 GMT Set-Cookie: cookie name 1=cookie value 1 Set-Cookie: cookie name 2=cookie value 2 Set-Cookie: cookie name 3=cookie value 3 Transfer-Encoding: chunked Server: Jetty(6.1.x) === which I suppose explains why the browser renders it as an empty response. I found a clue here:
[appengine-java] Unable to update app: null
I received the following error when I tried to deploy an application to google hosted appengine (GAE/J). Any idea what could have cause the problem? com.google.appengine.tools.admin.AdminException: Unable to update app: null at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:62) 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) Caused by: java.lang.NullPointerException at com.google.apphosting.utils.glob.GlobIntersector.extractPrefix (GlobIntersector.java:273) at com.google.apphosting.utils.glob.GlobIntersector.doIntersectTwo (GlobIntersector.java:151) at com.google.apphosting.utils.glob.GlobIntersector.doIntersect (GlobIntersector.java:133) at com.google.apphosting.utils.glob.GlobIntersector.getIntersection (GlobIntersector.java:65) at com.google.appengine.tools.admin.AppYamlTranslator $AbstractHandlerGenerator.createGlobPatterns(AppYamlTranslator.java: 249) at com.google.appengine.tools.admin.AppYamlTranslator $AbstractHandlerGenerator.translate(AppYamlTranslator.java:234) at com.google.appengine.tools.admin.AppYamlTranslator.translateWebXml (AppYamlTranslator.java:103) at com.google.appengine.tools.admin.AppYamlTranslator.getYaml (AppYamlTranslator.java:69) at com.google.appengine.tools.admin.AppVersionUpload.getAppYaml (AppVersionUpload.java:185) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:241) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) ... 4 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=.
Re: [appengine-java] 500 Internal Server Error, when update appl
- aapcore - appengine-java-sdk-1.2.6 - Win XP - Several first times it was work fine - no proxy On Wed, Nov 18, 2009 at 11:42 PM, Ikai L (Google) ika...@google.com wrote: What is your app ID? Can you also provide the following details: - application ID - SDK version. Also include whether it is Python or Java - Operating System - Whether this is the first push or not - Are you behind a proxy? As much information as you can give me would be helpful. On Mon, Nov 16, 2009 at 10:25 PM, Jackob jrozn...@gmail.com wrote: The problem is not fixed , i can't upload update. The happened only with my account? On Mon, Nov 16, 2009 at 11:59 PM, Ikai L (Google) ika...@google.comwrote: Have you been able to update this application? On Wed, Nov 11, 2009 at 11:53 PM, Jackroz jrozn...@gmail.com wrote: Hi Team, Last two day i can't update appl, what is wrong? Please see detail log: Unable to update: java.io.IOException: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send (ServerConnection.java:143) at com.google.appengine.tools.admin.ServerConnection.post (ServerConnection.java:81) at com.google.appengine.tools.admin.AppVersionUpload.send (AppVersionUpload.java:427) at com.google.appengine.tools.admin.AppVersionUpload.cloneFiles (AppVersionUpload.java:293) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:255) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute (AppCfg.java:521) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58) at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54) com.google.appengine.tools.admin.AdminException: Unable to update app: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:62) at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute (AppCfg.java:521) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130) at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58) at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54) Caused by: java.io.IOException: Error posting to URL: http://appengine.google.com/api/appversion/cloneblobs?app_id=aapcoreversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send (ServerConnection.java:143) at com.google.appengine.tools.admin.ServerConnection.post (ServerConnection.java:81) at com.google.appengine.tools.admin.AppVersionUpload.send (AppVersionUpload.java:427) at com.google.appengine.tools.admin.AppVersionUpload.cloneFiles (AppVersionUpload.java:293) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:255) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) ... 4 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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=. -- 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=. -- Best regards, Yakov Liskoff Mobile: 972-54-4512963 Email: jrozn...@gmail.com Web: http://www.vcomm.co.nr IM: jackobl (Skype) - The contents of this email and any attachments are confidential. It is intended for the named recipient(s) only.
[appengine-java] Re: Unable to update app: null
I solved my own problem. It turned out an empty url-pattern / in security-constraint web-resource-collection in my web.xml is causing this error. On Nov 19, 11:10 am, Leonard Siu leonard@gmail.com wrote: I received the following error when I tried to deploy an application to google hosted appengine (GAE/J). Any idea what could have cause the problem? com.google.appengine.tools.admin.AdminException: Unable to update app: null at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:62) 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) Caused by: java.lang.NullPointerException at com.google.apphosting.utils.glob.GlobIntersector.extractPrefix (GlobIntersector.java:273) at com.google.apphosting.utils.glob.GlobIntersector.doIntersectTwo (GlobIntersector.java:151) at com.google.apphosting.utils.glob.GlobIntersector.doIntersect (GlobIntersector.java:133) at com.google.apphosting.utils.glob.GlobIntersector.getIntersection (GlobIntersector.java:65) at com.google.appengine.tools.admin.AppYamlTranslator $AbstractHandlerGenerator.createGlobPatterns(AppYamlTranslator.java: 249) at com.google.appengine.tools.admin.AppYamlTranslator $AbstractHandlerGenerator.translate(AppYamlTranslator.java:234) at com.google.appengine.tools.admin.AppYamlTranslator.translateWebXml (AppYamlTranslator.java:103) at com.google.appengine.tools.admin.AppYamlTranslator.getYaml (AppYamlTranslator.java:69) at com.google.appengine.tools.admin.AppVersionUpload.getAppYaml (AppVersionUpload.java:185) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction (AppVersionUpload.java:241) at com.google.appengine.tools.admin.AppVersionUpload.doUpload (AppVersionUpload.java:98) at com.google.appengine.tools.admin.AppAdminImpl.update (AppAdminImpl.java:56) ... 4 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=.
[appengine-java] Re: GAE status / availalbility problems?
Excellent news. How long did it take to resolve this matter and what was the impact to your Users? I assume you would agree we could avoid this type of problem by only using the data types listed here right? http://code.google.com/appengine/docs/java/datastore/dataclasses.html#Core_Value_Types On Nov 18, 3:27 pm, Dmitry Anipko dmitry.ani...@gmail.com wrote: Thanks Jason for help. In our case the problem was caused by usage of byte[] field in a persisted class. Somehow though, it wasn't causing any problems immediately, but only after a few objects have been saved. Per Jason, usage of byte[] in JDO on GAE isn't supported. On Wed, Nov 18, 2009 at 1:00 PM, Diana Cruise diana.l.cru...@gmail.com wrote: What's the latest here Dmitry...can GAE handle more than 100 request or not? Please update where you are with this problem. Thanks. On Nov 9, 5:15 pm, Dmitry Anipko dmitry.ani...@gmail.com wrote: Following up offline and will update with resolution later. On Mon, Nov 9, 2009 at 9:50 AM, Jason (Google) apija...@google.com wrote: As always, I need your application ID in order to help troubleshoot app-specific issues. Please provide that and any stack traces or other error messages you see in your application's logs. - Jason On Fri, Nov 6, 2009 at 9:47 PM, Dmitry Anipko dmitry.ani...@gmail.com wrote: After some more experimentation, it looks like there is something in the data store that is surfaced by our application: if I clean up the store for the application completely, using the web interface, then for the first ~100 request it works fine, but after some time, it starts producing those errors I wrote before - it can't query objects by index (and that problem persists until I clean the store again). The second observation - although I don't know if it is related or not - is when the store for my app is in such state, and I try to view objects through the web interface, the web interfaces crashes with the error 500: Server Error A server error has occurred. Return to Applications screen » GAE folks, can someone please take a look - this is a blocking issue for my team, and I don't know how to proceed here without your help. Everything works just fine when I run it on a local development server. Thank you. On Nov 6, 11:05 am, Diana Cruise diana.l.cru...@gmail.com wrote: I see NO reply from GAE here regarding such a critical issue!!! Is your app still down, what is the status of your app? How are we supposed to put an application in production with GAE if such a problem can occur with NO response for 3 days? Is there another channel to raise such high-priority issues to get proper helpdesk response? On Nov 4, 1:58 am, Dmitry Anipko dmitry.ani...@gmail.com wrote: It is 11:56 Pacific 11/3/2009, are there any known issues withGAE right now? My application that has been working for a couple of months now today started producing failures for some queries from the data store (basically an object which has just been stored cannot be retrieved after that by key), and after some time started producing even htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// code.google.com/appengine/support/report/A your problem and mention this error message and the query that caused it./h2 h2/h2 /body/html The same application executes just fine in the localGAEdevelopment environment. Can folks fromGAEcomment if there is any maintenance going on right now or how could I get more details on what causing the failures (again the same code worked for quite some time now, so I think it is unlikely the code is the issue here). Thanks for your help.- Hide quoted text - - Show quoted text -- Hide quoted text - - Show quoted text - -- 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 athttp://groups.google.com/group/google-appengine-java?hl=en.- Hide quoted text - - Show quoted text - -- 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