[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-3204) Exception when modifying a wiki directory that has sub directories

Christian Bauer (JIRA) jira-events at lists.jboss.org
Tue Jul 29 21:50:52 EDT 2008


    [ https://jira.jboss.org/jira/browse/JBSEAM-3204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12422966#action_12422966 ] 

Christian Bauer commented on JBSEAM-3204:
-----------------------------------------

I can't reproduce it and I edit directories every day in dev and in production.

> Exception when modifying a wiki directory that has sub directories
> ------------------------------------------------------------------
>
>                 Key: JBSEAM-3204
>                 URL: https://jira.jboss.org/jira/browse/JBSEAM-3204
>             Project: Seam
>          Issue Type: Bug
>          Components: Wiki
>         Environment: Mac OSX
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
> Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)
> Vanilla jboss-4.2.2.GA 
>            Reporter: Per Wiklander
>            Assignee: Christian Bauer
>
> Steps to reproduce
> 1. Deploy wiki (latest from SVN trunc as of today) on vanilla jboss-4.2.2-GA (with actions taken from the dev part of the wiki readme)
> 2. Login as admin
> 3. Go to the edit page for a directory that has sub directories
> http://localhost:8080/wiki/dirEdit_d.seam?directoryId=3
> 4. Modify any property (or do nothing)
> 5. Press "Update"
> 6. Expected result:
>     The directory is saved and any changes are visible
>     Real Result:
> 03:10:20,396 ERROR [SeamPhaseListener] uncaught exception
> javax.el.ELException: Error writing 'nodeId' on type org.jboss.seam.wiki.core.action.DirectoryHome_$$_javassist_26
> 	at javax.el.BeanELResolver.setValue(BeanELResolver.java:112)
> 	at javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)
> 	at com.sun.faces.el.FacesCompositeELResolver.setValue(FacesCompositeELResolver.java:93)
> 	at org.jboss.el.parser.AstPropertySuffix.setValue(AstPropertySuffix.java:73)
> 	at org.jboss.el.parser.AstValue.setValue(AstValue.java:84)
> 	at org.jboss.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)
> 	at org.jboss.seam.core.Expressions$1.setValue(Expressions.java:117)
> 	at org.jboss.seam.navigation.Pages.applyConvertedValidatedValuesToModel(Pages.java:792)
> 	at org.jboss.seam.navigation.Pages.postRestore(Pages.java:412)
> 	at org.jboss.seam.jsf.SeamPhaseListener.postRestorePage(SeamPhaseListener.java:546)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterRestoreView(SeamPhaseListener.java:392)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:228)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
> 	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:280)
> 	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
> 	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
> 	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
> 	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
> 	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
> 	at org.jboss.seam.wiki.core.ui.WikiUrlRewriteFilter.doFilter(WikiUrlRewriteFilter.java:45)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
> 	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
> 	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
> 	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
> 	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.wiki.core.ui.WikiUrlSessionIdFilter.doFilter(WikiUrlSessionIdFilter.java:86)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
> 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
> 	at java.lang.Thread.run(Thread.java:613)
> Caused by: java.lang.IllegalArgumentException: Could not set field value by reflection: DirectoryHome.alreadyUsedMenuItems on: org.jboss.seam.wiki.core.action.DirectoryHome with value: class java.util.HashSet
> 	at org.jboss.seam.util.Reflections.set(Reflections.java:80)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.getFromWrapper(ManagedEntityIdentityInterceptor.java:196)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.entityIdsToRefs(ManagedEntityIdentityInterceptor.java:129)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:46)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:31)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.transaction.TransactionInterceptor$1.work(TransactionInterceptor.java:38)
> 	at org.jboss.seam.util.Work.workInTransaction(Work.java:41)
> 	at org.jboss.seam.transaction.TransactionInterceptor.aroundInvoke(TransactionInterceptor.java:32)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:118)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
> 	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
> 	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
> 	at org.jboss.seam.wiki.core.action.DirectoryHome_$$_javassist_26.setNodeId(DirectoryHome_$$_javassist_26.java)
> 	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:585)
> 	at javax.el.BeanELResolver.setValue(BeanELResolver.java:108)
> 	... 58 more
> Caused by: java.lang.IllegalArgumentException
> 	at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63)
> 	at java.lang.reflect.Field.set(Field.java:656)
> 	at org.jboss.seam.util.Reflections.set(Reflections.java:65)
> 	... 81 more
> 03:10:20,404 ERROR [Exceptions] handled and logged exception
> javax.el.ELException: Error writing 'nodeId' on type org.jboss.seam.wiki.core.action.DirectoryHome_$$_javassist_26
> 	at javax.el.BeanELResolver.setValue(BeanELResolver.java:112)
> 	at javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)
> 	at com.sun.faces.el.FacesCompositeELResolver.setValue(FacesCompositeELResolver.java:93)
> 	at org.jboss.el.parser.AstPropertySuffix.setValue(AstPropertySuffix.java:73)
> 	at org.jboss.el.parser.AstValue.setValue(AstValue.java:84)
> 	at org.jboss.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)
> 	at org.jboss.seam.core.Expressions$1.setValue(Expressions.java:117)
> 	at org.jboss.seam.navigation.Pages.applyConvertedValidatedValuesToModel(Pages.java:792)
> 	at org.jboss.seam.navigation.Pages.postRestore(Pages.java:412)
> 	at org.jboss.seam.jsf.SeamPhaseListener.postRestorePage(SeamPhaseListener.java:546)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterRestoreView(SeamPhaseListener.java:392)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:228)
> 	at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
> 	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:280)
> 	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
> 	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
> 	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
> 	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
> 	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
> 	at org.jboss.seam.wiki.core.ui.WikiUrlRewriteFilter.doFilter(WikiUrlRewriteFilter.java:45)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
> 	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
> 	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
> 	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
> 	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.wiki.core.ui.WikiUrlSessionIdFilter.doFilter(WikiUrlSessionIdFilter.java:86)
> 	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
> 	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
> 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
> 	at java.lang.Thread.run(Thread.java:613)
> Caused by: java.lang.IllegalArgumentException: Could not set field value by reflection: DirectoryHome.alreadyUsedMenuItems on: org.jboss.seam.wiki.core.action.DirectoryHome with value: class java.util.HashSet
> 	at org.jboss.seam.util.Reflections.set(Reflections.java:80)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.getFromWrapper(ManagedEntityIdentityInterceptor.java:196)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.entityIdsToRefs(ManagedEntityIdentityInterceptor.java:129)
> 	at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:46)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:31)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.transaction.TransactionInterceptor$1.work(TransactionInterceptor.java:38)
> 	at org.jboss.seam.util.Work.workInTransaction(Work.java:41)
> 	at org.jboss.seam.transaction.TransactionInterceptor.aroundInvoke(TransactionInterceptor.java:32)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:118)
> 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
> 	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
> 	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
> 	at org.jboss.seam.wiki.core.action.DirectoryHome_$$_javassist_26.setNodeId(DirectoryHome_$$_javassist_26.java)
> 	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:585)
> 	at javax.el.BeanELResolver.setValue(BeanELResolver.java:108)
> 	... 58 more
> Caused by: java.lang.IllegalArgumentException
> 	at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63)
> 	at java.lang.reflect.Field.set(Field.java:656)
> 	at org.jboss.seam.util.Reflections.set(Reflections.java:65)
> 	... 81 more
> 03:10:20,410 ERROR [CachedConnectionValve] Application error: Faces Servlet did not complete its transaction

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list