The exception is harmless and you can ignore it. You can configure your Tomcat not to report this exception (I think Harry had the details).
JSPWiki uses AJAX quite heavily, e.g. check out the preview functionality while editing, or the search box. /Janne On Mon, Apr 20, 2009 at 03:22:07PM +0100, Weijian Fang wrote: > Hi, > > When my jspwiki is stopping, it gives out a lot of warning saying that > "Cannot serialize session attribute JSONRPCBridge for session ...". > Please see the log4j record below. > > My questions are > > 1. why this warning? how to fix it? > 2. How are JSON/AJAX used in JSPWiki? I am not aware they are used > anywhere in my jspwiki deployment. > > Many thanks in advance! > > <log4j:event > logger="org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/]" > timestamp="1238674309712" level="WARN" thread="main"> > <log4j:message><![CDATA[Cannot serialize session attribute > JSONRPCBridge for session > B8E4DAC41954373BCCF458668BFEDFCC]]></log4j:message> > <log4j:throwable><![CDATA[java.io.NotSerializableException: > com.ecyrd.jspwiki.search.SearchManager$JSONSearch > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075) > at > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369) > at > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1341) > at > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284) > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291) > at java.util.HashMap.writeObject(HashMap.java:985) > at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at > java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:890) > at > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1333) > at > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284) > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073) > at > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369) > at > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1341) > at > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284) > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291) > at > org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1478) > at > org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:948) > at > org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:517) > at > org.apache.catalina.session.StandardManager.unload(StandardManager.java:463) > at > org.apache.catalina.session.StandardManager.stop(StandardManager.java:667) > at > org.apache.catalina.core.StandardContext.stop(StandardContext.java:4360) > at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067) > at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067) > at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448) > at > org.apache.catalina.core.StandardService.stop(StandardService.java:510) > at org.apache.catalina.core.StandardServer.stop(StandardServer.java:734) > at org.apache.catalina.startup.Catalina.stop(Catalina.java:602) > at org.apache.catalina.startup.Catalina.start(Catalina.java:577) > 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 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) > ]]></log4j:throwable> > </log4j:event> > > Cheers, > > Weijian
