1 Reply Latest reply: Dec 5, 2012 2:28 AM by rdoogan-Oracle RSS

    SFTP issue in OSB 11.1.1.6

    970409
      Hi,

      We are trying to use the SFTp transport in OSB 11g. Did the setup as mentioned in the documentation.
      The SFTP server is hosted on linux machine and using the user password mechanism.

      We are reading a file using the ftp adapter and routing to the business service that is based on sftp.
      The file is picked up properly by proxy but while sending the file through SFTP, we are facing the following error.

      At the source and destination ends, the directories have the full permissions as required.

      BEA-381801

      Caused By: com.bea.wli.sb.transports.TransportException: No such file
      at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessage(SFTPTransportProvider.java:198)
      at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessageAsync(SFTPTransportProvider.java:110)
      at sun.reflect.GeneratedMethodAccessor1005.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
      at $Proxy128.sendMessageAsync(Unknown Source)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:148)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToServiceAsync(LoadBalanceFailoverListener.java:603)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToService(LoadBalanceFailoverListener.java:539)
      at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:560)
      at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:426)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:597)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
      at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
      at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
      at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
      at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
      at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
      at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
      at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:594)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
      at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
      at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
      at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
      at com.bea.wli.sb.transports.file.FileTask.process(FileTask.java:109)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.__onMessage(PolledMessageListenerMDB.java:52)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.access$000(PolledMessageListenerMDB.java:31)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:42)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:39)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
      at weblogic.security.Security.runAs(Security.java:41)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.onMessage(PolledMessageListenerMDB.java:45)
      at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
      at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
      at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:328)
      at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
      at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
      at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3822)
      at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
      at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
      at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

      Caused By: java.io.IOException: No such file
      at com.sshtools.j2ssh.sftp.SftpSubsystemClient.getHandleResponse(Unknown Source)
      at com.sshtools.j2ssh.sftp.SftpSubsystemClient.openFile(Unknown Source)
      at com.sshtools.j2ssh.SftpClient.put(Unknown Source)
      at com.sshtools.j2ssh.SftpClient.put(Unknown Source)
      at com.bea.wli.sb.transports.sftp.client.SFTPClient.put(SFTPClient.java:267)
      at com.bea.wli.sb.transports.sftp.connector.SFTPResource.putData(SFTPResource.java:644)
      at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessage(SFTPTransportProvider.java:188)
      at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessageAsync(SFTPTransportProvider.java:110)
      at sun.reflect.GeneratedMethodAccessor1005.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
      at $Proxy128.sendMessageAsync(Unknown Source)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:148)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToServiceAsync(LoadBalanceFailoverListener.java:603)
      at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToService(LoadBalanceFailoverListener.java:539)
      at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:560)
      at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:426)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:597)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
      at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
      at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
      at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
      at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
      at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
      at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
      at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:594)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
      at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
      at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
      at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
      at com.bea.wli.sb.transports.file.FileTask.process(FileTask.java:109)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.__onMessage(PolledMessageListenerMDB.java:52)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.access$000(PolledMessageListenerMDB.java:31)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:42)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:39)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
      at weblogic.security.Security.runAs(Security.java:41)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.onMessage(PolledMessageListenerMDB.java:45)
      at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
      at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
      at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:328)
      at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
      at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
      at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3822)
      at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
      at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
      at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
      <23/02/2011 4:18:17 PM EST> <Error> <OSB Kernel> <BEA-380003> <Exception on TransportManagerImpl.receiveMessage, com.bea.wli.sb.context.BindingLayerException: General runtime error: No such file
      com.bea.wli.sb.context.BindingLayerException: General runtime error: No such file
      at com.bea.wli.sb.context.ContextUtils.createBindingLayerException(ContextUtils.java:953)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:609)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
      at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
      at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
      at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
      at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
      at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
      at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
      at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
      at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
      at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
      at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
      at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
      at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
      at com.bea.wli.sb.transports.file.FileTask.process(FileTask.java:109)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.__onMessage(PolledMessageListenerMDB.java:52)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.access$000(PolledMessageListenerMDB.java:31)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:41)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB$1.run(PolledMessageListenerMDB.java:39)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
      at weblogic.security.Security.runAs(Security.java:41)
      at com.bea.wli.sb.transports.poller.listener.PolledMessageListenerMDB.onMessage(PolledMessageListenerMDB.java:39)
      at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
      at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
      at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
      at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
      at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
      at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
      at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
      at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
      at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

      Please help me to resolve this error.

      Regards,
      Rao