[Building Sakai] profile2 1.2 profile and connection link throw RuntimeException

Qu, Yuanhua yq12 at txstate.edu
Wed Jul 22 17:31:50 PDT 2009


Since it was throwing NullPointerException, I figured that the "Privacy" UI shows "Internal Error" might caused by the new added Academic_info column in privacy table.  I did forget to run 1.1 to 1.2 mysql conversion, therefore, there were records with NULL value in the academic_info field.  After I ran the profile2-conversion-1.1-1.2-mysql.sql,  the "Privacy" page shows right.  Yay!

Still, when I click on reset Profile,  the UI shows "Internal Error",  when I click again on My Profile link, the My Profile page UI shows "Unexpected RuntimeException";   with the messages that I attached earlier, still related to NullPonterException.   Didn't see t Didn't see this error in profile1.1 though.

Please take a look at the log file I attached and see what went wrong and how could I fix it.  Thanks.

Here is in the web.xml file close to the bottom:

    <!-- Wicket likes to have a url-pattern mapping even though Sakai doesn't use it. -->    <servlet-mapping>        <servlet-name>sakai.profile2</servlet-name>        <url-pattern>/sakai-profile2/*</url-pattern>            </servlet-mapping>         <context-param>        <param-name>configuration</param-name>        <!-- <param-value>development</param-value> -->        <param-value>deployment</param-value>    </context-param>


- Qu




On 7/22/09 6:49 PM, "Steve Swinsburg" <steve.swinsburg at gmail.com> wrote:

Interesting,

What happens in the logs, can you also send me a schema of your PROFILE_PRIVACY_T table. Did you upgrade the table with the upgrade script?

Also, does this error throw in the UI? It should be catching this exception in a Wicket handler as I thought it was set to deployment mode. Can you check the web.xml for a parameter near the bottom that says deployment/development?



cheers,
Steve

On 22/07/2009, at 11:17 PM, Qu, Yuanhua wrote:

Correction.  It was My Profile and Privacy link in profile2 that have this NullPointerException Error.   Other links are fine.  This happened when I point to our existing database with ddl on; everything works fine if I point to a newly created database.

 - Qu


 ------ Forwarded Message
 From: "Qu, Yuanhua" <yq12 at txstate.edu>
 Date: Wed, 22 Jul 2009 13:40:16 -0500
 To: Steve Swinsburg <s.swinsburg at lancaster.ac.uk>, Sakai-Dev <sakai-dev at collab.sakaiproject.org>
 Subject: [Building Sakai] profile2 1.2 profile and connection link throw RuntimeException

 I've just upgraded profile2 from 1.1 to the newest release 1.2.

 I ran into "Unexpected RuntimeException" when I click My Profile and Connection links, other like Privacy, Preferences and Search seems loading the right page.  Any idea?   Attach the error message below.  Any help will appreciated.   Thanks.

 - Qu

 WicketMessage: Method onLinkClicked of interface org.apache.wicket.markup.html.link.ILinkListener targeted at component [MarkupContainer [Component id = myProfileLink]] threw an exception

 Root cause:

 java.lang.NullPointerException
 at org.sakaiproject.profile2.tool.pages.MyProfile.<init>(MyProfile.java:112)
 at org.sakaiproject.profile2.tool.pages.BasePage$1.onClick(BasePage.java:44)
 at org.apache.wicket.markup.html.link.Link.onLinkClicked(Link.java:214)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:183)
 at org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget.java:73)
 at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:91)
 at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1220)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1297)
 at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1399)
 at org.apache.wicket.RequestCycle.request(RequestCycle.java:529)
 at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:356)
 at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:124)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:555)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
 at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
 at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
 at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
 at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:459)
 at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1343)
 at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:163)
 at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:86)
 at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:891)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:592)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
 at java.lang.Thread.run(Thread.java:595)

 Complete stack:

 org.apache.wicket.WicketRuntimeException: Method onLinkClicked of interface org.apache.wicket.markup.html.link.ILinkListener targeted at component [MarkupContainer [Component id = myProfileLink]] threw an exception
 at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:194)
 at org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget.java:73)
 at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:91)
 at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1220)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1297)
 at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1399)
 at org.apache.wicket.RequestCycle.request(RequestCycle.java:529)
 at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:356)

 java.lang.reflect.InvocationTargetException
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:183)
 at org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget.java:73)
 at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:91)
 at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1220)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1297)
 at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1399)
 at org.apache.wicket.RequestCycle.request(RequestCycle.java:529)
 at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:356)



 ------ End of Forwarded Message

  <ATT00001.txt>


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20090722/dbca44e8/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: profile2Error.log
Type: video/x-flv
Size: 21272 bytes
Desc: profile2Error.log
Url : http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20090722/dbca44e8/attachment.flv 


More information about the sakai-dev mailing list