You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Jan Fryblik <ja...@gmail.com> on 2013/08/01 10:00:31 UTC
request in job
Hi guys,
i've run into terrible issue with jobs. I need to generate link which is
afterwards sent to user, but issue is... Job is not executed with http
request so that i haven't informations about request to generate the link,
so it throws NullPointerException.
Is there any other option then having the link permanently stored e.g. in
database? Probably there is also option to create in job a "fake" request
which generates complete email including the link. I don't like even this
solutions, anything else? :( Thanks a lot.
Best Regards,
Jan
Re: nullpointer exception
Posted by Volker Lamp <vl...@vlamp.de>.
Make sure you properly initialize the object referenced by the form. The onPrepare() method is a good place to do that.
Am 02.08.2013 um 09:06 schrieb "Will N." <ll...@yahoo.fr>:
> Hi,
> i have some issues trying to save an Entitie in the database after filling the coresponding form. In fact i figured out that the Entity(Object) is Null after a press the save button of the form. This is confusing because I do not have this effect with other entities and forms of my application.
> Debug took me to the LoggingAdvice.class. Any idea what i am doing wrong?
>
> Thanks!
>
> Will
>
> [DEBUG] projekt.AnlegenProjekt [ FAIL] onSuccess -- java.lang.NullPointerException
> java.lang.NullPointerException
> at com.example.pms.pages.projekt.AnlegenProjekt.advised$onSuccess_46d5fa76bdf8(AnlegenProjekt.java:161)
> at com.example.pms.pages.projekt.AnlegenProjekt$Invocation_onSuccess_46d5fa76bdf7.proceedToAdvisedMethod(Unknown Source)
> at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
> at org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:45)
> at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
> at com.example.pms.pages.projekt.AnlegenProjekt.onSuccess(AnlegenProjekt.java)
> at com.example.pms.pages.projekt.AnlegenProjekt.dispatchComponentEvent(AnlegenProjekt.java)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
> at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
> at org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
> at org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.triggerContextEvent(InternalComponentResourcesImpl.java:302)
> at org.apache.tapestry5.corelib.components.Form.advised$onAction_46d5fa76bdd6(Form.java:545)
> at org.apache.tapestry5.corelib.components.Form$Invocation_onAction_46d5fa76bdd5.proceedToAdvisedMethod(Unknown Source)
> at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
> at org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37)
> at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
> at org.apache.tapestry5.corelib.components.Form.onAction(Form.java)
> at org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
> at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
> at org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
> at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
> at org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
> at org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule.java:2476)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at $ComponentEventRequestHandler_46d5fa76bd6e.handle(Unknown Source)
> at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43)
> at org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39)
> at $ComponentRequestHandler_46d5fa76bd70.handleComponentEvent(Unknown Source)
> at $ComponentRequestHandler_46d5fa76bd68.handleComponentEvent(Unknown Source)
> at org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
> at $Dispatcher_46d5fa76bd6b.dispatch(Unknown Source)
> at $Dispatcher_46d5fa76bd65.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_46d5fa76bd66.service(Unknown Source)
> at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at com.example.pms.services.PmsModule$1.service(PmsModule.java:143)
> at $RequestFilter_46d5fa76bd60.service(Unknown Source)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105)
> at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95)
> at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at $RequestHandler_46d5fa76bd59.service(Unknown Source)
> at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
> at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> at $HttpServletRequestFilter_46d5fa76bd57.service(Unknown Source)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at $HttpServletRequestHandler_46d5fa76bd56.service(Unknown Source)
> at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
> at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
> at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
> at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
> at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> at org.mortbay.jetty.Server.handle(Server.java:326)
> at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
> at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: nullpointer exception
Posted by Ivan Khalopik <ik...@gmail.com>.
It happens because your entity is null. It can be because you didn't
initialize it in prepare for submit handler or with page activation context.
On Fri, Aug 2, 2013 at 10:06 AM, Will N. <ll...@yahoo.fr> wrote:
> Hi,
> i have some issues trying to save an Entitie in the database after filling
> the coresponding form. In fact i figured out that the Entity(Object) is
> Null after a press the save button of the form. This is confusing because I
> do not have this effect with other entities and forms of my application.
> Debug took me to the LoggingAdvice.class. Any idea what i am doing wrong?
>
> Thanks!
>
> Will
>
> [DEBUG] projekt.AnlegenProjekt [ FAIL] onSuccess --
> java.lang.NullPointerException
> java.lang.NullPointerException
> at com.example.pms.pages.projekt.**AnlegenProjekt.advised$**
> onSuccess_46d5fa76bdf8(**AnlegenProjekt.java:161)
> at com.example.pms.pages.projekt.**AnlegenProjekt$Invocation_**
> onSuccess_46d5fa76bdf7.**proceedToAdvisedMethod(Unknown Source)
> at org.apache.tapestry5.internal.**plastic.**AbstractMethodInvocation.
> **proceed(**AbstractMethodInvocation.java:**84)
> at org.apache.tapestry5.ioc.**internal.services.**
> LoggingAdvice.advise(**LoggingAdvice.java:45)
> at org.apache.tapestry5.internal.**plastic.**AbstractMethodInvocation.
> **proceed(**AbstractMethodInvocation.java:**86)
> at com.example.pms.pages.projekt.**AnlegenProjekt.onSuccess(**
> AnlegenProjekt.java)
> at com.example.pms.pages.projekt.**AnlegenProjekt.**
> dispatchComponentEvent(**AnlegenProjekt.java)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**dispatchEvent(**ComponentPageElementImpl.java:*
> *927)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**processEventTriggering(**
> ComponentPageElementImpl.java:**1112)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**access$3100(**ComponentPageElementImpl.java:**
> 61)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl$5.**invoke(**ComponentPageElementImpl.java:**
> 1057)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl$5.**invoke(**ComponentPageElementImpl.java:**
> 1054)
> at org.apache.tapestry5.ioc.**internal.OperationTrackerImpl.**
> invoke(OperationTrackerImpl.**java:74)
> at org.apache.tapestry5.ioc.**internal.**PerThreadOperationTracker.**
> invoke(**PerThreadOperationTracker.**java:87)
> at org.apache.tapestry5.ioc.**internal.RegistryImpl.invoke(**
> RegistryImpl.java:1124)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementResourcesI**mpl.invoke(**
> ComponentPageElementResourcesI**mpl.java:146)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**triggerContextEvent(**
> ComponentPageElementImpl.java:**1053)
> at org.apache.tapestry5.internal.**structure.**
> InternalComponentResourcesImpl**.triggerContextEvent(**
> InternalComponentResourcesImpl**.java:302)
> at org.apache.tapestry5.corelib.**components.Form.advised$**
> onAction_46d5fa76bdd6(Form.**java:545)
> at org.apache.tapestry5.corelib.**components.Form$Invocation_**
> onAction_46d5fa76bdd5.**proceedToAdvisedMethod(Unknown Source)
> at org.apache.tapestry5.internal.**plastic.**AbstractMethodInvocation.
> **proceed(**AbstractMethodInvocation.java:**84)
> at org.apache.tapestry5.ioc.**internal.services.**
> LoggingAdvice.advise(**LoggingAdvice.java:37)
> at org.apache.tapestry5.internal.**plastic.**AbstractMethodInvocation.
> **proceed(**AbstractMethodInvocation.java:**86)
> at org.apache.tapestry5.corelib.**components.Form.onAction(Form.**
> java)
> at org.apache.tapestry5.corelib.**components.Form.**
> dispatchComponentEvent(Form.**java)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**dispatchEvent(**ComponentPageElementImpl.java:*
> *927)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**processEventTriggering(**
> ComponentPageElementImpl.java:**1112)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**access$3100(**ComponentPageElementImpl.java:**
> 61)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl$5.**invoke(**ComponentPageElementImpl.java:**
> 1057)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl$5.**invoke(**ComponentPageElementImpl.java:**
> 1054)
> at org.apache.tapestry5.ioc.**internal.OperationTrackerImpl.**
> invoke(OperationTrackerImpl.**java:74)
> at org.apache.tapestry5.ioc.**internal.**PerThreadOperationTracker.**
> invoke(**PerThreadOperationTracker.**java:87)
> at org.apache.tapestry5.ioc.**internal.RegistryImpl.invoke(**
> RegistryImpl.java:1124)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementResourcesI**mpl.invoke(**
> ComponentPageElementResourcesI**mpl.java:146)
> at org.apache.tapestry5.internal.**structure.**
> ComponentPageElementImpl.**triggerContextEvent(**
> ComponentPageElementImpl.java:**1053)
> at org.apache.tapestry5.internal.**services.**
> ComponentEventRequestHandlerIm**pl.handle(**ComponentEventRequestHandlerIm
> **pl.java:81)
> at org.apache.tapestry5.internal.**services.**
> ImmediateActionRenderResponseF**ilter.handle(**
> ImmediateActionRenderResponseF**ilter.java:42)
> at $ComponentEventRequestHandler_**46d5fa76be69.handle(Unknown Source)
> at org.apache.tapestry5.internal.**services.AjaxFilter.handle(**
> AjaxFilter.java:42)
> at $ComponentEventRequestHandler_**46d5fa76be69.handle(Unknown Source)
> at org.apache.tapestry5.services.**TapestryModule$41.handle(**
> TapestryModule.java:2476)
> at $ComponentEventRequestHandler_**46d5fa76be69.handle(Unknown Source)
> at $ComponentEventRequestHandler_**46d5fa76bd6e.handle(Unknown Source)
> at org.apache.tapestry5.internal.**services.**
> ComponentRequestHandlerTermina**tor.handleComponentEvent(**
> ComponentRequestHandlerTermina**tor.java:43)
> at org.apache.tapestry5.services.**InitializeActivePageName.**
> handleComponentEvent(**InitializeActivePageName.java:**39)
> at $ComponentRequestHandler_**46d5fa76bd70.**handleComponentEvent(Unknown
> Source)
> at $ComponentRequestHandler_**46d5fa76bd68.**handleComponentEvent(Unknown
> Source)
> at org.apache.tapestry5.internal.**services.**
> ComponentEventDispatcher.**dispatch(**ComponentEventDispatcher.java:**46)
> at $Dispatcher_46d5fa76bd6b.**dispatch(Unknown Source)
> at $Dispatcher_46d5fa76bd65.**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_46d5fa76bd66.**service(Unknown Source)
> at org.apache.tapestry5.services.**TapestryModule$3.service(**
> TapestryModule.java:902)
> at $RequestHandler_46d5fa76bd66.**service(Unknown Source)
> at org.apache.tapestry5.services.**TapestryModule$2.service(**
> TapestryModule.java:892)
> at $RequestHandler_46d5fa76bd66.**service(Unknown Source)
> at org.apache.tapestry5.internal.**services.StaticFilesFilter.**
> service(StaticFilesFilter.**java:90)
> at $RequestHandler_46d5fa76bd66.**service(Unknown Source)
> at com.example.pms.services.**PmsModule$1.service(PmsModule.**
> java:143)
> at $RequestFilter_46d5fa76bd60.**service(Unknown Source)
> at $RequestHandler_46d5fa76bd66.**service(Unknown Source)
> at org.apache.tapestry5.internal.**services.**CheckForUpdatesFilter$2.
> **invoke(CheckForUpdatesFilter.**java:105)
> at org.apache.tapestry5.internal.**services.**CheckForUpdatesFilter$2.
> **invoke(CheckForUpdatesFilter.**java:95)
> at org.apache.tapestry5.ioc.**internal.util.**
> ConcurrentBarrier.withRead(**ConcurrentBarrier.java:85)
> at org.apache.tapestry5.internal.**services.**
> CheckForUpdatesFilter.service(**CheckForUpdatesFilter.java:**119)
> at $RequestHandler_46d5fa76bd66.**service(Unknown Source)
> at $RequestHandler_46d5fa76bd59.**service(Unknown Source)
> at org.apache.tapestry5.services.**TapestryModule$**
> HttpServletRequestHandlerTermi**nator.service(TapestryModule.**java:253)
> at org.apache.tapestry5.internal.**gzip.GZipFilter.service(**
> GZipFilter.java:53)
> at $HttpServletRequestHandler_**46d5fa76bd5b.service(Unknown Source)
> at org.apache.tapestry5.internal.**services.IgnoredPathsFilter.**
> service(IgnoredPathsFilter.**java:62)
> at $HttpServletRequestFilter_**46d5fa76bd57.service(Unknown Source)
> at $HttpServletRequestHandler_**46d5fa76bd5b.service(Unknown Source)
> at org.apache.tapestry5.services.**TapestryModule$1.service(**
> TapestryModule.java:852)
> at $HttpServletRequestHandler_**46d5fa76bd5b.service(Unknown Source)
> at $HttpServletRequestHandler_**46d5fa76bd56.service(Unknown Source)
> at org.apache.tapestry5.**TapestryFilter.doFilter(**
> TapestryFilter.java:171)
> at org.mortbay.jetty.servlet.**ServletHandler$CachedChain.**
> doFilter(ServletHandler.java:**1212)
> at org.mortbay.jetty.servlet.**ServletHandler.handle(**
> ServletHandler.java:399)
> at org.mortbay.jetty.security.**SecurityHandler.handle(**
> SecurityHandler.java:216)
> at org.mortbay.jetty.servlet.**SessionHandler.handle(**
> SessionHandler.java:182)
> at org.mortbay.jetty.handler.**ContextHandler.handle(**
> ContextHandler.java:766)
> at org.mortbay.jetty.webapp.**WebAppContext.handle(**
> WebAppContext.java:450)
> at org.mortbay.jetty.handler.**HandlerWrapper.handle(**
> HandlerWrapper.java:152)
> at org.mortbay.jetty.Server.**handle(Server.java:326)
> at org.mortbay.jetty.**HttpConnection.handleRequest(**
> HttpConnection.java:542)
> at org.mortbay.jetty.**HttpConnection$RequestHandler.**
> content(HttpConnection.java:**945)
> at org.mortbay.jetty.HttpParser.**parseNext(HttpParser.java:756)
> at org.mortbay.jetty.HttpParser.**parseAvailable(HttpParser.**
> java:218)
> at org.mortbay.jetty.**HttpConnection.handle(**
> HttpConnection.java:404)
> at org.mortbay.io.nio.**SelectChannelEndPoint.run(**
> SelectChannelEndPoint.java:**410)
> at org.mortbay.thread.**QueuedThreadPool$PoolThread.**
> run(QueuedThreadPool.java:582)
>
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.**apache.org<us...@tapestry.apache.org>
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>
--
BR
Ivan
Re: nullpointer exception
Posted by "Will N." <ll...@yahoo.fr>.
Proble solved! There was an error in my getter method for the concerned
entity!
Am 02.08.2013 09:06, schrieb Will N.:
> Hi,
> i have some issues trying to save an Entitie in the database after
> filling the coresponding form. In fact i figured out that the
> Entity(Object) is Null after a press the save button of the form. This
> is confusing because I do not have this effect with other entities and
> forms of my application.
> Debug took me to the LoggingAdvice.class. Any idea what i am doing wrong?
>
> Thanks!
>
> Will
>
> [DEBUG] projekt.AnlegenProjekt [ FAIL] onSuccess --
> java.lang.NullPointerException
> java.lang.NullPointerException
> at
> com.example.pms.pages.projekt.AnlegenProjekt.advised$onSuccess_46d5fa76bdf8(AnlegenProjekt.java:161)
> at
> com.example.pms.pages.projekt.AnlegenProjekt$Invocation_onSuccess_46d5fa76bdf7.proceedToAdvisedMethod(Unknown
> Source)
> at
> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
> at
> org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:45)
> at
> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
> at
> com.example.pms.pages.projekt.AnlegenProjekt.onSuccess(AnlegenProjekt.java)
> at
> com.example.pms.pages.projekt.AnlegenProjekt.dispatchComponentEvent(AnlegenProjekt.java)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
> at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
> at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
> at
> org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.triggerContextEvent(InternalComponentResourcesImpl.java:302)
> at
> org.apache.tapestry5.corelib.components.Form.advised$onAction_46d5fa76bdd6(Form.java:545)
> at
> org.apache.tapestry5.corelib.components.Form$Invocation_onAction_46d5fa76bdd5.proceedToAdvisedMethod(Unknown
> Source)
> at
> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
> at
> org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37)
> at
> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
> at org.apache.tapestry5.corelib.components.Form.onAction(Form.java)
> at
> org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
> at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
> at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
> at
> org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
> at
> org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at
> org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at
> org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule.java:2476)
> at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
> at $ComponentEventRequestHandler_46d5fa76bd6e.handle(Unknown Source)
> at
> org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43)
> at
> org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39)
> at
> $ComponentRequestHandler_46d5fa76bd70.handleComponentEvent(Unknown
> Source)
> at
> $ComponentRequestHandler_46d5fa76bd68.handleComponentEvent(Unknown
> Source)
> at
> org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
> at $Dispatcher_46d5fa76bd6b.dispatch(Unknown Source)
> at $Dispatcher_46d5fa76bd65.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_46d5fa76bd66.service(Unknown Source)
> at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at com.example.pms.services.PmsModule$1.service(PmsModule.java:143)
> at $RequestFilter_46d5fa76bd60.service(Unknown Source)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105)
> at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95)
> at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
> at $RequestHandler_46d5fa76bd66.service(Unknown Source)
> at $RequestHandler_46d5fa76bd59.service(Unknown Source)
> at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
> at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> at $HttpServletRequestFilter_46d5fa76bd57.service(Unknown Source)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at
> org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
> at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
> at $HttpServletRequestHandler_46d5fa76bd56.service(Unknown Source)
> at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
> at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
> at
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
> at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
> at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> at org.mortbay.jetty.Server.handle(Server.java:326)
> at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> at
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> at
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
> at
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
nullpointer exception
Posted by "Will N." <ll...@yahoo.fr>.
Hi,
i have some issues trying to save an Entitie in the database after
filling the coresponding form. In fact i figured out that the
Entity(Object) is Null after a press the save button of the form. This
is confusing because I do not have this effect with other entities and
forms of my application.
Debug took me to the LoggingAdvice.class. Any idea what i am doing wrong?
Thanks!
Will
[DEBUG] projekt.AnlegenProjekt [ FAIL] onSuccess --
java.lang.NullPointerException
java.lang.NullPointerException
at
com.example.pms.pages.projekt.AnlegenProjekt.advised$onSuccess_46d5fa76bdf8(AnlegenProjekt.java:161)
at
com.example.pms.pages.projekt.AnlegenProjekt$Invocation_onSuccess_46d5fa76bdf7.proceedToAdvisedMethod(Unknown
Source)
at
org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
at
org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:45)
at
org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
at
com.example.pms.pages.projekt.AnlegenProjekt.onSuccess(AnlegenProjekt.java)
at
com.example.pms.pages.projekt.AnlegenProjekt.dispatchComponentEvent(AnlegenProjekt.java)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
at
org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
at
org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.triggerContextEvent(InternalComponentResourcesImpl.java:302)
at
org.apache.tapestry5.corelib.components.Form.advised$onAction_46d5fa76bdd6(Form.java:545)
at
org.apache.tapestry5.corelib.components.Form$Invocation_onAction_46d5fa76bdd5.proceedToAdvisedMethod(Unknown
Source)
at
org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
at
org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37)
at
org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
at org.apache.tapestry5.corelib.components.Form.onAction(Form.java)
at
org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:927)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1112)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1057)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1054)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
at
org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1053)
at
org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
at
org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
at
org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
at
org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule.java:2476)
at $ComponentEventRequestHandler_46d5fa76be69.handle(Unknown Source)
at $ComponentEventRequestHandler_46d5fa76bd6e.handle(Unknown Source)
at
org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43)
at
org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39)
at
$ComponentRequestHandler_46d5fa76bd70.handleComponentEvent(Unknown Source)
at
$ComponentRequestHandler_46d5fa76bd68.handleComponentEvent(Unknown Source)
at
org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
at $Dispatcher_46d5fa76bd6b.dispatch(Unknown Source)
at $Dispatcher_46d5fa76bd65.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_46d5fa76bd66.service(Unknown Source)
at
org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
at $RequestHandler_46d5fa76bd66.service(Unknown Source)
at
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
at $RequestHandler_46d5fa76bd66.service(Unknown Source)
at
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
at $RequestHandler_46d5fa76bd66.service(Unknown Source)
at com.example.pms.services.PmsModule$1.service(PmsModule.java:143)
at $RequestFilter_46d5fa76bd60.service(Unknown Source)
at $RequestHandler_46d5fa76bd66.service(Unknown Source)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95)
at
org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
at $RequestHandler_46d5fa76bd66.service(Unknown Source)
at $RequestHandler_46d5fa76bd59.service(Unknown Source)
at
org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
at
org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
at
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
at $HttpServletRequestFilter_46d5fa76bd57.service(Unknown Source)
at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
at
org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
at $HttpServletRequestHandler_46d5fa76bd5b.service(Unknown Source)
at $HttpServletRequestHandler_46d5fa76bd56.service(Unknown Source)
at
org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
at
org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: request in job
Posted by Jan Fryblik <ja...@ebrothers.cz>.
Really nice idea...
and what about security? Does Hudson have its own user who is logged in
before execution?
BR,
Jan
On Thu, 01 Aug 2013 13:59:21 +0200, Barry Books <tr...@gmail.com> wrote:
> All my jobs are Tapestry pages and I call them with Hudson (curl). The
> benefits are:
>
> 1. Easier to develop (It's just a web page)
> 2. More control over running jobs
> 3. Hudson keeps statistics
> 4. No problems when load balanced
>
> The only draw back is Hudson has 1 minute scheduling resolution. I've
> only
> got 1 job that runs every minute. Most are every 15 minutes but some are
> yearly.
>
>
>
> On Thu, Aug 1, 2013 at 3:59 AM, Lance Java
> <la...@googlemail.com>wrote:
>
>> I had this same problem with tapestry-cometd where I needed to render
>> components asynchronously outside of a normal request / response. I
>> solved
>> this problem with the ComponentJSONRenderer which spoofs a request and
>> response in order to run the tapestry template rendering. Code here:
>>
>>
>> https://github.com/uklance/tapestry-cometd/blob/master/src/main/java/org/lazan/t5/cometd/services/internal/ComponentJSONRendererImpl.java
>>
>> I started to extract the logic into a reusable tapestry-offline module
>> but
>> never finished the job
>>
>> https://github.com/uklance/tapestry-offline
>>
>> The idea was to split the spoof request into OfflineRequestContext and
>> an
>> OfflineRequestGlobals and OfflineRequestGlobals could be IOC overridden
>> to
>> provide server, port etc.
>>
>> I hope to one day have tapestry-cometd depend on tapestry-offline.
>>
>> Pull requests welcome!
>> On 1 Aug 2013 09:36, "Jan Fryblik" <ja...@gmail.com> wrote:
>>
>> > **
>> > Hi guys,
>> >
>> > i've run into terrible issue with jobs. I need to generate link which
>> is
>> > afterwards sent to user, but issue is... Job is not executed with http
>> > request so that i haven't informations about request to generate the
>> link,
>> > so it throws NullPointerException.
>> >
>> > Is there any other option then having the link permanently stored
>> e.g. in
>> > database? Probably there is also option to create in job a "fake"
>> request
>> > which generates complete email including the link. I don't like even
>> this
>> > solutions, anything else? :( Thanks a lot.
>> >
>> > Best Regards,
>> > Jan
>> >
>> >
>>
--
S pozdravem
Mgr. Jan Fryblík
jednatel
+420 739 094 784
jan.fryblik@ebrothers.cz
eBrothers Software s.r.o. | www.ebrothers.cz
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: request in job
Posted by Barry Books <tr...@gmail.com>.
All my jobs are Tapestry pages and I call them with Hudson (curl). The
benefits are:
1. Easier to develop (It's just a web page)
2. More control over running jobs
3. Hudson keeps statistics
4. No problems when load balanced
The only draw back is Hudson has 1 minute scheduling resolution. I've only
got 1 job that runs every minute. Most are every 15 minutes but some are
yearly.
On Thu, Aug 1, 2013 at 3:59 AM, Lance Java <la...@googlemail.com>wrote:
> I had this same problem with tapestry-cometd where I needed to render
> components asynchronously outside of a normal request / response. I solved
> this problem with the ComponentJSONRenderer which spoofs a request and
> response in order to run the tapestry template rendering. Code here:
>
>
> https://github.com/uklance/tapestry-cometd/blob/master/src/main/java/org/lazan/t5/cometd/services/internal/ComponentJSONRendererImpl.java
>
> I started to extract the logic into a reusable tapestry-offline module but
> never finished the job
>
> https://github.com/uklance/tapestry-offline
>
> The idea was to split the spoof request into OfflineRequestContext and an
> OfflineRequestGlobals and OfflineRequestGlobals could be IOC overridden to
> provide server, port etc.
>
> I hope to one day have tapestry-cometd depend on tapestry-offline.
>
> Pull requests welcome!
> On 1 Aug 2013 09:36, "Jan Fryblik" <ja...@gmail.com> wrote:
>
> > **
> > Hi guys,
> >
> > i've run into terrible issue with jobs. I need to generate link which is
> > afterwards sent to user, but issue is... Job is not executed with http
> > request so that i haven't informations about request to generate the
> link,
> > so it throws NullPointerException.
> >
> > Is there any other option then having the link permanently stored e.g. in
> > database? Probably there is also option to create in job a "fake" request
> > which generates complete email including the link. I don't like even this
> > solutions, anything else? :( Thanks a lot.
> >
> > Best Regards,
> > Jan
> >
> >
>
Re: request in job
Posted by Lance Java <la...@googlemail.com>.
I had this same problem with tapestry-cometd where I needed to render
components asynchronously outside of a normal request / response. I solved
this problem with the ComponentJSONRenderer which spoofs a request and
response in order to run the tapestry template rendering. Code here:
https://github.com/uklance/tapestry-cometd/blob/master/src/main/java/org/lazan/t5/cometd/services/internal/ComponentJSONRendererImpl.java
I started to extract the logic into a reusable tapestry-offline module but
never finished the job
https://github.com/uklance/tapestry-offline
The idea was to split the spoof request into OfflineRequestContext and an
OfflineRequestGlobals and OfflineRequestGlobals could be IOC overridden to
provide server, port etc.
I hope to one day have tapestry-cometd depend on tapestry-offline.
Pull requests welcome!
On 1 Aug 2013 09:36, "Jan Fryblik" <ja...@gmail.com> wrote:
> **
> Hi guys,
>
> i've run into terrible issue with jobs. I need to generate link which is
> afterwards sent to user, but issue is... Job is not executed with http
> request so that i haven't informations about request to generate the link,
> so it throws NullPointerException.
>
> Is there any other option then having the link permanently stored e.g. in
> database? Probably there is also option to create in job a "fake" request
> which generates complete email including the link. I don't like even this
> solutions, anything else? :( Thanks a lot.
>
> Best Regards,
> Jan
>
>