Folks,

I am scratching my head about this code which generally was ok in T4... things 
seem fine but when i enter this handler BOOM

My usage of the Math.min(...) hasnt changed... the NPE occurs faithfully on the 
call to Math.min(...)... even after I tried to change the type of itemsPerPage 
from Integer to int

here is my isolated thing...

    @Property
    @Parameter(required = false, cache = false)
    private int itemsPerPage = 50;

and I operate in my eventhandler

    @Component(parameters =
    { "event=lastPage"  })
    private EventLink lastPage;

    public void onLastPage()
    {
        logger.info("In onLastPage : ");

        int minimum = Math.min(itemsPerPage, collection.size());
        cursor = (collection.size() - minimum);
    }

Now I use to have itemsPerPage declared as Integer... and in T4 type coercing 
would occur and it ran fine.

I am getting an NPE though... and changing this to int doesnt help.

I thought I would show you the stack trace... maybe someone can spot something.

This one is really stumping me and I am blue in the face.

thanks for checking this out

funny thing... my onFirstPage handler works fine... no NPE when i step thru that
    @Component(parameters =
    { "event=firstPage" })
    private EventLink firstPage;

    public void onFirstPage()
    {
        logger.info("In onFirstPage : ");

        cursor = 0;
    }

see NPE stack trace below

Thanks
kcola...@live.com
 
127.0.0.1 -  -  [12/Oct/2012:03:02:18 +0000] "GET 
/tynamo/blob/adminlayout/1/header HTTP/1.1" 200 223753 
"http://localhost:8080/Home"; "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) 
Gecko/20100101 Firefox/15.0.1"
[INFO] components.Gallery In onLastPage : 
[ERROR] ioc.Registry org.apache.tapestry5.runtime.ComponentEventException
[ERROR] ioc.Registry Operations trace:
[ERROR] ioc.Registry [ 1] Triggering event 'lastpage' on Home:gallerywidget
[ERROR] TapestryModule.RequestExceptionHandler Processing of request failed 
with uncaught exception: org.apache.tapestry5.ioc.internal.OperationException
org.apache.tapestry5.ioc.internal.OperationException [at context:Home.tml, line 
36]
    at 
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
    at 
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
    at 
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
    at 
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1047)
    at 
org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
    at 
org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
    at $ComponentEventRequestHandler_76f54cced87d.handle(Unknown Source)
    at 
org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
    at $ComponentEventRequestHandler_76f54cced87d.handle(Unknown Source)
    at 
org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.handle(UploadExceptionFilter.java:75)
    at $ComponentEventRequestHandler_76f54cced87d.handle(Unknown Source)
    at 
org.apache.tapestry5.services.TapestryModule$40.handle(TapestryModule.java:2456)
    at $ComponentEventRequestHandler_76f54cced87d.handle(Unknown Source)
    at $ComponentEventRequestHandler_76f54cced7cf.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_76f54cced7d1.handleComponentEvent(Unknown 
Source)
    at 
org.tynamo.security.SecurityComponentRequestFilter.handleComponentEvent(SecurityComponentRequestFilter.java:42)
    at $ComponentRequestFilter_76f54cced7ce.handleComponentEvent(Unknown Source)
    at $ComponentRequestHandler_76f54cced7d1.handleComponentEvent(Unknown 
Source)
    at $ComponentRequestHandler_76f54cced7b6.handleComponentEvent(Unknown 
Source)
    at 
org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
    at $Dispatcher_76f54cced7bb.dispatch(Unknown Source)
    at $Dispatcher_76f54cced7b4.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_76f54cced7b5.service(Unknown Source)
    at 
org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
    at $RequestHandler_76f54cced7b5.service(Unknown Source)
    at 
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
    at $RequestHandler_76f54cced7b5.service(Unknown Source)
    at 
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
    at $RequestHandler_76f54cced7b5.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_76f54cced7b5.service(Unknown Source)
    at $RequestHandler_76f54cced77c.service(Unknown Source)
    at 
org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
    at 
org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:106)
    at 
org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:104)
    at 
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
    at 
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
    at 
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:380)
    at 
org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:104)
    at $HttpServletRequestFilter_76f54cced77b.service(Unknown Source)
    at $HttpServletRequestHandler_76f54cced77e.service(Unknown Source)
    at 
org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
    at $HttpServletRequestHandler_76f54cced77e.service(Unknown Source)
    at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
    at $HttpServletRequestHandler_76f54cced77e.service(Unknown Source)
    at 
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
    at $HttpServletRequestFilter_76f54cced778.service(Unknown Source)
    at $HttpServletRequestHandler_76f54cced77e.service(Unknown Source)
    at 
org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
    at $HttpServletRequestHandler_76f54cced77e.service(Unknown Source)
    at $HttpServletRequestHandler_76f54cced777.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.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
    at 
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
    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.headerComplete(HttpConnection.java:928)
    at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
    at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
    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)
Caused by: org.apache.tapestry5.runtime.ComponentEventException [at 
context:Home.tml, line 36]
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1130)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3200(ComponentPageElementImpl.java:61)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1051)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1048)
    at 
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
    ... 76 more
Caused by: java.lang.NullPointerException
    at 
org.tynamo.examples.hibernatesecurity.components.Gallery.onLastPage(Gallery.java:366)
    at 
org.tynamo.examples.hibernatesecurity.components.Gallery.dispatchComponentEvent(Gallery.java)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:923)
    at 
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1106)
    ... 80 more
127.0.0.1 -  -  [12/Oct/2012:03:02:19 +0000] "GET /home.gallerywidget:lastpage 
HTTP/1.1" 500 4530 "http://localhost:8080/Home"; "Mozilla/5.0 (Windows NT 6.1; 
WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"


                                          

Reply via email to