Re: Grids Bean Model does not support is methods
Theoretically yes, but the problem is, that the property is not even in the grids bean model present. Nothing doing. On Tue, 27 May 2014 17:40:56 +0100, Lance Java lance.j...@googlemail.com wrote: As a quick workaround you can use the grid's add parameter to add the property and provide a custom block to render the column. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: Grids Bean Model does not support is methods
Exactly... And specifying an add parameter adds it to the model thus working around the issue. On 28 May 2014 07:35, Erich Gormann e.gorm...@gormann.de wrote: Theoretically yes, but the problem is, that the property is not even in the grids bean model present. Nothing doing. On Tue, 27 May 2014 17:40:56 +0100, Lance Java lance.j...@googlemail.com wrote: As a quick workaround you can use the grid's add parameter to add the property and provide a custom block to render the column. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: Grids Bean Model does not support is methods
Another solution is to override / decorate BeanModelSource. The easiest solution is call the default implementation then add the extra PropertyModel(s) to the BeanModel.
Re: WebSocket for tapestry
Thank you for the reply Lance. This was a very literal couple of lines of javascript. The solution you posted on Git works and the T5 Initilizers are being called as expected. On Wed, May 21, 2014 at 3:33 AM, Lance Java lance.j...@googlemail.comwrote: I've implemented this feature in tapestry-cometd but it's not been implemented in tapestry-atmosphere yet. I think it's only a couple of lines of javascript. I have just updated the outstanding issue with a possible solution here: https://github.com/uklance/tapestry-atmosphere/issues/5 Pull requests welcomed!! On 21 May 2014 04:21, Bogdan Ivascu ivascu.bogdan...@gmail.com wrote: I ended up using your atmosphere implementation and it works like a charm, so many thanks for that. I have an additional questions though. When returning the block to the client, basically your ChatDemo class ( https://github.com/uklance/tapestry-atmosphere/blob/master/tapestry-atmosphere-demo/src/main/java/org/lazan/t5/atmosphere/demo/pages/ChatDemo.java#L65 ) -onChatMessage method, I want to be able to execute some client javascript that will parse a Long number and make it into a date using momentjs. Where can I patch in this piece of code? I tried changing the return type of the method to void and using AjaxRespRenderer to display the block and then call the javascript without much success. What would be a good solution here, listen on the client side for some event to be triggered or somehow make an ajax addScript() call from the server. Thanks, Bogdan. On Tue, May 13, 2014 at 12:15 PM, Bogdan Ivascu ivascu.bogdan...@gmail.comwrote: Hi Lance, I did see numerous discussions around your implementation. My goal here is to try and get a better understanding of where and how this framework can be extended. I am however pressed for time and if I cannot get it to work, I will most likely end up using your implementation. Thanks, Bogdan. On Tue, May 13, 2014 at 3:34 AM, Lance Java lance.j...@googlemail.com wrote: Take a look at tapestry-atmosphere [1] and tapestry-cometd [2] [1] https://github.com/uklance/tapestry-atmosphere [2] https://github.com/uklance/tapestry-cometd On 13 May 2014 02:10, Bogdan Ivascu ivascu.bogdan...@gmail.com wrote: Hi everyone, I want to add webSocket support for my tapestry project and need a few pointers. What I have is a dead simple Servlet, implementing the java WebSocket api. I would like to bring this servlet into my tapestry project and have it managed by tapestry itself. To be more clear, I don't want to use the ignore path functionality to expose it, but rather have tapestry's filter control the access to this servlet. The biggest problem that I have right now is that I don't have a clear understanding of what I need to do to make this happen. Will this servlet be a service or a page with no tml, where would it sit, how do I configure tapestry so that it knows to create a new instance for each request. A nudge of where I could document myself regarding this type of integration would be most welcome. Thank you, Bogdan.
Re: 5.4-Beta6 does not work with Tomcat JDBC pool interceptors
As your link links, you should try with Hibernate 4.3.5.Final https://hibernate.atlassian.net/browse/HHH-8853 http://mvnrepository.com/artifact/org.hibernate/hibernate-core/4.3.5.Final Le 28/05/14 19:14, Barry Books a écrit : While not exactly a Tapestry Beta problem I ran into this issue when upgrading to 5.4.Beta-6 Apparently the Tomcat JDBC pool and Hibernate 4.3.1.Final do not get along. I’m posting this because the error is pretty obscure. https://issues.apache.org/bugzilla/show_bug.cgi?id=56088 2014-05-28 11:48:03,087 [qtp3831981-17] PerthreadManagerImpl.java146 [WARN] TapestryIOCModule.PerthreadManager Error invoking callback org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl$2@ab6c9d: *java.lang.reflect.UndeclaredThrowableException* *java.lang.reflect.UndeclaredThrowableException* at com.sun.proxy.$Proxy82.hashCode(Unknown Source) at java.util.HashMap.hash(Unknown Source) at java.util.HashMap.getEntry(Unknown Source) at java.util.HashMap.get(Unknown Source) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.release( *JdbcCoordinatorImpl.java:399*) at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.releaseStatements( *AbstractBatchImpl.java:173*) at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.release( *AbstractBatchImpl.java:210*) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.close( *JdbcCoordinatorImpl.java:193*) at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.close( *TransactionCoordinatorImpl.java:283*) at org.hibernate.internal.SessionImpl.close(*SessionImpl.java:365*) at org.apache.tapestry5.internal.hibernate.HibernateSessionManagerImpl.threadDidCleanup( *HibernateSessionManagerImpl.java:67*) at org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl$2.run( *PerthreadManagerImpl.java:117*) at org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl.cleanup( *PerthreadManagerImpl.java:143*) at org.apache.tapestry5.ioc.internal.RegistryImpl.cleanupThread( *RegistryImpl.java:466*) at org.apache.tapestry5.ioc.internal.RegistryWrapper.cleanupThread( *RegistryWrapper.java:38*) at org.apache.tapestry5.TapestryFilter.doFilter( *TapestryFilter.java:175*) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter( *ServletHandler.java:1331*) at org.eclipse.jetty.servlet.ServletHandler.doHandle( *ServletHandler.java:477*) at org.eclipse.jetty.server.handler.ScopedHandler.handle( *ScopedHandler.java:119*) at org.eclipse.jetty.security.SecurityHandler.handle( *SecurityHandler.java:524*) at org.eclipse.jetty.server.session.SessionHandler.doHandle( *SessionHandler.java:227*) at org.eclipse.jetty.server.handler.ContextHandler.doHandle( *ContextHandler.java:1031*) at org.eclipse.jetty.servlet.ServletHandler.doScope( *ServletHandler.java:406*) at org.eclipse.jetty.server.session.SessionHandler.doScope( *SessionHandler.java:186*) at org.eclipse.jetty.server.handler.ContextHandler.doScope( *ContextHandler.java:965*) at org.eclipse.jetty.server.handler.ScopedHandler.handle( *ScopedHandler.java:117*) at org.eclipse.jetty.server.handler.HandlerWrapper.handle( *HandlerWrapper.java:111*) at org.eclipse.jetty.server.Server.handle(*Server.java:349*) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest( *AbstractHttpConnection.java:452*) at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete( *AbstractHttpConnection.java:884*) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete( *AbstractHttpConnection.java:938*) at org.eclipse.jetty.http.HttpParser.parseNext(*HttpParser.java:634*) at org.eclipse.jetty.http.HttpParser.parseAvailable( *HttpParser.java:230*) at org.eclipse.jetty.server.AsyncHttpConnection.handle( *AsyncHttpConnection.java:77*) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle( *SelectChannelEndPoint.java:609*) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run( *SelectChannelEndPoint.java:45*) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob( *QueuedThreadPool.java:599*) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run( *QueuedThreadPool.java:534*) at java.lang.Thread.run(Unknown Source) Caused by: *java.sql.SQLException*: Statement closed. at org.apache.tomcat.jdbc.pool.interceptor.AbstractQueryReport$StatementProxy.invoke( *AbstractQueryReport.java:226*) ... 39 more
Re: WebSocket for tapestry
An interesting issue with the atmos library. I put the webSocket code in my Layout component and there are no issues when I navigate about between pages that wrap themselves in this layout. I do encounter a NullPointer when this Layout contains another Layout and then the page. To be more clear: MainPagesLayout - MemberHomePage: works nicely. MainPagesLayout - EmailLayout - EmailInboxPage: throws NullPointer exception. Stack below in case anyone has the time to look at it: 2014-May-28 16:31:36 internal.services.DefaultRequestExceptionHandler java.lang.NullPointerException at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:887) at org.apache.tapestry5.json.JSONArray.print(JSONArray.java:436) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:859) at org.apache.tapestry5.json.JSONObject.print(JSONObject.java:830) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:853) at org.apache.tapestry5.json.JSONArray.print(JSONArray.java:436) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:859) at org.apache.tapestry5.json.JSONObject.print(JSONObject.java:830) at org.apache.tapestry5.json.JSONCollection.toString(JSONCollection.java:47) at org.apache.tapestry5.json.JSONCollection.toString(JSONCollection.java:63) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.add(DocumentLinkerImpl.java:228) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.add(DocumentLinkerImpl.java:219) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.addDynamicScriptBlock(DocumentLinkerImpl.java:204) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.addScriptElements(DocumentLinkerImpl.java:158) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.updateDocument(DocumentLinkerImpl.java:123) at org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:1898) at $MarkupRenderer_7643a5097d2.renderMarkup(Unknown Source) at $MarkupRenderer_7643a5097cd.renderMarkup(Unknown Source) at org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47) at $PageMarkupRenderer_7643a5097cb.renderPageMarkup(Unknown Source) at org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:67) at $PageResponseRenderer_7643a5097c7.renderPageResponse(Unknown Source) at org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64) at org.apache.tapestry5.services.TapestryModule$38.handle(TapestryModule.java:) at $PageRenderRequestHandler_7643a5097c9.handle(Unknown Source) at $PageRenderRequestHandler_7643a509765.handle(Unknown Source) at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48) at org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at com.ar.model.security.AdminProtectionFilter.handlePageRender(AdminProtectionFilter.java:54) at $ComponentRequestFilter_7643a509763.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at com.ar.model.security.PageProtectionFilter.handlePageRender(PageProtectionFilter.java:53) at $ComponentRequestFilter_7643a509762.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at org.lazan.t5.atmosphere.services.internal.PageGlobalsComponentRequestFilter.handlePageRender(PageGlobalsComponentRequestFilter.java:28) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a50972c.handlePageRender(Unknown Source) at org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45) at $Dispatcher_7643a50972f.dispatch(Unknown Source) at $Dispatcher_7643a509729.dispatch(Unknown Source) at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302) at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90) at $RequestHandler_7643a50972a.service(Unknown Source) at com.ar.services.AppModule$1.service(AppModule.java:137) at $RequestFilter_7643a509724.service(Unknown
Re: WebSocket for tapestry
That's an unrelated but known issue. On Wed, 28 May 2014 17:42:19 -0300, Bogdan Ivascu ivascu.bogdan...@gmail.com wrote: An interesting issue with the atmos library. I put the webSocket code in my Layout component and there are no issues when I navigate about between pages that wrap themselves in this layout. I do encounter a NullPointer when this Layout contains another Layout and then the page. To be more clear: MainPagesLayout - MemberHomePage: works nicely. MainPagesLayout - EmailLayout - EmailInboxPage: throws NullPointer exception. Stack below in case anyone has the time to look at it: 2014-May-28 16:31:36 internal.services.DefaultRequestExceptionHandler java.lang.NullPointerException at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:887) at org.apache.tapestry5.json.JSONArray.print(JSONArray.java:436) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:859) at org.apache.tapestry5.json.JSONObject.print(JSONObject.java:830) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:853) at org.apache.tapestry5.json.JSONArray.print(JSONArray.java:436) at org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:859) at org.apache.tapestry5.json.JSONObject.print(JSONObject.java:830) at org.apache.tapestry5.json.JSONCollection.toString(JSONCollection.java:47) at org.apache.tapestry5.json.JSONCollection.toString(JSONCollection.java:63) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.add(DocumentLinkerImpl.java:228) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.add(DocumentLinkerImpl.java:219) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.addDynamicScriptBlock(DocumentLinkerImpl.java:204) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.addScriptElements(DocumentLinkerImpl.java:158) at org.apache.tapestry5.internal.services.DocumentLinkerImpl.updateDocument(DocumentLinkerImpl.java:123) at org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:1898) at $MarkupRenderer_7643a5097d2.renderMarkup(Unknown Source) at $MarkupRenderer_7643a5097cd.renderMarkup(Unknown Source) at org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47) at $PageMarkupRenderer_7643a5097cb.renderPageMarkup(Unknown Source) at org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:67) at $PageResponseRenderer_7643a5097c7.renderPageResponse(Unknown Source) at org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64) at org.apache.tapestry5.services.TapestryModule$38.handle(TapestryModule.java:) at $PageRenderRequestHandler_7643a5097c9.handle(Unknown Source) at $PageRenderRequestHandler_7643a509765.handle(Unknown Source) at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48) at org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at com.ar.model.security.AdminProtectionFilter.handlePageRender(AdminProtectionFilter.java:54) at $ComponentRequestFilter_7643a509763.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at com.ar.model.security.PageProtectionFilter.handlePageRender(PageProtectionFilter.java:53) at $ComponentRequestFilter_7643a509762.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at org.lazan.t5.atmosphere.services.internal.PageGlobalsComponentRequestFilter.handlePageRender(PageGlobalsComponentRequestFilter.java:28) at $ComponentRequestHandler_7643a509766.handlePageRender(Unknown Source) at $ComponentRequestHandler_7643a50972c.handlePageRender(Unknown Source) at org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45) at $Dispatcher_7643a50972f.dispatch(Unknown Source) at $Dispatcher_7643a509729.dispatch(Unknown Source) at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302) at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892) at $RequestHandler_7643a50972a.service(Unknown Source) at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90) at