[Building Sakai] Getting NullPointerException testing source build of 2.7.1

Rob Tanner rtanner at linfield.edu
Mon Nov 8 14:07:50 PST 2010


Chris,

I got the same error.  Is there something else I need to do besides run the
mvn command?

Just to make sure we¹re on the same page with regard to the change.  I
changed line 3196 of PresentationManagerImpl.java.  Here is a snippet that
includes 3196 (in bold):

         try {
            resource = getContentHosting().addResource(name, folder, 1,
type,
                                                       bos.toByteArray(),
resourceProperties, NotificationService.NOTI_NONE);
         }
         catch (Exception e) {
            // unexpected error: tried to add new resource and failed
            logger.warn("createResource(addResource): "+e);
         }
      }
      
      String uuid = getContentHosting().getUuid(resource.getId());
      return getIdManager().getId(uuid);
   }
   
   /**
    * 
    * @param portfolios A list of Presentation objects
    */
   protected void convertPortfolios(List portfolios) {
      org.sakaiproject.tool.api.Session sakaiSession =
SessionManager.getCurrentSession();


And here is the top of the stack trace.  It looks pretty much like the one I
was getting before:

org.sakaiproject.portal.api.PortalHandlerException:
org.sakaiproject.tool.api.ToolException: Request processing failed; nested
exception is java.lang.NullPointerException
    at 
org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPo
rtal.java:768)
caused by: org.sakaiproject.tool.api.ToolException: Request processing
failed; nested exception is java.lang.NullPointerException
    at 
org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCh
aronPortal.java:1221)
caused by: org.springframework.web.util.NestedServletException: Request
processing failed; nested exception is java.lang.NullPointerException
    at 
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java
:501)
caused by: java.lang.NullPointerException
    at 
org.theospi.portfolio.presentation.control.ViewPresentationControl.getTransf
ormer(ViewPresentationControl.java:327)
    at 
org.theospi.portfolio.presentation.control.ViewPresentationControl.handleReq
uest(ViewPresentationControl.java:257)
    at 
org.sakaiproject.metaobj.utils.mvc.impl.servlet.ViewControllerImpl.handle(Vi
ewControllerImpl.java:78)
    at 
org.springframework.web.servlet.mvc.AbstractCommandController.handleRequestI
nternal(AbstractCommandController.java:84)
    at 
org.springframework.web.servlet.mvc.AbstractController.handleRequest(Abstrac
tController.java:153)
    at 
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(Si
mpleControllerHandlerAdapter.java:48)
    at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServl
et.java:875)
    at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServle
t.java:807)
    at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkSer
vlet.java:571)

Should I delete and recreate the maven repository and install a fresh copy
of Tomcat and then do a fresh install of Sakai?

Thanks,
Rob

On 11/8/10 12:00 PM, "Maurer, Christopher Wayne" <chmaurer at iupui.edu> wrote:

