Uploaded image for project: 'EJB Client Library (AS7+)'
  1. EJB Client Library (AS7+)
  2. EJBCLIENT-380

Improve EJB remote+https logging

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Done
    • Major
    • 4.1.0.Final, 4.0.34.Final
    • None
    • None

    Description

      When an ejb client app is changed to use https (remote+https / https-remoting), misconfiguration can lead to exceptions which are not clear on what the issue is.

      This http-upgrade failure has been reported, on way it is reproduced is if the server side remoting subsystem connector is set to default instead of https.

           [java] javax.ejb.NoSuchEJBException: EJBCLIENT000079: Unable to discover destination for request for EJB StatelessEJBLocator for "/ejb-ssl/Hello", view is interface com.jboss.examples.ejb.Hello, affinity is None
           [java]     at org.jboss.ejb.client.EJBClientInvocationContextERROR [org.xnio.listener] XNIO001007: A channel event listener threw an exception: java.lang.IllegalArgumentException
           [java]     at java.nio.HeapByteBuffer.put(HeapByteBuffer.java:202)
           [java]     at org.xnio.Buffers.copy(Buffers.java:236)
           [java]     at org.xnio.conduits.PushBackStreamSourceConduit$BufferConduit.read(PushBackStreamSourceConduit.java:130)
           [java]     at org.xnio.conduits.PushBackStreamSourceConduit.read(PushBackStreamSourceConduit.java:52)
           [java]     at org.xnio.conduits.ConduitStreamSourceChannel.read(ConduitStreamSourceChannel.java:127)
           [java]     at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:410)
           [java]     at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:400)
           [java]     at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
           [java]     at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
           [java]     at o.getResult(EJBClientInvocationContext.java:613)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocatiorg.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
           [java]     at org.xnio.nio.NioHandle$1.run(NioHandle.java:50)
           [java]     at org.xnContext.java:544)
           [java]     at org.jboss.ejb.protocol.remote.RemotingEJBClientInterceptor.handleInvocationResult(RemotingEJBClientIntercnio.nio.WorkerThread.safeRun(WorkerThread.java:612)
           [java]     at org.xnio.nio.WorkerThread.run(WorkerThread.java:479)
           [java] 
           [java] INFO  [HelloClienteptor.java:57)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:615)
           [java]     at org.jboss.] Test lookup: ejb:/ejb-ssl/Hello!com.jboss.examples.ejb.Hello -> failed
           [java] ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:544)
           [java]     at org.jboss.ejb.client.TransactionPostDiscoveryInterceptor.handleInvocationResult(TransactionPostDiscoveryInterceptor.java:148)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:615)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:544)
           [java]     at org.jboss.ejb.client.DiscoveryEJBClientInterceptor.handleInvocationResult(DiscoveryEJBClientInterceptor.java:124)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:615)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:544)
           [java]     at org.jboss.ejb.client.NamingEJBClientInterceptor.handleInvocationResult(NamingEJBClientInterceptor.java:85)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:615)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:544)
           [java]     at org.jboss.ejb.client.TransactionInterceptor.handleInvocationResult(TransactionInterceptor.java:212)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:615)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.getResult(EJBClientInvocationContext.java:544)
           [java]     at org.jboss.ejb.client.EJBClientInvocationContext.awaitResponse(EJBClientInvocationContext.java:986)
           [java]     at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:191)
           [java]     at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:125)
           [java]     at com.sun.proxy.$Proxy0.sayHello(Unknown Source)
           [java]     at com.jboss.examples.ejb.HelloClient.test(HelloClient.java:40)
           [java]     at com.jboss.examples.ejb.HelloClient.main(HelloClient.java:34)
           [java]     Suppressed: org.xnio.http.UpgradeFailedException: Invalid response code 200
           [java]         at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:471)
           [java]         at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:400)
           [java]         at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
           [java]         at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
           [java]         at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
           [java]         at org.xnio.nio.WorkerThread.run(WorkerThread.java:591)
           [java]         at ...asynchronous invocation...(Unknown Source)
           [java]         at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:599)
           [java]         at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:565)
           [java]         at org.jboss.remoting3.ConnectionInfo$None.getConnection(ConnectionInfo.java:82)
           [java]         at org.jboss.remoting3.ConnectionInfo.getConnection(ConnectionInfo.java:55)
           [java]         at org.jboss.remoting3.EndpointImpl.doGetConnection(EndpointImpl.java:499)
           [java]         at org.jboss.remoting3.EndpointImpl.getConnectedIdentity(EndpointImpl.java:445)
           [java]         at org.jboss.remoting3.Endpoint.getConnectedIdentity(Endpoint.java:123)
           [java]         at org.jboss.remoting3.Endpoint.getConnectedIdentity(Endpoint.java:136)
           [java]         at org.jboss.remoting3.Endpoint.getConnection(Endpoint.java:213)
           [java]         at org.jboss.ejb.client.legacy.RemotingLegacyConfiguration.getConfiguredEndpoint(RemotingLegacyConfiguration.java:99)
           [java]         at org.jboss.remoting3.ConfigurationEndpointSupplier$Holder.lambda$static$0(ConfigurationEndpointSupplier.java:58)
           [java]         at java.security.AccessController.doPrivileged(Native Method)
           [java]         at org.jboss.remoting3.ConfigurationEndpointSupplier$Holder.<clinit>(ConfigurationEndpointSupplier.java:45)
           [java]         at org.jboss.remoting3.ConfigurationEndpointSupplier.get(ConfigurationEndpointSupplier.java:84)
           [java]         at org.jboss.remoting3.ConfigurationEndpointSupplier.get(ConfigurationEndpointSupplier.java:40)
           [java]         at org.wildfly.common.context.ContextManager.getPrivileged(ContextManager.java:286)
           [java]         at org.jboss.remoting3.Endpoint.getCurrent(Endpoint.java:81)
           [java]         at org.jboss.ejb.protocol.remote.RemotingEJBDiscoveryProvider.<init>(RemotingEJBDiscoveryProvider.java:105)
           [java]         at org.jboss.ejb.protocol.remote.RemoteTransportProvider.notifyRegistered(RemoteTransportProvider.java:43)
           [java]         at org.jboss.ejb.client.EJBClientContext.<init>(EJBClientContext.java:275)
           [java]         at org.jboss.ejb.client.EJBClientContext$Builder.build(EJBClientContext.java:788)
           [java]         at org.jboss.ejb.client.ConfigurationBasedEJBClientContextSelector.loadConfiguration(ConfigurationBasedEJBClientContextSelector.java:80)
           [java]         at org.jboss.ejb.client.ConfigurationBasedEJBClientContextSelector.<clinit>(ConfigurationBasedEJBClientContextSelector.java:61)
           [java]         at org.jboss.ejb.client.EJBClientContext.getDefault(EJBClientContext.java:108)
           [java]         at org.wildfly.common.context.ContextManager.getPrivileged(ContextManager.java:286)
           [java]         at org.jboss.ejb.client.EJBClientContext.getCurrent(EJBClientContext.java:798)
           [java]         at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:174)
           [java]         ... 4 more
      

      Attachments

        Issue Links

          Activity

            People

              spyrkob Bartosz Spyrko-Smietanko
              spyrkob Bartosz Spyrko-Smietanko
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: