OSB FTP Poller Continuously Opens Connections to FTP Server (Doc ID 1636352.1)

Last updated on NOVEMBER 03, 2016

Applies to:

Oracle Service Bus - Version 11.1.1.4.0 and later
Information in this document applies to any platform.

Symptoms

In an OSB project, you are using FTP poller (ftp transport) to process files from a FTP server. Suddenty, the FTP poller continuously opens connections to the ftp server. This prevents the FTP server from accepting connections from other clients.

In the server log, lots messages occurre repeatedly:

####<2014-03-05 05:35:30 179> <Error> <WliSbTransports> <mycompany.com> <osb7> <[ACTIVE] ExecuteThread: '73' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-7A7350B1FF47536BDFFA> <0000KHZ29cG2vHD5VBl3ic1J2kH0000000> <1393968930179> <BEA-381106> <Unable to get file myfile.csv.Stage on attempt number 0: java.io.IOException: Data: OpenSocket, Permission Denied?
java.io.IOException: Data: OpenSocket, Permission Denied?
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.openPassiveDataSocket(FtpClient.java:1340)
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.executeDataCommand_in_PassiveMode(FtpClient.java:1513)
    at com.bea.wli.sb.transports.ftp.resource.FTPResource.getDataInputStream_in_PassiveMode(FTPResource.java:1381)
    at com.bea.wli.sb.transports.ftp.resource.FTPSource.getInputStream(FTPSource.java:52)
    at stages.transform.runtime.MFLTransformRuntimeStep.getBinarySourceStream(MFLTransformRuntimeStep.java:228)
.......
Caused By: java.lang.Exception: 550 Failed to open file.
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.openPassiveDataSocket(FtpClient.java:1321)
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.executeDataCommand_in_PassiveMode(FtpClient.java:1514)
    at com.bea.wli.sb.transports.ftp.resource.FTPResource.getDataInputStream_in_PassiveMode(FTPResource.java:1381)
    at com.bea.wli.sb.transports.ftp.resource.FTPSource.getInputStream(FTPSource.java:54)
    at stages.transform.runtime.MFLTransformRuntimeStep.getBinarySourceStream(MFLTransformRuntimeStep.java:228)
    at stages.transform.runtime.MFLTransformRuntimeStep.transformNonXMLtoXML(MFLTransformRuntimeStep.java:123)
    at stages.transform.runtime.MFLTransformRuntimeStep.processMessage(MFLTransformRuntimeStep.java:70)
    at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
..........
####<2014-03-05 05:35:30 183> <Error> <WliSbTransports> <mycompany.com> <osb7> <[ACTIVE] ExecuteThread: '73' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-7A7350B1FF47536BDFFA> <0000KHZ29cG2vHD5VBl3ic1J2kH0000000> <1393968930183> <BEA-381106> <Unable to get file myfile.csv.Stage on attempt number 1: java.io.IOException: Data: OpenSocket, Permission Denied?
java.io.IOException: Data: OpenSocket, Permission Denied?
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.openPassiveDataSocket(FtpClient.java:1340)
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.executeDataCommand_in_PassiveMode(FtpClient.java:1513)
    at com.bea.wli.sb.transports.ftp.resource.FTPResource.getDataInputStream_in_PassiveMode(FTPResource.java:1381)
    at com.bea.wli.sb.transports.ftp.resource.FTPSource.getInputStream(FTPSource.java:52)
    at stages.transform.runtime.MFLTransformRuntimeStep.getBinarySourceStream(MFLTransformRuntimeStep.java:228)
    at stages.transform.runtime.MFLTransformRuntimeStep.transformNonXMLtoXML(MFLTransformRuntimeStep.java:123)
    at stages.transform.runtime.MFLTransformRuntimeStep.processMessage(MFLTransformRuntimeStep.java:70)
........
Caused By: java.lang.Exception: 550 Failed to open file.
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.openPassiveDataSocket(FtpClient.java:1321)
    at com.bea.wli.sb.transports.ftp.resource.FtpClient.executeDataCommand_in_PassiveMode(FtpClient.java:1514)
    at com.bea.wli.sb.transports.ftp.resource.FTPResource.getDataInputStream_in_PassiveMode(FTPResource.java:1381)
    at com.bea.wli.sb.transports.ftp.resource.FTPSource.getInputStream(FTPSource.java:54)
    at stages.transform.runtime.MFLTransformRuntimeStep.getBinarySourceStream(MFLTransformRuntimeStep.java:228)
    at stages.transform.runtime.MFLTransformRuntimeStep.transformNonXMLtoXML(MFLTransformRuntimeStep.java:123)
    at stages.transform.runtime.MFLTransformRuntimeStep.processMessage(MFLTransformRuntimeStep.java:70)
    at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
.......
####<2014-03-05 05:35:30 519> <Info> <EJB> <mycompany.com> <osb7> <[ACTIVE] ExecuteThread: '73' for queue: 'weblogic.kernel.Default (self-tuning)'> <alsb-system-user> <> <0000KHZ29cG2vHD5VBl3ic1J2kH0000000> <1393968930519> <BEA-010213> <Message-Driven EJB: PolledMessageListenerMDBEJB's transaction was rolled back. The transaction details are: Xid=BEA1-7A7850B1FF47536BDFFA(715692131),Status=Rolled back. [Reason=Unknown],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=600,XAServerResourceInfo[WLStore_base_domain_FileStore_auto_7]=(ServerResourceInfo[WLStore_base_domain_FileStore_auto_7]=(state=rolledback,assigned=osb7),xar=WLStore_base_domain_FileStore_auto_7874122498,re-Registered = false),SCInfo[base_domain+osb7]=(state=rolledback),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=osb7+xx.xx.xx.xx:10102+base_domain+t3+,.....).>
####<2014-03-05 05:35:30 628> <Warning> <EJB> <mycompany.com> <osb7> <[ACTIVE] ExecuteThread: '34' for queue: 'weblogic.kernel.Default (self-tuning)'> <alsb-system-user> <> <0000KHZ29cG2vHD5VBl3ic1J2kH0000000> <1393968930628> <BEA-010065> <MessageDrivenBean threw an Exception in onMessage(). The exception was:
 javax.ejb.EJBException: nested exception is: com.bea.wli.sb.transports.TransportException: Binary to XML mfl transformation failed for the MFL Resource EAI/service/HOPE/JapanThirdPartyLogisticsYamataneToHOPE/ACKFileFormat : Data: OpenSocket, Permission Denied?.
javax.ejb.EJBException: nested exception is: com.bea.wli.sb.transports.TransportException: Binary to XML mfl transformation failed for the MFL Resource EAI/service/HOPE/JapanThirdPartyLogisticsYamataneToHOPE/ACKFileFormat : Data: OpenSocket, Permission Denied?
....
####<2014-03-05 05:35:30 629> <Warning> <EJB> <mycompany.com> <osb7> <[ACTIVE] ExecuteThread: '75' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1393968930629> <BEA-010216> <The Message-Driven EJB: PolledMessageListenerMDBEJB is throwing exception when processing the messages. Delivery failed after 6,656 attempts. The EJB container will suspend the message delivery for 60 seconds before retry.>


Checking the error directory we found that file myfile.csv.Stage was in this directory.

In the WLS console, monitoring the JMS queue, there was 1 message in wlsb.internal.transport.task.queue.ftp.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms