[appengine-java] Re: Framework for java/jsp based dev supported by GAE

2009-10-19 Thread Derek Berube
er$ParseTask.call 
> (ConfigManager.java:787)
>   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
>   at java.util.concurrent.FutureTask.run(Unknown Source)
>   at com.sun.faces.config.ConfigManager.getConfigDocuments 
> (ConfigManager.java:656)
>   at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 
> 337)
>   ... 30 more
> C10-18 02:43AM 44.862
>
> Uncaught exception from servlet
> javax.servlet.UnavailableException: Initialization failed.
>   at  
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler 
> (AppVersionHandlerMap.java:200)
>   at  
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler 
> (AppVersionHandlerMap.java:168)
>   at  
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest 
> (JettyServletEngineAdapter.java:127)
>   at com.google.apphosting.runtime.JavaRuntime.handleRequest 
> (JavaRuntime.java:239)
>   at com.google.apphosting.base.RuntimePb$EvaluationRuntime 
> $6.handleBlockingRequest(RuntimePb.java:5135)
>   at com.google.apphosting.base.RuntimePb$EvaluationRuntime 
> $6.handleBlockingRequest(RuntimePb.java:5133)
>   at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest 
> (BlockingApplicationHandler.java:24)
>   at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 
> 363)
>   at com.google.net.rpc.impl.Server$2.run(Server.java:814)
>   at com.google.tracing.LocalTraceSpanRunnable.run 
> (LocalTraceSpanRunnable.java:56)
>   at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan 
> (LocalTraceSpanBuilder.java:516)
>   at com.google.net.rpc.impl.Server.startRpc(Server.java:769)
>   at com.google.net.rpc.impl.Server.processRequest(Server.java:351)
>   at com.google.net.rpc.impl.ServerConnection.messageReceived 
> (ServerConnection.java:437)
>   at com.google.net.rpc.impl.RpcConnection.parseMessages 
> (RpcConnection.java:319)
>   at com.google.net.rpc.impl.RpcConnection.dataReceived 
> (RpcConnection.java:290)
>   at com.google.net.async.Connection.handleReadEvent(Connection.java: 
> 436)
>   at com.google.net.async.EventDispatcher.processNetworkEvents 
> (EventDispatcher.java:762)
>   at com.google.net.async.EventDispatcher.internalLoop 
> (EventDispatcher.java:207)
>   at com.google.net.async.EventDispatcher.loop(EventDispatcher.java: 
> 101)
>   at com.google.net.rpc.RpcService.runUntilServerShutdown 
> (RpcService.java:251)
>   at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run 
> (JavaRuntime.java:396)
>   at java.lang.Thread.run(Unknown Source)
> Thankx and Regards
>
> Vik
> Founder
> www.sakshum.com
> www.sakshum.blogspot.com
>
>
> On Sun, Oct 18, 2009 at 3:11 PM, Vik  wrote:
> okies
>
> Great.. please update on the group for others benefit as well. I  
> find it pretty time consuming to build JSF  apps w/o IDE support in  
> case of GAE apps.
>
> Thankx and Regards
>
> Vik
> Founder
> www.sakshum.com
> www.sakshum.blogspot.com
>
>
> On Sun, Oct 18, 2009 at 7:52 AM, Derek Berube  
>  wrote:
> IMHO, the most important things that the Google AppEngine Plug-In  
> for Eclipse does is:
> Provide the ability to "create" a new AppEngine project.
> Launch the AppEngine runtime environment so you can test/debug your  
> code.
> Package and upload your AppEngine application to Google's cloud  
> infrastructure.
>
> Most of the other things that Eclipse does (code completion/tips)  
> work just fine with the 2.0 API.  About the only thing I find myself  
> struggling with is remembering all the options for the markup for  
> the various tags you use (whether it's the default JSF HTML  
> components, ADF Faces, ICEFaces, RichFaces, etc.).  Of course, help  
> is never more than a browser window away.
>
> I know that the 1.81 release of the ICEFaces runtime environment is  
> supposed to work on GAE.  I think RichFaces has problems because it  
> uses some of the AWT classes internally and those classes are not  
> available in the GAE runtime environment.
>
> As a general rule, when I'm learning a new API or technology, I tend  
> to prefer to do things the "hard way".  For me, it is a better way  
> to get to know how things work because you're forced to.  Once one  
> understands how and why things work the way they do and after they  
> have endured the "hard way", then they can appreciate what it is  
> that the tools do for you.  Believe me, I appreciate Netbeans,  
> IntelliJ, and Eclipse for all the amazing things they do for me -  
> largely because I know how hard 

