[Building Sakai] roster tool error

Matthew Jones matthew at longsight.com
Mon Apr 15 15:07:27 PDT 2013


Well, based on the error:

 Null value was assigned to a property of primitive type setter of
org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled

There are null values in the database table Profile Preferences column.

These were actually added back in the 2.8.0 conversion. I'm not sure where
*that* conversion is, or suddenly MySQL got pickier about the bit column.
https://source.sakaiproject.org/svn/reference/trunk/docs/conversion/sakai_2_8_0_mysql_conversion.sql

-- PRFL-152, PRFL-186 add the new email message preference columns, default to 0
alter table PROFILE_PREFERENCES_T add EMAIL_MESSAGE_NEW bit not null
default false;
alter table PROFILE_PREFERENCES_T add EMAIL_MESSAGE_REPLY bit not null
default false;

Try to run an update to set them to false?

UPDATE PROFILE_PREFERENCES_T set EMAIL_MESSAGE_NEW = false WHERE
EMAIL_MESSAGE_NEW is null;
UPDATE PROFILE_PREFERENCES_T set EMAIL_MESSAGE_REPLY = false WHERE
EMAIL_MESSAGE_REPLY IS null;


On Mon, Apr 15, 2013 at 5:56 PM, Sanghyun Jeon <euksa99 at gmail.com> wrote:

