Thanks,
Ben
2010-04-06 13:56:24,437 [http-8080-Processor16] ERROR
org.nrg.xdat.turbine.modules.actions.ModifyUserPrivileges - Invokation
of public void
org.nrg.xdat.turbine.modules.actions.ModifyUserPrivileges.doPerform(org.apache.turbine.util.RunData,org.apache.velocity.context.Context)
throws java.lang.Exception
java.lang.NullPointerException
at
org.nrg.xdat.turbine.modules.actions.ModifyUserPrivileges.SetUserProperties(ModifyUserPrivileges.java:
136)
at
org.nrg.xdat.turbine.modules.actions.ModifyUserPrivileges.storeChanges(ModifyUserPrivileges.java:
200)
at
org.nrg.xdat.turbine.modules.actions.ModifyUserPrivileges.doPerform(ModifyUserPrivileges.java:
66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
43)
at java.lang.reflect.Method.invoke(Method.java:616)
at
org.apache.turbine.util.velocity.VelocityActionEvent.executeEvents(VelocityActionEvent.java:
136)
at
org.apache.turbine.util.velocity.VelocityActionEvent.perform(VelocityActionEvent.java:
78)
at
org.apache.turbine.modules.actions.VelocityAction.perform(VelocityAction.java:
72)
at
org.apache.turbine.modules.actions.VelocitySecureAction.perform(VelocitySecureAction.java:
61)
at
org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:96)
at
org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:
113)
at org.apache.turbine.modules.Page.build(Page.java:53)
at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:
98)
at org.apache.turbine.Turbine.doGet(Turbine.java:751)
at org.apache.turbine.Turbine.doPost(Turbine.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:
710)
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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
210)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
172)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
433)
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:
151)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
870)
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:685)
at java.lang.Thread.run(Thread.java:636)
In XNAT 1.4 user privileges are managed via userGroups. You should not need to edit the permissions for actual users. Rather, you should modify the permissions of the groups they belong to.
Just to confirm the issue is what I think it is, when you create a new project do you have permissions for the new data-type on that new project?
Tim
Thanks,
Ben
--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To post to this group, send email to xnat_di...@googlegroups.com.
To unsubscribe from this group, send email to xnat_discussi...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/xnat_discussion?hl=en.
If you've encountered this bug, the easiest course of action would be to re-setup your site via the more recent release and add the data-type like new.
However, if you need to upgrade an existing database, I've successfully managed to fix the existing projects in a test server with this issue.
First, run the following SQL in your PostgreSQL server:
DELETE FROM xdat_field_mapping WHERE xdat_field_mapping_id IN (
SELECT xdat_field_mapping_id
FROM xdat_field_mapping xfm
LEFT JOIN xdat_field_mapping_set xfms ON xfm.xdat_field_mapping_set_xdat_field_mapping_set_id=xfms.xdat_field_mapping_set_id
LEFT JOIN xdat_element_access xea ON xfms.permissions_allow_set_xdat_elem_xdat_element_access_id=xea.xdat_element_access_id
WHERE xea.element_name='xdat:element_security'
);
DELETE FROM xdat_field_mapping_set WHERE xdat_field_mapping_set_id IN (
SELECT xdat_field_mapping_set_id
FROM xdat_field_mapping_set xfms
LEFT JOIN xdat_element_access xea ON xfms.permissions_allow_set_xdat_elem_xdat_element_access_id=xea.xdat_element_access_id
WHERE xea.element_name='xdat:element_security'
);
DELETE FROM xdat_element_access WHERE xdat_element_access_id IN (
SELECT xdat_element_access_id
FROM xdat_element_access xea
WHERE xea.element_name='xdat:element_security'
);
Second, you will need to download and re-store (upload) the xml for each effected user group (owner, member, collaborator for each project). Obviously if you have a long list of projects this could be painful. We may be able to find a way to use the REST api in 1.4.0 after you've upgraded the site to allow scripting of this.
After doing these steps, I was able to create new instances of the data-type in preexisting projects. Re-store the group xmls for a project, and test if this will fix your issues.
Tim
-----Original Message-----
From: xnat_di...@googlegroups.com [mailto:xnat_di...@googlegroups.com] On Behalf Of Ben Wagner
Sent: Tuesday, April 06, 2010 1:11 PM
To: xnat_discussion
Subject: Error Updating user privileges 1.4RC3
Thanks,
Ben
--