[appengine-java] Re: Framework for java/jsp based dev supported by GAE

2009-10-19 Thread Derek Berube
er.java:787)
>   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
>   at java.util.concurrent.FutureTask.run(Unknown Source)
>   at com.sun.faces.config.ConfigManager.getConfigDocuments 
> (ConfigManager.java:656)
>   at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java: 
> 337)
>   ... 30 more
> C10-18 02:43AM 44.862
>
> Uncaught exception from servlet
> javax.servlet.UnavailableException: Initialization failed.
>   at  
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler 
> (AppVersionHandlerMap.java:200)
>   at  
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler 
> (AppVersionHandlerMap.java:168)
>   at  
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest 
> (JettyServletEngineAdapter.java:127)
>   at com.google.apphosting.runtime.JavaRuntime.handleRequest 
> (JavaRuntime.java:239)
>   at com.google.apphosting.base.RuntimePb$EvaluationRuntime 
> $6.handleBlockingRequest(RuntimePb.java:5135)
>   at com.google.apphosting.base.RuntimePb$EvaluationRuntime 
> $6.handleBlockingRequest(RuntimePb.java:5133)
>   at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest 
> (BlockingApplicationHandler.java:24)
>   at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 
> 363)
>   at com.google.net.rpc.impl.Server$2.run(Server.java:814)
>   at com.google.tracing.LocalTraceSpanRunnable.run 
> (LocalTraceSpanRunnable.java:56)
>   at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan 
> (LocalTraceSpanBuilder.java:516)
>   at com.google.net.rpc.impl.Server.startRpc(Server.java:769)
>   at com.google.net.rpc.impl.Server.processRequest(Server.java:351)
>   at com.google.net.rpc.impl.ServerConnection.messageReceived 
> (ServerConnection.java:437)
>   at com.google.net.rpc.impl.RpcConnection.parseMessages 
> (RpcConnection.java:319)
>   at com.google.net.rpc.impl.RpcConnection.dataReceived 
> (RpcConnection.java:290)
>   at com.google.net.async.Connection.handleReadEvent(Connection.java: 
> 436)
>   at com.google.net.async.EventDispatcher.processNetworkEvents 
> (EventDispatcher.java:762)
>   at com.google.net.async.EventDispatcher.internalLoop 
> (EventDispatcher.java:207)
>   at com.google.net.async.EventDispatcher.loop(EventDispatcher.java: 
> 101)
>   at com.google.net.rpc.RpcService.runUntilServerShutdown 
> (RpcService.java:251)
>   at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run 
> (JavaRuntime.java:396)
>   at java.lang.Thread.run(Unknown Source)
> Thankx and Regards
>
> Vik
> Founder
> www.sakshum.com
> www.sakshum.blogspot.com
>
>
> On Sun, Oct 18, 2009 at 3:11 PM, Vik  wrote:
> okies
>
> Great.. please update on the group for others benefit as well. I  
> find it pretty time consuming to build JSF  apps w/o IDE support in  
> case of GAE apps.
>
> Thankx and Regards
>
> Vik
> Founder
> www.sakshum.com
> www.sakshum.blogspot.com
>
>
> On Sun, Oct 18, 2009 at 7:52 AM, Derek Berube  
>  wrote:
> IMHO, the most important things that the Google AppEngine Plug-In  
> for Eclipse does is:
> Provide the ability to "create" a new AppEngine project.
> Launch the AppEngine runtime environment so you can test/debug your  
> code.
> Package and upload your AppEngine application to Google's cloud  
> infrastructure.
>
> Most of the other things that Eclipse does (code completion/tips)  
> work just fine with the 2.0 API.  About the only thing I find myself  
> struggling with is remembering all the options for the markup for  
> the various tags you use (whether it's the default JSF HTML  
> components, ADF Faces, ICEFaces, RichFaces, etc.).  Of course, help  
> is never more than a browser window away.
>
> I know that the 1.81 release of the ICEFaces runtime environment is  
> supposed to work on GAE.  I think RichFaces has problems because it  
> uses some of the AWT classes internally and those classes are not  
> available in the GAE runtime environment.
>
> As a general rule, when I'm learning a new API or technology, I tend  
> to prefer to do things the "hard way".  For me, it is a better way  
> to get to know how things work because you're forced to.  Once one  
> understands how and why things work the way they do and after they  
> have endured the "hard way", then they can appreciate what it is  
> that the tools do for you.  Believe me, I appreciate Netbeans,  
> IntelliJ, and Eclipse for all the amazing things they do for me -  
> largely because I know how hard it is to do things without them.
>
>

Re: [appengine-java] web.xml version="2.5" is not supported

2009-11-18 Thread Derek Berube
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
1506<http://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.jar<http://download.java.net/maven/glassfish/javax/el/el-api/1.1/el-api-1.1.jar>)
and Implementation
(el-impl-1.1jar<http://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:



  com.sun.faces.expressionFactory
  com.sun.el.ExpressionFactoryImpl


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  wrote:

> Hi all,
>
> I have been trying to use the following web.xml elements in GAE:
>
>
>
>*.jsp
>false
>
>  /WEB-INF/taglibs.jspf
>
>  true as-literal>
>
>  true
>
>
>
> 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:
>
> 
> 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=.
>
>
>

--

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

2009-11-18 Thread Derek Berube
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  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.
> (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=.
>
>
>

--

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] Re: JSF 2.0.1 java.lang.ClassNotFoundException: void

2009-11-28 Thread Derek Berube
A simple project (where the JSF2 framework initializes and a default page is 
displayed) is available at Google Code: http://code.google.com/p/jsf2template/. 
 This is the source code for the application I wrote developing the tutorial 
for configuring a JSF 2 project to run on Google App Engine - 
http://jsf2template.appspot.com/.

Derek


On Nov 23, 2009, at 1:55 PM, Alexandre Calvão wrote:

> Does anyone have a archetype project for GAE, whith the JSF Working ?
> 
> I could not do this think work.
>  
> Thanks
> 
> 
>  
> 2009/11/20 addy.bhardwaj 
> I had a similar issue. The way I fixed it was to configure state
> saving to client rather than server. For details check my blog
> http://consultingblogs.emc.com/jaddy/archive/2009/11/20/jsf2-in-google-app-engine.aspx
> 
> Let me know if this fixes your problem.
> 
> On Nov 12, 6:15 pm, Mirco Attocchi  wrote:
> > Problem using majorra 2.0.1 and GAE 1.2.6, but some times pages render
> > correctly.
> >
> > javax.servlet.ServletException: java.lang.RuntimeException:
> > java.lang.ClassNotFoundException: void
> > at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle
> > (AppVersionHandlerMap.java:240)
> > at org.mortbay.jetty.handler.HandlerWrapper.handle
> > (HandlerWrapper.java:139)
> > at org.mortbay.jetty.Server.handle(Server.java:313)
> > at 
> > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> > 506)
> > at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete
> > (HttpConnection.java:830)
> > at 
> > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable
> > (RpcRequestParser.java:76)
> > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
> > at
> > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceReques 
> > t
> > (JettyServletEngineAdapter.java:139)
> > at com.google.apphosting.runtime.JavaRuntime.handleRequest
> > (JavaRuntime.java:239)
> > at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5135)
> > at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5133)
> > at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest
> > (BlockingApplicationHandler.java:24)
> > at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
> > 363)
> > at com.google.net.rpc.impl.Server$2.run(Server.java:814)
> > at com.google.tracing.LocalTraceSpanRunnable.run
> > (LocalTraceSpanRunnable.java:56)
> > at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan
> > (LocalTraceSpanBuilder.java:516)
> > at com.google.net.rpc.impl.Server.startRpc(Server.java:769)
> > at com.google.net.rpc.impl.Server.processRequest(Server.java:351)
> > at com.google.net.rpc.impl.ServerConnection.messageReceived
> > (ServerConnection.java:437)
> > at com.google.net.rpc.impl.RpcConnection.parseMessages
> > (RpcConnection.java:319)
> > at com.google.net.rpc.impl.RpcConnection.dataReceived
> > (RpcConnection.java:290)
> > at com.google.net.async.Connection.handleReadEvent(Connection.java:
> > 436)
> > at com.google.net.async.EventDispatcher.processNetworkEvents
> > (EventDispatcher.java:762)
> > at com.google.net.async.EventDispatcher.internalLoop
> > (EventDispatcher.java:207)
> > at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
> > 101)
> > at com.google.net.rpc.RpcService.runUntilServerShutdown
> > (RpcService.java:251)
> > at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run
> > (JavaRuntime.java:396)
> > at java.lang.Thread.run(Unknown Source)
> > Caused by: java.lang.RuntimeException:
> > java.lang.ClassNotFoundException: void
> > at com.google.apphosting.runtime.jetty.SessionManager.deserialize
> > (SessionManager.java:389)
> > at com.google.apphosting.runtime.jetty.SessionManager.loadSession
> > (SessionManager.java:307)
> > at com.google.apphosting.runtime.jetty.SessionManager.getSession
> > (SessionManager.java:282)
> > at org.mortbay.jetty.servlet.AbstractSessionManager.getHttpSession
> > (AbstractSessionManager.java:237)
> > at org.mortbay.jetty.Request.getSession(Request.java:998)
> > at
> > com.sun.faces.application.WebappLifecycleListener.syncSessionScopedBeans
> > (WebappLifecycleListener.java:393)
> > at 
> > com.sun.faces.application.WebappLifecycleListener.requestDestroyed
> > (WebappLifecycleListener.java:117)
> > at com.sun.faces.config.ConfigureListener.requestDestroyed
> > (ConfigureListener.java:341)
> > at org.mortbay.jetty.handler.ContextHandler.handle
> > (ContextHandler.java:725)
> > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> > 405)
> > at com.google.apphosting.runtime.jetty.AppVersionHandlerMa

Re: [appengine-java] JSF 2.0.1 on GAE | java.lang.RuntimeException: java.io.NotSerializableException: com.sun.faces.context.flash.ELFlash

2009-12-13 Thread Derek Berube
Joe,

Your web.xml looks good and a quick look at the JSF RI source code shows that 
it is not Serializable (I just peeked at the JSF 2.0.2 code which was released 
on the 10th and the class isn't Serializable there).  As described in the 
source code for the javax.faces.context.Flash 
(http://www.docjar.com/docs/api/javax/faces/context/Flash.html) object 
indicates the following:

> The flash is an application scoped object that must be thread safe, and 
> provide a programming model that lets each session treat the flash as if it 
> was a session scoped object.

The reference implementation of the object should be Serializable in order to 
execute on the GAE platform.  It is probably worth filing a bug 
(https://javaserverfaces.dev.java.net/issues/) with Sun on the matter.

Derek


On Dec 10, 2009, at 2:18 PM, Sector7B wrote:

> Hi, followed the examples below{} for JSF on GAE:
> 
> {https://sites.google.com/a/wildstartech.com/adventures-in-java/Java-
> Platform-Enterprise-Edition/JavaServer-Faces/sun-javaserver-faces-
> reference-implementation/configuring-jsf-20-to-run-on-the-google-
> appengine/javaserverfaces-20-and-google-app-engine-compatibility-
> issues
> 
> https://sites.google.com/a/wildstartech.com/adventures-in-java/Java-Platform-Enterprise-Edition/JavaServer-Faces/sun-javaserver-faces-reference-implementation/configuring-jsf-20-to-run-on-the-google-appengine
> 
> http://java.dzone.com/news/jsf2-configuration-google-app}
> 
> When i run locally, just the example given it works fine.
> When i run live i get this error:
> java.lang.RuntimeException: java.io.NotSerializableException:
> com.sun.faces.context.flash.ELFlash
> 
> searches come up with nothing for me?  It would seem the engine
> requires ELFlash to be serializable, but I guess its not.
> http://www.docjar.com/docs/api/com/sun/faces/context/flash/ELFlash.html
> 
> It looks like a lot of people have gotten this to work, it seems weird
> i can't fine an example of this breaking for someone else.
> 
> Any thoughts?
> 
> Thanks
> 
> web.xml:
> 
>   
>javax.faces.STATE_SAVING_METHOD
>client
>  
>  
>  javax.faces.DEFAULT_SUFFIX
>.xhtml
>  
>  
>com.sun.faces.expressionFactory
>com.sun.el.ExpressionFactoryImpl
>
>  
>  
>com.sun.faces.expressionFactory
>com.sun.el.ExpressionFactoryImpl
>  
>  
>
>  Set this flag to true if you want the JavaServer Faces
>  Reference Implementation to validate the XML in your
>  faces-config.xml resources against the DTD. Default
>  value is false.
>
>com.sun.faces.validateXml
>true
>  
>  
>  
>
>  When enabled, the runtime initialization and default
> ResourceHandler
>  implementation will use threads to perform their functions. Set
> this
>  value to false if threads aren't desired (as in the case of
> running
>  within the Google Application Engine).
> 
>  Note that when this option is disabled, the ResourceHandler will
> not
>  pick up new versions of resources when ProjectStage is
> development.
>
>com.sun.faces.enableThreading
>false
>  
>  
>  
>javax.faces.STATE_SAVING_METHOD
>client
>  
> 
>  
>javax.faces.PROJECT_STAGE
>Production
>  
>  
>  
>Faces Servlet
>javax.faces.webapp.FacesServlet
>1
>  
>  
>Faces Servlet
>/faces/*
>*.jsf
>  
>  
>30
>  
>  
>index.jsp
>index.xhtml
>index.html
>  
> 
> 
> --
> 
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine for Java" group.
> To post to this group, send email to google-appengine-j...@googlegroups.com.
> To unsubscribe from this group, send email to 
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/google-appengine-java?hl=en.
> 
> 

--

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] JSF 2.0.1 on GAE | java.lang.RuntimeException: java.io.NotSerializableException: com.sun.faces.context.flash.ELFlash

2009-12-13 Thread Derek Berube
What does the web page where you get the java.io.NotSerializableException look 
like?

I tried playing around with the javax.faces.context.Flash features on the 
http://jsf2gae.appspot.com/ site.  The first page, flash.xhtml, has the 
following source:

http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
http://www.w3.org/1999/xhtml"; xml:lang="en" lang="en"
 xmlns:f="http://java.sun.com/jsf/core";
 xmlns:h="http://java.sun.com/jsf/html";
 xmlns:ui="http://java.sun.com/jsf/facelets";>
   
  
  Example of JSF 2.0 Flash Functionality
   
   
  
 Value for Next Page
 
 

 
  
  
   



The second page, flash_page2.xhtml, has the second contents:


http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
http://www.w3.org/1999/xhtml"; xml:lang="en" lang="en"
 xmlns:f="http://java.sun.com/jsf/core";
 xmlns:h="http://java.sun.com/jsf/html";
 xmlns:ui="http://java.sun.com/jsf/facelets";>
   
  
  Example of JSF 2.0 Flash Functionality (Page 2)
   
   
  You typed "".
  Start Over
   


It works without generating any errors.

Derek

P.S. The "Flash" features are a great, quick way to pass data from one page to 
another!


On Dec 10, 2009, at 2:18 PM, Sector7B wrote:

> Hi, followed the examples below{} for JSF on GAE:
> 
> {https://sites.google.com/a/wildstartech.com/adventures-in-java/Java-
> Platform-Enterprise-Edition/JavaServer-Faces/sun-javaserver-faces-
> reference-implementation/configuring-jsf-20-to-run-on-the-google-
> appengine/javaserverfaces-20-and-google-app-engine-compatibility-
> issues
> 
> https://sites.google.com/a/wildstartech.com/adventures-in-java/Java-Platform-Enterprise-Edition/JavaServer-Faces/sun-javaserver-faces-reference-implementation/configuring-jsf-20-to-run-on-the-google-appengine
> 
> http://java.dzone.com/news/jsf2-configuration-google-app}
> 
> When i run locally, just the example given it works fine.
> When i run live i get this error:
> java.lang.RuntimeException: java.io.NotSerializableException:
> com.sun.faces.context.flash.ELFlash
> 
> searches come up with nothing for me?  It would seem the engine
> requires ELFlash to be serializable, but I guess its not.
> http://www.docjar.com/docs/api/com/sun/faces/context/flash/ELFlash.html
> 
> It looks like a lot of people have gotten this to work, it seems weird
> i can't fine an example of this breaking for someone else.
> 
> Any thoughts?
> 
> Thanks
> 
> web.xml:
> 
>   
>javax.faces.STATE_SAVING_METHOD
>client
>  
>  
>  javax.faces.DEFAULT_SUFFIX
>.xhtml
>  
>  
>com.sun.faces.expressionFactory
>com.sun.el.ExpressionFactoryImpl
>
>  
>  
>com.sun.faces.expressionFactory
>com.sun.el.ExpressionFactoryImpl
>  
>  
>
>  Set this flag to true if you want the JavaServer Faces
>  Reference Implementation to validate the XML in your
>  faces-config.xml resources against the DTD. Default
>  value is false.
>
>com.sun.faces.validateXml
>true
>  
>  
>  
>
>  When enabled, the runtime initialization and default
> ResourceHandler
>  implementation will use threads to perform their functions. Set
> this
>  value to false if threads aren't desired (as in the case of
> running
>  within the Google Application Engine).
> 
>  Note that when this option is disabled, the ResourceHandler will
> not
>  pick up new versions of resources when ProjectStage is
> development.
>
>com.sun.faces.enableThreading
>false
>  
>  
>  
>javax.faces.STATE_SAVING_METHOD
>client
>  
> 
>  
>javax.faces.PROJECT_STAGE
>Production
>  
>  
>  
>Faces Servlet
>javax.faces.webapp.FacesServlet
>1
>  
>  
>Faces Servlet
>/faces/*
>*.jsf
>  
>  
>30
>  
>  
>index.jsp
>index.xhtml
>index.html
>  
> 
> 
> --
> 
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine for Java" group.
> To post to this group, send email to google-appengine-j...@googlegroups.com.
> To unsubscribe from this group, send email to 
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/google-appengine-java?hl=en.
> 
> 

--

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: JSF 2 state saving on server

2011-04-05 Thread Derek Berube
Hello, 

I'm the author of the article that Daniel referred you to and I wanted to 
provide some clarification on what I meant by "appears to handle" in the 
comments regarding the javax.faces.STATE_SAVING_METHOD parameter in the web.xml.

Problems that I have had in the past with storing state on the server in 
versions of GAE prior to 1.3 appeared to be related to the amount of time 
required to persist session information to the datastore.  I used to get 
com.google.appengine.api.datastore.DatastoreTimeoutException exceptions using 
the server option.  Since the 1.3 release of GAE, I have been using server 
value for this parameter in the JSF2 based applications I run on GAE.  However, 
none of the applications have very complicated user interfaces so the object 
graph that comprises the component hierarchy is not terribly deep.

In short, for the simple applications I have written, the server parameter 
works great.

The "Configuring JavaServer Faces 2.0 to run on the Google App Engine Using 
Eclipse" article is getting a little long in the tooth and plan on updating it 
to account for the 1.4.3 version of GAE along with the newly released JSF 2.1 
reference implementation.  For the most part, I think the article will not 
change much aside from screen shots.  The biggest change will be in the 
"JavaServer Faces 2.0 and Google App Engine Compatibility Issues" article.

According to bug 1506, the JSP 2.1 compatibility issues have been resolved as 
of GAE 1.4.2.  As such, the section  of the web.xml in my sample code that talks about having to 
explicitly identify the JSP expression factory implementation class may no 
longer be necessary.

I hope this helps.

Derek

On Apr 5, 2011, at 5:55 AM, sgrueter wrote:

> Hello Daniel
> 
> Thanks for the information. 
> 
> After reading the document configuring-jsf-20-to-run-on-the-google-appengine, 
> the reliability of server state saving in current version
> of GAE is still not clear to me ("GAE 1.3.0 appears to handle..."). 
> 
>  
>   
> javax.faces.STATE_SAVING_METHOD
> server
>
> 
> 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-java@googlegroups.com.
> To unsubscribe from this group, send email to 
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.