[XWiki-Dev] Exception adding User List Class to user defined class with beta 2

Dan Murphy dm.subs at googlemail.com
Sun Jan 14 02:32:49 CET 2007


Hi,
Tried this and it does fix the problem if UsersMetaClass.newObject(ctx)
returns an instance of UsersClass. I can open jira & give a patch if you
like (though it is a trivial fix, probably easier for a committer to fix it
than apply the patch :)

Cheers,
Dan

On 14/01/07, Dan Murphy <dm.subs at googlemail.com> wrote:
>
> Hi,
>
> I've created a class and added a couple of properties to it via the class
> editor (a string and a text area). When I try to add a User list (from the
> drop down menu) the following exception occurs:
>
>         Error number 0 in 11: Uncaught exception
>
> Wrapped Exception: com.xpn.xwiki.objects.meta.UsersMetaClass incompatible with com.xpn.xwiki.objects.classes.PropertyClass
> com.xpn.xwiki.XWikiException: Error number 0 in 11: Uncaught exception
> Wrapped Exception:
> com.xpn.xwiki.objects.meta.UsersMetaClass incompatible with com.xpn.xwiki.objects.classes.PropertyClass
> 	at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:159)
> 	at org.apache.struts.action.RequestProcessor.processActionPerform
> (RequestProcessor.java:431)
> 	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
> 	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
> 	at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:432)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:252)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 	at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java
> :121)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke
> (StandardWrapperValve.java:213)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> 	at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:46)
>
> 	at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:342)
> 	at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:31)
>
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> 	at org.apache.catalina.core.StandardEngineValve.invoke
> (StandardEngineValve.java:107)
> 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
> 	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392)
> 	at org.apache.catalina.connector.CoyoteAdapter.service
> (CoyoteAdapter.java:148)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java
> :667)
> 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> 	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
> (ThreadPool.java:869)
> 	at java.lang.Thread.run(Thread.java:799)
>
>
> Wrapped Exception:
>
> java.lang.ClassCastException: com.xpn.xwiki.objects.meta.UsersMetaClass incompatible with com.xpn.xwiki.objects.classes.PropertyClass
>
> 	at com.xpn.xwiki.web.PropAddAction.action(PropAddAction.java:59)
> 	at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:143)
> 	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java
> :431)
> 	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
> 	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
> 	at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:432)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:252)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 	at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java
> :121)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke
> (StandardWrapperValve.java:213)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> 	at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:46)
>
> 	at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:342)
> 	at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:31)
>
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> 	at org.apache.catalina.core.StandardEngineValve.invoke
> (StandardEngineValve.java:107)
> 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
> 	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392)
> 	at org.apache.catalina.connector.CoyoteAdapter.service
> (CoyoteAdapter.java:148)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java
> :667)
> 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> 	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
> (ThreadPool.java:869)
> 	at java.lang.Thread.run(Thread.java:799)
>
> It looks to me as if UsersMetaClass.newObject(ctx) should return an
> instance of UsersClass (this is what StringMetaClass does for example). It
> also looks like GroupMetaClass does the same....
>
> Incidently, is there a way to remove an unwanted property from the class ?
> During my experiment I added a DBListClass (to test this) but can't see how
> to remove it.
>
> Cheers,
> Dan
>
> PS. Top job on getting b2 out :)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xwiki.org/pipermail/devs/attachments/20070114/a048780b/attachment.html 


More information about the devs mailing list