ILazyInitProxy ClassNotFoundException в Wicket Websocket

Следующая ошибка часто появляется, когда соединение веб-сокета открывается или закрывается в моем калитном веб-приложении:

    2016-07-11 10:53:07,874 ERROR [::] [qtp1484594489-42303] [] [||] - org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor - An error occurred during processing of a WebSocket message
net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
    at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:256)
    at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:378)
    at net.sf.cglib.proxy.Enhancer.create(Enhancer.java:286)
    at org.apache.wicket.proxy.LazyInitProxyFactory.createProxy(LazyInitProxyFactory.java:191)
    at org.apache.wicket.proxy.LazyInitProxyFactory$ProxyReplacement.readResolve(LazyInitProxyFactory.java:270)
    at sun.reflect.GeneratedMethodAccessor7815.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at java.io.ObjectStreamClass.invokeReadResolve(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.readObject(Unknown Source)
    at java.util.ArrayList.readObject(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor7812.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.readObject(Unknown Source)
    at org.apache.wicket.serialize.java.JavaSerializer.deserialize(JavaSerializer.java:122)
    at org.apache.wicket.pageStore.AbstractPageStore.deserializePage(AbstractPageStore.java:152)
    at org.apache.wicket.pageStore.AbstractCachingPageStore.getPage(AbstractCachingPageStore.java:67)
    at org.apache.wicket.page.PageStoreManager$SessionEntry.getPage(PageStoreManager.java:203)
    at org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter.getPage(PageStoreManager.java:357)
    at org.apache.wicket.page.AbstractPageManager.getPage(AbstractPageManager.java:82)
    at org.apache.wicket.page.PageManagerDecorator.getPage(PageManagerDecorator.java:50)
    at org.apache.wicket.page.PageAccessSynchronizer$2.getPage(PageAccessSynchronizer.java:246)
    at org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.getPage(AbstractWebSocketProcessor.java:315)
    at org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:243)
    at org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.onClose(AbstractWebSocketProcessor.java:182)
    at org.apache.wicket.protocol.ws.jetty.JettyWebSocketProcessor$JettyWebSocket.onClose(JettyWebSocketProcessor.java:56)
    at org.eclipse.jetty.websocket.WebSocketConnectionRFC6455.closeIn(WebSocketConnectionRFC6455.java:332)
    at org.eclipse.jetty.websocket.WebSocketConnectionRFC6455.handle(WebSocketConnectionRFC6455.java:257)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:696)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:53)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.sf.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:395)
    at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:237)
    ... 59 more
Caused by: java.lang.NoClassDefFoundError: org/apache/wicket/proxy/ILazyInitProxy
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    ... 64 more
Caused by: java.lang.ClassNotFoundException: org.apache.wicket.proxy.ILazyInitProxy
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 66 more

Класс AbstractWebSocketProcessor пытается передать сообщение, чтобы уведомить слушателей о закрытии веб-узла. При этом он пытается загрузить страницу калитки. Эта страница содержит несколько полей с автосогласованием, и ее нужно десериализовать, но там, где происходит классное исключение прокси-класса.

Я подозреваю, что этот вопрос является причиной утечки потока, но я не могу воспроизвести ошибку последовательно.

Как эта ошибка может возникнуть?

0
задан 20 июля '16 в 16:44
источник поделиться
0 ответов

Другие вопросы по меткам или Задайте вопрос