[ 
https://issues.apache.org/jira/browse/OODT-995?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lewis John McGibbney updated OODT-995:
--------------------------------------
    Description: 
In my COAL project, we are using the OPSUI Web Application for PCS. 
When navigating to http://localhost:8080/opsui/types/, I regularly see stuff 
like this
{code}
ERROR - Objects                    - Error serializing object class 
org.apache.oodt.pcs.opsui.TypesPage [object=[Page class = 
org.apache.oodt.pcs.opsui.TypesPage, id = 2, version = 0]]
org.apache.wicket.util.io.SerializableChecker$WicketNotSerializableException: 
Unable to serialize class: org.apache.oodt.cas.filemgr.structs.ProductType
Field hierarchy is:
  2 [class=org.apache.oodt.pcs.opsui.TypesPage, path=2]
    private java.lang.Object org.apache.wicket.MarkupContainer.children 
[class=[Ljava.lang.Object;]
      private org.apache.wicket.markup.html.link.PopupSettings 
org.apache.wicket.markup.html.link.ExternalLink.popupSettings[8] 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types, 
path=2:types_component]
        private java.lang.Object org.apache.wicket.MarkupContainer.children 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$2, 
path=2:types_component:cas_fm_browser_ptype_table_rows]
          java.lang.Object org.apache.wicket.Component.data 
[class=org.apache.wicket.model.util.WildcardListModel]
            private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object [class=java.util.Vector]
              private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object[write:1] 
[class=[Ljava.lang.Object;]
                private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object[write:1][0] 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple]
                  private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types
 [class=java.util.Vector]
                    private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1]
 [class=[Ljava.lang.Object;]
                      private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1][0]
 [class=org.apache.oodt.cas.filemgr.structs.ProductType] <----- field that is 
not serializable
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:386)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
        at 
org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
        at 
org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.writeObjectOverride(SerializableChecker.java:725)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
        at 
org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:129)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
        at 
org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1124)
        at 
org.apache.wicket.protocol.http.pagestore.AbstractPageStore.serializePage(AbstractPageStore.java:203)
        at 
org.apache.wicket.protocol.http.pagestore.DiskPageStore.storePage(DiskPageStore.java:840)
        at 
org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.put(SecondLevelCacheSessionStore.java:332)
        at org.apache.wicket.Session.requestDetached(Session.java:1435)
        at org.apache.wicket.RequestCycle.detach(RequestCycle.java:1176)
        at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1462)
        at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
        at 
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
        at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
        at 
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
        at 
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:407)
        at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
        at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)
        at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.base/java.lang.Thread.run(Thread.java:844)
Caused by: java.io.NotSerializableException: 
org.apache.oodt.cas.filemgr.structs.ProductType
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1185)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:442)
        at org.apache.wicket.Component.writeObject(Component.java:4700)
        at jdk.internal.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:121)
        ... 30 more
{code}

In particular you will see
{code}
[class=org.apache.oodt.cas.filemgr.structs.ProductType] <----- field that is 
not serializable
{code}
This indicates that ProductType is not serializable. I am going to try and work 
out what that really means and what the impact is of addressing the issue. 

  was:
In my COAL project, we are using the OPSUI Web Application for PCS. 
When navigating to http://localhost:8080/opsui/types/, I regularly see stuff 
like this
{code}
ERROR - Objects                    - Error serializing object class 
org.apache.oodt.pcs.opsui.TypesPage [object=[Page class = 
org.apache.oodt.pcs.opsui.TypesPage, id = 2, version = 0]]
org.apache.wicket.util.io.SerializableChecker$WicketNotSerializableException: 
Unable to serialize class: org.apache.oodt.cas.filemgr.structs.ProductType
Field hierarchy is:
  2 [class=org.apache.oodt.pcs.opsui.TypesPage, path=2]
    private java.lang.Object org.apache.wicket.MarkupContainer.children 
[class=[Ljava.lang.Object;]
      private org.apache.wicket.markup.html.link.PopupSettings 
org.apache.wicket.markup.html.link.ExternalLink.popupSettings[8] 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types, 
path=2:types_component]
        private java.lang.Object org.apache.wicket.MarkupContainer.children 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$2, 
path=2:types_component:cas_fm_browser_ptype_table_rows]
          java.lang.Object org.apache.wicket.Component.data 
[class=org.apache.wicket.model.util.WildcardListModel]
            private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object [class=java.util.Vector]
              private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object[write:1] 
[class=[Ljava.lang.Object;]
                private java.lang.Object 
org.apache.wicket.model.util.GenericBaseModel.object[write:1][0] 
[class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple]
                  private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types
 [class=java.util.Vector]
                    private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1]
 [class=[Ljava.lang.Object;]
                      private java.util.List 
org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1][0]
 [class=org.apache.oodt.cas.filemgr.structs.ProductType] <----- field that is 
not serializable
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:386)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
        at 
org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
        at 
org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
        at 
org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
        at 
org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
        at 
org.apache.wicket.util.io.SerializableChecker.writeObjectOverride(SerializableChecker.java:725)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
        at 
org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:129)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
        at 
org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1124)
        at 
org.apache.wicket.protocol.http.pagestore.AbstractPageStore.serializePage(AbstractPageStore.java:203)
        at 
org.apache.wicket.protocol.http.pagestore.DiskPageStore.storePage(DiskPageStore.java:840)
        at 
org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.put(SecondLevelCacheSessionStore.java:332)
        at org.apache.wicket.Session.requestDetached(Session.java:1435)
        at org.apache.wicket.RequestCycle.detach(RequestCycle.java:1176)
        at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1462)
        at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
        at 
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
        at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
        at 
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
        at 
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:407)
        at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
        at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)
        at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.base/java.lang.Thread.run(Thread.java:844)
