Uploaded image for project: 'Errai'
  1. Errai
  2. ERRAI-652

Improve Error Message from server-side Marshaller

    Details

    • Type: Enhancement
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: 3.0.0.M1, 2.4.1.Final
    • Fix Version/s: 3.0.0.M2
    • Component/s: ErraiMarshalling
    • Labels:
      None

      Description

      Here is an error message thrown by the Marshaller.

      [ERROR] org.jboss.errai.marshalling.client.api.exceptions.MarshallingException: class is not available to the marshaller framework: javax.enterprise.inject.CreationException
      [ERROR] 	at org.jboss.errai.marshalling.server.MappingContextSingleton$4.getMarshaller(MappingContextSingleton.java:299)
      [ERROR] 	at org.jboss.errai.marshalling.client.api.AbstractMarshallingSession.getMarshallerInstance(AbstractMarshallingSession.java:62)
      [ERROR] 	at org.jboss.errai.marshalling.client.util.MarshallUtil.getMarshaller(MarshallUtil.java:121)
      [ERROR] 	at org.jboss.errai.marshalling.client.marshallers.ErraiProtocolEnvelopeMarshaller.marshall(ErraiProtocolEnvelopeMarshaller.java:100)
      [ERROR] 	at org.jboss.errai.marshalling.client.protocols.ErraiProtocol.encodePayload(ErraiProtocol.java:40)
      [ERROR] 	at org.jboss.errai.marshalling.server.protocol.ErraiProtocolServer.encodePayloadToByteArrayInputStream(ErraiProtocolServer.java:31)
      [ERROR] 	at org.jboss.errai.bus.server.io.BufferHelper.encodeAndWrite(BufferHelper.java:38)
      [ERROR] 	at org.jboss.errai.bus.server.io.BufferDeliveryHandler.deliver(BufferDeliveryHandler.java:54)
      [ERROR] 	at org.jboss.errai.bus.server.MessageQueueImpl.offer(MessageQueueImpl.java:123)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.enqueueForDelivery(ServerMessageBusImpl.java:411)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.send(ServerMessageBusImpl.java:379)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.send(ServerMessageBusImpl.java:325)
      [ERROR] 	at org.jboss.errai.bus.client.api.base.ConversationMessageWrapper.sendNowWith(ConversationMessageWrapper.java:238)
      [ERROR] 	at org.jboss.errai.bus.client.api.base.DefaultMessageBuilder$1.sendNowWith(DefaultMessageBuilder.java:84)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:125)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:88)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.handleMessageDeliveryFailure(ErrorHelper.java:216)
      [ERROR] 	at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:53)
      [ERROR] 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:92)
      [ERROR] 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:109)
      [ERROR] 	at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:140)
      [ERROR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      [ERROR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      [ERROR] 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
      [ERROR] 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
      [ERROR] 	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [ERROR] 	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      [ERROR] 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      [ERROR] 	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)
      [ERROR] 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [ERROR] 	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
      [ERROR] 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [ERROR] 	at org.mortbay.jetty.Server.handle(Server.java:326)
      [ERROR] 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
      [ERROR] 	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
      [ERROR] 	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
      [ERROR] 	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
      [ERROR] 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      [ERROR] 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
      [ERROR] 	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
      [ERROR] org.jboss.errai.marshalling.client.api.exceptions.MarshallingException: class is not available to the marshaller framework: javax.enterprise.inject.CreationException
      [ERROR] 	at org.jboss.errai.marshalling.server.MappingContextSingleton$4.getMarshaller(MappingContextSingleton.java:299)
      [ERROR] 	at org.jboss.errai.marshalling.client.api.AbstractMarshallingSession.getMarshallerInstance(AbstractMarshallingSession.java:62)
      [ERROR] 	at org.jboss.errai.marshalling.client.util.MarshallUtil.getMarshaller(MarshallUtil.java:121)
      [ERROR] 	at org.jboss.errai.marshalling.client.marshallers.ErraiProtocolEnvelopeMarshaller.marshall(ErraiProtocolEnvelopeMarshaller.java:100)
      [ERROR] 	at org.jboss.errai.marshalling.client.protocols.ErraiProtocol.encodePayload(ErraiProtocol.java:40)
      [ERROR] 	at org.jboss.errai.marshalling.server.protocol.ErraiProtocolServer.encodePayloadToByteArrayInputStream(ErraiProtocolServer.java:31)
      [ERROR] 	at org.jboss.errai.bus.server.io.BufferHelper.encodeAndWrite(BufferHelper.java:38)
      [ERROR] 	at org.jboss.errai.bus.server.io.BufferDeliveryHandler.deliver(BufferDeliveryHandler.java:54)
      [ERROR] 	at org.jboss.errai.bus.server.MessageQueueImpl.offer(MessageQueueImpl.java:123)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.enqueueForDelivery(ServerMessageBusImpl.java:411)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.send(ServerMessageBusImpl.java:379)
      [ERROR] 	at org.jboss.errai.bus.server.ServerMessageBusImpl.send(ServerMessageBusImpl.java:325)
      [ERROR] 	at org.jboss.errai.bus.client.api.base.ConversationMessageWrapper.sendNowWith(ConversationMessageWrapper.java:238)
      [ERROR] 	at org.jboss.errai.bus.client.api.base.DefaultMessageBuilder$1.sendNowWith(DefaultMessageBuilder.java:84)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:125)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:88)
      [ERROR] 	at org.jboss.errai.bus.client.util.ErrorHelper.handleMessageDeliveryFailure(ErrorHelper.java:216)
      [ERROR] 	at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:53)
      [ERROR] 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:92)
      [ERROR] 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:109)
      [ERROR] 	at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:140)
      [ERROR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      [ERROR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      [ERROR] 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
      [ERROR] 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
      [ERROR] 	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [ERROR] 	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      [ERROR] 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      [ERROR] 	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)
      [ERROR] 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [ERROR] 	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
      [ERROR] 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [ERROR] 	at org.mortbay.jetty.Server.handle(Server.java:326)
      [ERROR] 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
      [ERROR] 	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
      [ERROR] 	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
      [ERROR] 	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
      [ERROR] 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      [ERROR] 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
      [ERROR] 	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
      

      The cause of this Exception was a NoClassDefException thrown by Weld, but it was only possible to ascertain so by debugging and inspecting the cause of the MarshallingException.

      It would probably be more helpful if the printed stack trace showed the intial Exception causing the error.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                mbarkley Max Barkley
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: