[Building Sakai] profile2 1.2 profile and connection link throw RuntimeException
Steve Swinsburg
steve.swinsburg at gmail.com
Thu Jul 23 15:06:51 PDT 2009
Thanks Qu,
I can't patch this right now as I am away travelling and won't be back
for a few weeks, however for anyone watching and need to fix this,
issue the following SQL:
update SAKAI_PERSON_T set locked=false where locked=null;
I'll add it to the Jira and to the Profile2 page.
cheers,
Steve
On 23/07/2009, at 10:21 PM, Qu, Yuanhua wrote:
> I fixed the problem. I created a JIRA http://jira.sakaiproject.org/browse/PRFL-97
> and put attached my patch there. Thanks for all your helps.
>
> - Qu
>
>
> On 7/23/09 9:27 AM, "Qu, Yuanhua" <yq12 at txstate.edu> wrote:
>
> Here is more info that I just found:
>
> If I deleted the record of user in SAKAI_PERSON_T table, he can load
> the profile page without error, everything seems fine. My guess
> would be something handling with SAKAI_PERSON_T data in the java
> code for getting the person’s data might throw NullPointerException?
>
> - Qu
>
>
> On 7/23/09 7:31 AM, "Qu, Yuanhua" <yq12 at txstate.edu> wrote:
>
> I did have two versions in there. I removed the sakai-profile2-
> api-1.1.jar. Restarted the server. Problem still exist.
>
> I don’t have problem when pointing to newly created sakai db but
> have problem with existing db. Could it be possible that some field
> in SAKAI_PERSON_T table give null value?
>
> - Qu
>
>
> On 7/23/09 4:48 AM, "Steve Swinsburg" <steve.swinsburg at gmail.com>
> wrote:
>
> Ok I think I know the issue, check shared/lib and make sure you
> don't have two versions of the sakai-profile2-api-XXX.jar in there.
>
> cheers,
> Steve
>
>
>
> On 23/07/2009, at 1:31 AM, Qu, Yuanhua wrote:
>
> 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>
>
>
>
>
>
> <profile2Error.log>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20090723/8ad446f4/attachment.html
More information about the sakai-dev
mailing list