> I already did it.
>
> from 2.7.0--> 2.7.1 to 2.8.2 -> 2.8.3 conversion script
>
> I do it again now and 0 rows affected
>
> Any other advice, please...
>
> S
>
>
> On Mon, Apr 15, 2013 at 2:45 PM, Matthew Jones <matthew at longsight.com>wrote:
>
>> Probably is this conversion then.
>>
>>
>> https://source.sakaiproject.org/svn/reference/trunk/docs/conversion/sakai_2_8_1-2_8_2_mysql_conversion.sql
>>
>> The problem with upgrading off the .x branch is that hibernate can can do
>> schema alterations (ALTERS), but can't run data changes (UPDATES). So you
>> still need to keep up-to-date with the latest conversion scripts. We
>> currently don't have a great solution for that across all tools, though
>> some tools (Lessons specifically) work a little better at this than others.
>>
>>
>> On Mon, Apr 15, 2013 at 5:40 PM, Sanghyun Jeon <euksa99 at gmail.com> wrote:
>>
>>> Sam,
>>>
>>> I did not modify master/pom.xml.
>>> I also have the same profile2 file when I checked out sakai2.8x._all
>>> However, I am having the following error when I click the roster tool
>>> (not roster 2)
>>>
>>> org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:862)
>>> caused by: org.sakaiproject.tool.api.ToolException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1429)
>>> caused by: javax.servlet.ServletException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> caused by: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211)
>>> caused by: org.apache.jasper.JasperException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
>>> caused by: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>     at org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderOutput(HtmlTextRendererBase.java:69)
>>> caused by: javax.faces.el.EvaluationException: Cannot get value for expression '#{filter.init}'
>>>     at javax.faces.component.UIOutput.getValue(UIOutput.java:80)
>>> caused by: javax.faces.el.EvaluationException: Exception getting value of property init of base of type : org.sakaiproject.tool.roster.FilteredParticipantListingBean
>>>     at org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELParserHelper.java:535)
>>> caused by: javax.faces.el.EvaluationException: Bean: org.sakaiproject.tool.roster.FilteredParticipantListingBean, property: init
>>>     at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:85)
>>> caused by: java.lang.reflect.InvocationTargetException
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> caused by: org.springframework.orm.hibernate3.HibernateSystemException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled; nested exception is org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled
>>>     at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
>>> caused by: org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled
>>>     at org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:329)
>>> caused by: java.lang.IllegalArgumentException
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>
>>>
>>> I was advised to apply  SAK-23452(Roster throws errors in 2.9 after MySQL upgrade), but my db even does not have USE_GRAVATAR...
>>>
>>>
>>> Now I am puzzled.
>>>
>>> Do I need roster2 instead fo roster in order to make profile2 worked?
>>>
>>>
>>> S
>>>
>>>
>>>
>>> On Mon, Apr 15, 2013 at 2:28 PM, Sam Ottenhoff <ottenhoff at longsight.com>wrote:
>>>
>>>> The master pom file contains all relevant indie versions:
>>>>
>>>>
>>>> https://source.sakaiproject.org/svn//master/branches/sakai-2.8.x/pom.xml
>>>>
>>>>
>>>> On Mon, Apr 15, 2013 at 5:25 PM, Sanghyun Jeon <euksa99 at gmail.com>wrote:
>>>>
>>>>> what is the proper profile 2 version for sakai 2.8x.?
>>>>>
>>>>> S
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Apr 15, 2013 at 12:09 PM, Matthew Jones <matthew at longsight.com
>>>>> > wrote:
>>>>>
>>>>>> Look at the conversions in SAK-23452 at the bottom of
>>>>>>
>>>>>> https://source.sakaiproject.org/svn/reference/trunk/docs/conversion/sakai_2_9_1-2_9_2_mysql_conversion.sql
>>>>>>
>>>>>> Might fix this problem.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Apr 15, 2013 at 3:02 PM, Sanghyun Jeon <euksa99 at gmail.com>wrote:
>>>>>>
>>>>>>> We are planning to upgrade sakai 2.8.x_all with profile2 (1.4.12)
>>>>>>> from Sakai 2.7.0 this summer and we are having an error when we click the
>>>>>>> roster tool (not all sites, but some sites..)
>>>>>>>
>>>>>>> org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:862)
>>>>>>> caused by: org.sakaiproject.tool.api.ToolException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1429)
>>>>>>> caused by: javax.servlet.ServletException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>>>>>> caused by: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211)
>>>>>>> caused by: org.apache.jasper.JasperException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
>>>>>>> caused by: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/main.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: javax.faces.component.html.HtmlOutputText,Id: _idJsp14]}
>>>>>>>     at org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderOutput(HtmlTextRendererBase.java:69)
>>>>>>> caused by: javax.faces.el.EvaluationException: Cannot get value for expression '#{filter.init}'
>>>>>>>     at javax.faces.component.UIOutput.getValue(UIOutput.java:80)
>>>>>>> caused by: javax.faces.el.EvaluationException: Exception getting value of property init of base of type : org.sakaiproject.tool.roster.FilteredParticipantListingBean
>>>>>>>     at org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELParserHelper.java:535)
>>>>>>> caused by: javax.faces.el.EvaluationException: Bean: org.sakaiproject.tool.roster.FilteredParticipantListingBean, property: init
>>>>>>>     at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:85)
>>>>>>> caused by: java.lang.reflect.InvocationTargetException
>>>>>>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>> caused by: org.springframework.orm.hibernate3.HibernateSystemException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled; nested exception is org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled
>>>>>>>     at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
>>>>>>> caused by: org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of org.sakaiproject.profile2.model.ProfilePreferences.messageNewEmailEnabled
>>>>>>>     at org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:329)
>>>>>>> caused by: java.lang.IllegalArgumentException
>>>>>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>
>>>>>>>
>>>>>>> I saw the solution from
>>>>>>>
>>>>>>> https://jira.sakaiproject.org/browse/PRFL-725
>>>>>>>
>>>>>>> but the affected version shows Profile2 1.5.0 and we are using 1.4.12.
>>>>>>>
>>>>>>> When I try to modify  ProfileLogicImpl.java based on this JIRA, I notice I need to modify more than 5 java files in order to avoid build errors. I am wondering what the correct profile2 version for sakai 2.8.x is?
>>>>>>>
>>>>>>>
>>>>>>> Do I need to upgrade profile2 from 1.4.12 to 1.5.0?
>>>>>>>
>>>>>>> If so, I also see some other DB conversion script for Profile2 1.5 version.
>>>>>>>
>>>>>>> Please advise me.
>>>>>>>
>>>>>>> Thank you in advance.
>>>>>>>
>>>>>>>
>>>>>>> S
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> sakai-dev mailing list
>>>>> sakai-dev at collab.sakaiproject.org
>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>
>>>>> TO UNSUBSCRIBE: send email to
>>>>> 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/20130415/8ca0562d/attachment.html 


More information about the sakai-dev mailing list