Caused by: java.io.NotSerializableException: 
org.apache.oodt.cas.filemgr.structs.ProductType
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1185)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
        at 
java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
        at 
java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
        at java.base/java.util.Vector.writeObject(Vector.java:1217)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:442)
        at org.apache.wicket.Component.writeObject(Component.java:4700)
        at jdk.internal.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:564)
        at 
java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
        at 
java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
        at 
java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
        at 
java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
        at 
java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
        at 
java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
        at 
org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:121)
        ... 30 more
{code}
This indicates that ProductType is not serializable. I am going to try and work 
out what that really means and what the impact is of addressing the issue. 


> ProductType is not serializable 
> --------------------------------
>
>                 Key: OODT-995
>                 URL: https://issues.apache.org/jira/browse/OODT-995
>             Project: OODT
>          Issue Type: Bug
>          Components: file manager, opsui
>    Affects Versions: 1.2.4
>            Reporter: Lewis John McGibbney
>            Priority: Major
>             Fix For: 1.9
>
>
> In my COAL project, we are using the OPSUI Web Application for PCS. 
> When navigating to http://localhost:8080/opsui/types/, I regularly see stuff 
> like this
> {code}
> ERROR - Objects                    - Error serializing object class 
> org.apache.oodt.pcs.opsui.TypesPage [object=[Page class = 
> org.apache.oodt.pcs.opsui.TypesPage, id = 2, version = 0]]
> org.apache.wicket.util.io.SerializableChecker$WicketNotSerializableException: 
> Unable to serialize class: org.apache.oodt.cas.filemgr.structs.ProductType
> Field hierarchy is:
>   2 [class=org.apache.oodt.pcs.opsui.TypesPage, path=2]
>     private java.lang.Object org.apache.wicket.MarkupContainer.children 
> [class=[Ljava.lang.Object;]
>       private org.apache.wicket.markup.html.link.PopupSettings 
> org.apache.wicket.markup.html.link.ExternalLink.popupSettings[8] 
> [class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types, 
> path=2:types_component]
>         private java.lang.Object org.apache.wicket.MarkupContainer.children 
> [class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$2, 
> path=2:types_component:cas_fm_browser_ptype_table_rows]
>           java.lang.Object org.apache.wicket.Component.data 
> [class=org.apache.wicket.model.util.WildcardListModel]
>             private java.lang.Object 
> org.apache.wicket.model.util.GenericBaseModel.object [class=java.util.Vector]
>               private java.lang.Object 
> org.apache.wicket.model.util.GenericBaseModel.object[write:1] 
> [class=[Ljava.lang.Object;]
>                 private java.lang.Object 
> org.apache.wicket.model.util.GenericBaseModel.object[write:1][0] 
> [class=org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple]
>                   private java.util.List 
> org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types
>  [class=java.util.Vector]
>                     private java.util.List 
> org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1]
>  [class=[Ljava.lang.Object;]
>                       private java.util.List 
> org.apache.oodt.cas.webcomponents.filemgr.browser.types.Types$TypeCountTuple.types[write:1][0]
>  [class=org.apache.oodt.cas.filemgr.structs.ProductType] <----- field that is 
> not serializable
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:386)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
>       at 
> org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
>       at 
> java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
>       at 
> java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
>       at 
> java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
>       at java.base/java.util.Vector.writeObject(Vector.java:1217)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:564)
>       at 
> java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:64)
>       at 
> org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:535)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1145)
>       at 
> java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
>       at 
> java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
>       at 
> java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
>       at java.base/java.util.Vector.writeObject(Vector.java:1217)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:564)
>       at 
> java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:542)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:432)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:656)
>       at 
> org.apache.wicket.util.io.SerializableChecker.internalCheck(SerializableChecker.java:579)
>       at 
> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:365)
>       at 
> org.apache.wicket.util.io.SerializableChecker.writeObjectOverride(SerializableChecker.java:725)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
>       at 
> org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:129)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:345)
>       at 
> org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1124)
>       at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.serializePage(AbstractPageStore.java:203)
>       at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.storePage(DiskPageStore.java:840)
>       at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.put(SecondLevelCacheSessionStore.java:332)
>       at org.apache.wicket.Session.requestDetached(Session.java:1435)
>       at org.apache.wicket.RequestCycle.detach(RequestCycle.java:1176)
>       at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1462)
>       at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
>       at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
>       at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>       at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>       at 
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
>       at 
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:407)
>       at 
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>       at 
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)
>       at 
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>       at 
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>       at java.base/java.lang.Thread.run(Thread.java:844)
> Caused by: java.io.NotSerializableException: 
> org.apache.oodt.cas.filemgr.structs.ProductType
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1185)
>       at 
> java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
>       at 
> java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
>       at 
> java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
>       at 
> java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
>       at java.base/java.util.Vector.writeObject(Vector.java:1217)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:564)
>       at 
> java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
>       at 
> java.base/java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:163)
>       at 
> java.base/java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1713)
>       at 
> java.base/java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:483)
>       at java.base/java.util.Vector.writeObject(Vector.java:1217)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:564)
>       at 
> java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:442)
>       at org.apache.wicket.Component.writeObject(Component.java:4700)
>       at jdk.internal.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:564)
>       at 
> java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1379)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1175)
>       at 
> java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
>       at 
> java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
>       at 
> java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
>       at 
> java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
>       at 
> org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:121)
>       ... 30 more
> {code}
> In particular you will see
> {code}
> [class=org.apache.oodt.cas.filemgr.structs.ProductType] <----- field that is 
> not serializable
> {code}
> This indicates that ProductType is not serializable. I am going to try and 
> work out what that really means and what the impact is of addressing the 
> issue. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to