[jira] Created: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

[jira] Created: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
Camel-RMI looks up wrong name in RMI Registry
---------------------------------------------

                 Key: CAMEL-890
                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
             Project: Apache Camel
          Issue Type: Bug
          Components: camel-rmi
    Affects Versions: 1.4.0
         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
            Reporter: Conrad Pilloud


It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  

In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").

However, my camel route:    .to("rmi://localhost:1099/GDRService");

produces this result...
java.rmi.NotBoundException: /GDRService
        at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
        at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
....

I think this is the problem...
According to the code for  RMIEndPoint:
public String getName() {
        String path = uri.getPath();
        if (path == null) {
            path = uri.getSchemeSpecificPart();
        }
        return path;
    }

I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.

Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).

[          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
java.rmi.NotBoundException: /GDRService
        at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
        at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
        at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
        at sun.rmi.transport.Transport$1.run(Transport.java:159)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
        at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
        at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
        at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
        at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
        at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
        at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
        at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
        at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
essorTypeConverter.java:43)
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
        at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
        at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
        at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
        at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
        at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
0)
        at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
        at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
        at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
48)
        at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
        at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
        at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
        at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
        at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
48)
        at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
        at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
        at java.lang.Thread.run(Thread.java:619)
[          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
ent.log.LogComponent'
[          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
el.component.log.LogComponent'
[          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............




--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org

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

Claus Ibsen updated CAMEL-890:
------------------------------

    Fix Version/s: 1.5.0

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Assigned: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Claus Ibsen reassigned CAMEL-890:
---------------------------------

    Assignee: Claus Ibsen

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45630#action_45630 ]

Claus Ibsen commented on CAMEL-890:
-----------------------------------

Conrad, thanks for the report. I have commit a fix based on your suggestion.

Can you test it? You can try the latest 1.5-SNAPSHOT version.

See this page how to get the SNAPSHOT:
http://activemq.apache.org/camel/download.html

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Work started: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Work on CAMEL-890 started by Claus Ibsen.

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45635#action_45635 ]

Conrad Pilloud commented on CAMEL-890:
--------------------------------------

Claus,
I tried it and got the same result.  I'll attach log output showing I'm using the 1.5-SNAPSHOT and the resulting error.

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Conrad Pilloud updated CAMEL-890:
---------------------------------

    Attachment: camel-arb-log.log

Log file showing error in 1.5-SNAPSHOT

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45638#action_45638 ]

Claus Ibsen commented on CAMEL-890:
-----------------------------------

Conrad. You are very fast. The Apache infrastructure is building the SNAPSHOTS on a regular interval.

I think you should wait some more to be sure the snapshot is with my latest fix. Could you try in 3-4 hours or maybe tomorrow, to really be sure.

If we still have an error then maybe a little test app from you can help me dig into it and fix it. You are also of course welcome to checkout the camel source and build the camel-rmi component and install it in your local repo. Then you have the changes immediately. Then you can also try to fix it yourself. And if you find a good solution, you can create a patch and submit to this ticket.

http://activemq.apache.org/camel/building.html
http://activemq.apache.org/camel/contributing.html


> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Claus Ibsen updated CAMEL-890:
------------------------------

    Attachment: camel-rmi-1.5-SNAPSHOT.jar

I have attached the camel-rmi.jar that is genered on my computer with the fix. You can install/copy this .jar in your local m2 repo.

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45640#action_45640 ]

Conrad Pilloud commented on CAMEL-890:
--------------------------------------

Super--that works!! (well, at least I've moved on to my next problem...  it looks like I've got to include a .policy file somewhere.
Cheers
Conrad
[          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/2062-1221159175926/0-0. On delivery attempt: 0 caught: java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
        java.lang.ClassNotFoundException: com.foo.gdr.GDRService (no security manager: RMI class loader disabled)
java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
        java.lang.ClassNotFoundException: com.foo.gdr.GDRService (no security manager: RMI class loader disabled)

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45644#action_45644 ]

Claus Ibsen commented on CAMEL-890:
-----------------------------------

Glad this solved the first step.

The little snippet of stacktrace shown reveals that its something with a class not found. ClassNotFoundException.

Are you sure that com.foo.gdr.GDRService.class is included in the classpath on both the server and client side?

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45659#action_45659 ]

Conrad Pilloud commented on CAMEL-890:
--------------------------------------

Actually, I wanted my router to be as free as possible from 'knowing' the contents of the messages.  RMI will support downloading the class from the RMI server to the client when a SecurityManager exists with proper policy--I tried that, but couldn't get a SecurityManager to work that didn't break a lot of other things in Camel & Spring.  So I decided to include the com.foo.gdr.GDRService.class in the client (Camel) after all.

FYI, other errors I was having was due to Camel MINA 'sync' option default changing from false to true in Camel 1.5--since my TCP inbound endpoint is receive only, I had to explicitly say sync=false in my MINA URI for Camel 1.5.  That was a surprise, but easy to overcome.

Life is good.  Thanks for the super-fast fix.  Cheers--Conrad

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Resolved: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Claus Ibsen resolved CAMEL-890.
-------------------------------

    Resolution: Fixed

Conrad. Glad its working now.

And thanks for letting us know about the mina change. It was however documented in the release note
http://activemq.apache.org/camel/camel-150-release.html

However 1.5 is still work in progress.

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-890) Camel-RMI looks up wrong name in RMI Registry

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45665#action_45665 ]

Claus Ibsen commented on CAMEL-890:
-----------------------------------

BTW: Maybe Java WebStart is better at distributing software to clients, instead of RMI server with downloaded .jars.

> Camel-RMI looks up wrong name in RMI Registry
> ---------------------------------------------
>
>                 Key: CAMEL-890
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-890
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-rmi
>    Affects Versions: 1.4.0
>         Environment: Camel 1.4.0, Windows XP Professional, JDK 1.6.0_07
>            Reporter: Conrad Pilloud
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>         Attachments: camel-arb-log.log, camel-rmi-1.5-SNAPSHOT.jar
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> It appears the RMI component is not pulling the right name from the URI I defined in my routebuilder.  
> In a separate application (the one I'm trying to connect and send data to), I've bound a remote object in the RMI Registry as: "GDRService".  (I even wrote a little app to list the RMI registry entries and it does indeed show up as "GDRService").
> However, my camel route:    .to("rmi://localhost:1099/GDRService");
> produces this result...
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
> ....
> I think this is the problem...
> According to the code for  RMIEndPoint:
> public String getName() {
>         String path = uri.getPath();
>         if (path == null) {
>             path = uri.getSchemeSpecificPart();
>         }
>         return path;
>     }
> I believe uri.getPath() is returning "/GDRService" and not "GDRService" and thus, Camel can't find the actual service.
> Here's a longer stacktrace (just the last of the 5 attempts to route via RMI prior to dead-letter drop).
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Failed delivery for exchangeId: ID-dmco500084358/
> 683-1221065595195/0-0. On delivery attempt: 5 caught: java.rmi.NotBoundException: /GDRService
> java.rmi.NotBoundException: /GDRService
>         at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:106)
>         at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
>         at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:386)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
>         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
>         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
>         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
>         at org.apache.camel.component.rmi.RmiRegistryBean.lookupBean(RmiRegistryBean.java:44)
>         at org.apache.camel.component.bean.RegistryBean.getBean(RegistryBean.java:61)
>         at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:73)
>         at org.apache.camel.component.rmi.RmiProducer.process(RmiProducer.java:46)
>         at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncPro
> essorTypeConverter.java:43)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>         at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>         at org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.messageReceived(MinaConsumer.java:95)
>         at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:5
> 0)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>         at java.lang.Thread.run(Thread.java:619)
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Creating instance of bean 'org.apache.camel.compo
> ent.log.LogComponent'
> [          AnonymousIoService-2] DefaultListableBeanFactory     DEBUG Finished creating instance of bean 'org.apache.ca
> el.component.log.LogComponent'
> [          AnonymousIoService-2] DeadLetterChannel              ERROR Exchange[BodyType:String, Body:<?xml version="1.0............

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.