> You should just be able to cd into osp/presentation and run:
> mvn clean install sakai:deploy
> -Dmaven.tomcat.home=/usr/local/java/apache-tomcat-5.5.31
> 
> Chris
> 
> From: Rob Tanner <rtanner at linfield.edu>
> Date: Mon, 8 Nov 2010 11:58:22 -0800
> To: Chris Maurer <chmaurer at iupui.edu>
> Cc: "sakai-dev at collab.sakaiproject.org" <sakai-dev at collab.sakaiproject.org>
> Subject: Re: [Building Sakai] Getting NullPointerException testing source
> build of 2.7.1
> 
> Chris,
> 
> I have updated the source file.  My problem now is my unfamiliarity with maven
> (my development work is on a much smaller scale and I normally work
> exclusively in Eclipse).  The directions I followed on the initial install
> were:
> 
> cd master
> mvn clean install
> cd ..
> mvn clean install sakai:deploy
> -Dmaven.tomcat.home=/usr/local/java/apache-tomcat-5.5.31
> 
> How do I rebuild just osp/presentation?
> 
> Thanks,
> Rob
> 
> 
> On 11/8/10 11:18 AM, "Maurer, Christopher Wayne" <chmaurer at iupui.edu> wrote:
> 
>> Rob,
>> Here's a link to the change:
>> http://source.sakaiproject.org/viewsvn/osp/trunk/presentation/api-impl/src/ja
>> va/org/theospi/portfolio/presentation/model/impl/PresentationManagerImpl.java
>> ?r1=84414&r2=84413&pathrev=84414
>> 
>> That change is against trunk (haven't merged it back to any of the older
>> branches yet (2.7.x, 2.6.x, etc), but I'd think it'd be in about the same
>> place!  Looking at the source file in 2.7.x, it's at line 3196 rather than
>> 3284 of the trunk file.
>> 
>> Let me know if that's still too much and I'll come up with something easier
>> for you!
>> 
>> Chris
>> 
>> From: Rob Tanner <rtanner at linfield.edu>
>> Date: Mon, 8 Nov 2010 10:53:22 -0800
>> To: Chris Maurer <chmaurer at iupui.edu>
>> Cc: "sakai-dev at collab.sakaiproject.org" <sakai-dev at collab.sakaiproject.org>
>> Subject: Re: [Building Sakai] Getting NullPointerException testing source
>> build of 2.7.1
>> 
>> Chris,
>> 
>> I created an account at jira.sakaiproject.org, but that¹s the end of what I
>> know about jira.  So no, I don¹t know how to get the diff.  A quick go here
>> and click there, etc, would certainly help.
>> 
>> Thanks,
>> Rob
>> 
>> 
>> 
>> On 11/8/10 6:47 AM, "Maurer, Christopher Wayne" <chmaurer at iupui.edu> wrote:
>> 
>>> Rob,
>>> I was able to get it fixed.  You should be able to patch and rebuild just a
>>> small part of osp.  Do you know how to get the diff out of that jira?  It's
>>> small enough that you could make the change by hand and then just rebuild
>>> osp (or just osp/presentation).
>>> 
>>> Chris
>>> 
>>> From: Rob Tanner <rtanner at linfield.edu>
>>> Date: Mon, 8 Nov 2010 06:18:55 -0800
>>> To: Chris Maurer <chmaurer at iupui.edu>
>>> Cc: <sakai-dev at collab.sakaiproject.org>
>>> Subject: Re: [Building Sakai] Getting NullPointerException testing source
>>> build of 2.7.1
>>> 
>>> Chris,
>>> 
>>> Are we near a solution yet?  Will this likely be a patch or a complete
>>> rebuild?
>>> 
>>> Thanks. 
>>> 
>>> ~ Rob 
>>> 
>>> Sent from my iPhone
>>> 
>>> On Nov 5, 2010, at 11:46 AM, "Maurer, Christopher Wayne"
>>> <chmaurer at iupui.edu> wrote:
>>> 
>>>> Rob,
>>>> Looks like a change made in this jira
>>>> (http://jira.sakaiproject.org/browse/sak-18742) is now causing this
>>>> problem.
>>>> No solution yet, but didn't want to leave you hanging!
>>>> 
>>>> Chris
>>>> 
>>>> From: Chris Maurer < <mailto:chmaurer at iupui.edu> chmaurer at iupui.edu>
>>>> Date: Fri, 5 Nov 2010 17:05:19 +0000
>>>> To: Rob Tanner < <mailto:rtanner at linfield.edu> rtanner at linfield.edu>, "
>>>> <mailto:sakai-dev at collab.sakaiproject.org>
>>>> sakai-dev at collab.sakaiproject.org" <
>>>> <mailto:sakai-dev at collab.sakaiproject.org>
>>>> sakai-dev at collab.sakaiproject.org>
>>>> Subject: Re: [Building Sakai] Getting NullPointerException testing source
>>>> build of 2.7.1
>>>> 
>>>> Rob,
>>>> I was able to reproduce the error on a 2.7.x nightly instance so it's not
>>>> likely anything that you've done wrong.  I'll take a look and get back to
>>>> you!
>>>> 
>>>> Chris
>>>> 
>>>> From: Rob Tanner < <mailto:rtanner at linfield.edu> rtanner at linfield.edu>
>>>> Date: Thu, 4 Nov 2010 14:19:18 -0700
>>>> To: < <mailto:sakai-dev at collab.sakaiproject.org>
>>>> sakai-dev at collab.sakaiproject.org>
>>>> Subject: [Building Sakai] Getting NullPointerException testing source build
>>>> of 2.7.1
>>>> 
>>>> Hi,
>>>> .  
>>>> I built Sakai 2.7.1 from source using Maven 2.2.1 and then installed same
>>>> in Tomcat 5.5.31.  The System runs on Redhat ES 5.   I followed the install
>>>> from source instructions on the Sakai Project website (URL:
>>>> <http://confluence.sakaiproject.org/display/DOC/Sakai+2.7>
>>>> http://confluence.sakaiproject.org/display/DOC/Sakai+2.7), including
>>>> setting java_opts within Tomcat, etc.  I also tailored a sakai.properties
>>>> file so as to include a proper URL and title.  I assume that ³By default,
>>>> all Sakai distributions are configured to use an in-memory version of
>>>> HSQLDB² means that I can leave database configuration alone at least until
>>>> I¹ve tested everything.
>>>> 
>>>> Here¹s the problem.  I created a new user, me, and I also created a new
>>>> worksite and within that worksite I added a portfolio.  For the portfolio,
>>>> I chose Simple HTML and added a page containing only the line ³My
>>>> Portfolio².    When I clicked on the link to view the portfolio, the
>>>> response was ³An unexpected error has occurred.²  And along with that, a
>>>> lengthy StackTrace (included below).
>>>> 
>>>> This is my first time playing with Sakai, so I¹m not sure what other useful
>>>> information I can provide.  Any idea why I¹m getting the exception?
>>>> 
>>>> Thanks,
>>>> 
>>>> 
>>>> Rob Tanner
>>>> JAVA Developer
>>>> Linfield College, McMinnville Oregon
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Technical Details
>>>> This information will automatically be included in your bug report.
>>>> 
>>>> org.sakaiproject.portal.api.PortalHandlerException:
>>>> org.sakaiproject.tool.api.ToolException: Request processing failed; nested
>>>> exception is java.lang.NullPointerException
>>>>     at 
>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonP
>>>> ortal.java:768)
>>>> caused by: org.sakaiproject.tool.api.ToolException: Request processing
>>>> failed; nested exception is java.lang.NullPointerException
>>>>     at 
>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableC
>>>> haronPortal.java:1221)
>>>> caused by: org.springframework.web.util.NestedServletException: Request
>>>> processing failed; nested exception is java.lang.NullPointerException
>>>>     at 
>>>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.jav
>>>> a:501)
>>>> caused by: java.lang.NullPointerException
>>>>     at 
>>>> org.theospi.portfolio.presentation.control.ViewPresentationControl.getTrans
>>>> former(ViewPresentationControl.java:327)
>>>>     at 
>>>> org.theospi.portfolio.presentation.control.ViewPresentationControl.handleRe
>>>> quest(ViewPresentationControl.java:257)
>>>>     at 
>>>> org.sakaiproject.metaobj.utils.mvc.impl.servlet.ViewControllerImpl.handle(V
>>>> iewControllerImpl.java:78)
>>>>     at 
>>>> org.springframework.web.servlet.mvc.AbstractCommandController.handleRequest
>>>> Internal(AbstractCommandController.java:84)
>>>>     at 
>>>> org.springframework.web.servlet.mvc.AbstractController.handleRequest(Abstra
>>>> ctController.java:153)
>>>>     at 
>>>> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(S
>>>> impleControllerHandlerAdapter.java:48)
>>>>     at 
>>>> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServ
>>>> let.java:875)
>>>>     at 
>>>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServl
>>>> et.java:807)
>>>>     at 
>>>> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkSe
>>>> rvlet.java:571)
>>>>     at 
>>>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.jav
>>>> a:501)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:269)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:585)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:215)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher
>>>> .java:659)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDi
>>>> spatcher.java:457)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatc
>>>> her.java:395)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatche
>>>> r.java:311)
>>>>     at 
>>>> org.sakaiproject.spring.util.SpringTool.dispatch(SpringTool.java:231)
>>>>     at org.sakaiproject.spring.util.SpringTool.doGet(SpringTool.java:294)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:269)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:585)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:215)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher
>>>> .java:659)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDi
>>>> spatcher.java:457)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatc
>>>> her.java:359)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatche
>>>> r.java:311)
>>>>     at 
>>>> org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveT
>>>> oolComponent.java:500)
>>>>     at 
>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableC
>>>> haronPortal.java:1221)
>>>>     at 
>>>> org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java
>>>> :204)
>>>>     at 
>>>> org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:
>>>> 96)
>>>>     at 
>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonP
>>>> ortal.java:768)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:269)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:646)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>>>> nFilterChain.java:215)
>>>>     at 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>>>> hain.java:188)
>>>>     at 
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.j
>>>> ava:213)
>>>>     at 
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.j
>>>> ava:172)
>>>>     at 
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:12
>>>> 7)
>>>>     at 
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:11
>>>> 7)
>>>>     at 
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.jav
>>>> a:108)
>>>>     at 
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>>>>     at 
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
>>>>     at 
>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.process
>>>> Connection(Http11BaseProtocol.java:665)
>>>>     at 
>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.ja
>>>> va:528)
>>>>     at 
>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerW
>>>> orkerThread.java:81)
>>>>     at 
>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.ja
>>>> va:689)
>>>>     at java.lang.Thread.run(Thread.java:662)
>>>> 
>>>> _______________________________________________ sakai-dev mailing list
>>>> <mailto:sakai-dev at collab.sakaiproject.org>
>>>> sakai-dev at collab.sakaiproject.org
>>>> <http://collab.sakaiproject.org/mailman/listinfo/sakai-dev>
>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev TO UNSUBSCRIBE:
>>>> send email to  <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org>
>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>>> "unsubscribe"
>>>> _______________________________________________ sakai-dev mailing list
>>>> <mailto:sakai-dev at collab.sakaiproject.org>
>>>> sakai-dev at collab.sakaiproject.org
>>>> <http://collab.sakaiproject.org/mailman/listinfo/sakai-dev>
>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev TO UNSUBSCRIBE:
>>>> send email to  <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org>
>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>>> "unsubscribe"
>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20101108/3e4b672d/attachment.html 


More information about the sakai-dev mailing list