PI FTP Adapter: u201CAdd Time Stampu201D adds a subdirectory instead of a prefix
SAP PI FTP Adapter: u201CAdd Time Stampu201D will add a subdirectory instead of a prefix to the file name.
Flow: SAP ECC 6.0 <- Idoc <- XI/PI 7.0 - FTP Adapter <- Partner
Incoming file: "xxx_ack_MATMAS_pdt_80271":
Adapter Add Time Stamp will add new subdirectory: "20110210-023047-618_/"
It should only add a prefix to the filename: "20110210-023047-618_"
So the problem is the "/" it is adding, which creates a new subdirectory.
The error:
Attempt to archive file "/data/XIinterface/PRD/DWMS/FR/Inbound/Archive/20110210-023047-618_/xxx_ack_MATMAS_pdt_80271" after processing failed with java.io.FileNotFoundException:
(No such file or directory).
The directory that exists on the OS is:
"/data/XIinterface/PRD/DWMS/FR/Inbound/Archive/u201D
The directory that is attempted to be created is:
"/data/XIinterface/ PRD/DWMS/FR/Inbound/Archive/20110210-023047-618_/u201D
Solutions:
1. Unselect u201CAdd Time Stampu201D -> Partner is sending the Time Stamp
2. UDF (User Defined Function) -> remove the "/"
Regards
Metusala Dikobe
Hi Stefan,
Do you mean to say that the 'Add time-stamp' property of the File Sender adapter is actually creating a folder with the current timestamp for you?
Regards,
Diptee
Similar Messages
-
Hi
I have read that a polling files from an FTP server windows but I had some problems because the polling ejecutarce to mark the following error log
<2009-06-01 20:44:52,822> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Managed Connection Created
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Adding Event Listener
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Connection
<2009-06-01 20:44:52,822> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection Created
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection manager allocated connection :oracle.tip.adapter.ftp.FTPConnection@1e2d982
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host name is 'MyHost'.
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Reading reply from MyHost
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: USER cajero
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: USER, reply:
331 Password required for cajero.
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP command: PASS
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASS, reply:
230 User cajerologged in.
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: PASV
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASV, reply:
227 Entering Passive Mode (192,168,0,150,15,190).
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Passive: ip = 192.192.0.192, port = 4030
<2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connecting to MyHost:4030
<2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: NLST C:\pub\cashier
<2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: NLST, reply:
125 Data connection already open; Transfer starting.
<2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket being read by [JCA-work-instance:FTP Adapter-4]
<2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket read failed by [JCA-work-instance:FTP Adapter-4] DATA=[TIMEDOUT] in [93 msecs]
<2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Sending event: 1 with: oracle.tip.adapter.ftp.FTPConnection@1e2d982
<2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPManagedConnection::destroy called, closing physical socket
<2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Clearing Event Listeners
<2009-06-01 20:44:53,088> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> afterDelivery() is invoked
<2009-06-01 20:44:53,088> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Committing JTA transaction com.evermind.server.ApplicationServerTransactionManager@1961a07
I have already changed the timeout of transactions in the following files:
SOA_HOME\j2ee\oc4j_soa\config\transaction-manager.xml
greater thanorion-ejb-jar.xml
SOA_HOME\j2ee\oc4j_soa\application-deployments\orabpel\ejb_ob_engine\orion-ejb-jar.xml
less than transaction-manager.xml
SOA_HOME\bpel\domains\domain_name\config\domain.xml
less than orion-ejb-jar.xml
but the error continues. I need your help pls be grateful
GreetingsJDT
In making the execution of an interface that executes the method SynchRead and review the log. I realized that the same brand message timeout single interface that works well.
<2009-06-02 13:37:50,177> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> ResourceAdapterMetaData Connection Created
<2009-06-02 13:37:50,177> <INFO> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/F:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_BPEL_REGISTRO_COB_1.0_e24ce5bd36c213c5eba6a75bc9f44618.tmp/FTPArchivosICOMS.wsdl [ SynchRead_ptt::SynchRead(Empty,Pagos) ] - Using JCA Connection Pool - max size = <unbounded>
<2009-06-02 13:37:50,193> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Managed Connection Created
<2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Adding Event Listener
<2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Connection
<2009-06-02 13:37:50,193> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection Created
<2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection manager allocated connection :oracle.tip.adapter.ftp.FTPConnection@1f8aab0
<2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating FTPInteraction
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating an FTPSender
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Sender created
<2009-06-02 13:37:50,224> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPInteraction Created
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP outbound adapter interaction invoked : oracle.tip.adapter.ftp.outbound.FTPReadInteractionSpec@13a6c6f
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FileInteraction::PROPS ====>{}
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Considering header for filename, output filename from header: PGLINEAS1-090508133556.txt
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Considering header for directoryName, directoryName from header: Cashier
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Agent Determined
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPSource::Local Temp Directory is F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Host: myHost
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Post: 21
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Username: myuser
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Keep Connections: true
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP outbound adapter read file interaction invoked.
<2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Outbound File Adapter received request to read file with parameters: { Directory=Cashier, FileName=PGLINEAS1-090508133556.txt, DeleteFile=false}, headers=[_directory=[Cashier], _filename=[PGLINEAS1-090508133556.txt], _props=[{}]]
<2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Temp File mDGwM+l2LhBE8Qq9VFaD1Q== Local Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound Remote Dir: Cashier
<2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Calling getContentsAsStream() on FTPAgent: myHost: type = FTP, host = myHost:21, username = myuser
directory = null, mode = STREAM, fileType = ASCII, maxRetries = 0 Localfile: PGLINEAS1-090508133556.txt Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound\mDGwM+l2LhBE8Qq9VFaD1Q== Remote Dir: Cashier
<2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host name is 'myHost'.
<2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Reading reply from myHost
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: USER myuser
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: USER, reply:
331 Password required for myuser.
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: PASS
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASS, reply:
230 User myuser logged in.
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPAgent::absoluteFilePath called with[Cashier], file=[PGLINEAS1-090508133556.txt]
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: PASV
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASV, reply:
227 Entering Passive Mode (192,168,0,150,4,46).
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Passive: ip = 192.192.0.192, port = 1070
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connecting to myHost:1070
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: TYPE I
<2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: TYPE, reply:
200 Type set to I.
<2009-06-02 13:37:50,271> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: RETR Cashier\PGLINEAS1-090508133556.txt
<2009-06-02 13:37:50,271> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: RETR, reply:
125 Data connection already open; Transfer starting.
<2009-06-02 13:37:50,287> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket being read by [AJPRequestHandler-HTTPThreadGroup-64]
<2009-06-02 13:37:50,380> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket read failed by [AJPRequestHandler-HTTPThreadGroup-64] DATA=[TIMEDOUT] in [93 msecs]
<2009-06-02 13:37:50,380> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Returning local file: mDGwM+l2LhBE8Qq9VFaD1Q== Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound\mDGwM+l2LhBE8Qq9VFaD1Q==
<2009-06-02 13:37:50,427> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Created translator : oracle.tip.pc.services.translation.xlators.nxsd.NXSDTranslatorImpl@112ff56
<2009-06-02 13:37:50,459> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Completed translation for : Cashier\PGLINEAS1-090508133556.txt
Thank you...
Edited by: user10655677 on Jun 2, 2009 9:57 AM -
hello all
I have a BPEL process in which I implement an FTP read the files on a server every time they are updated or loaded for the first time but I can not get it. Looking at the log I found what's next:
<2009-06-02 16:39:29,229> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Managed Connection Created
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Adding Event Listener
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Connection
<2009-06-02 16:39:29,229> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection Created
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection manager allocated connection :oracle.tip.adapter.ftp.FTPConnection@d313d6
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host name is 'MyHostFTP'.
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Reading reply from MyHostFTP
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP FTP command: USER MyUserFTP
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: USER, reply:
331 Password required for MyUserFTP.
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP FTP command: PASS
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASS, reply:
230 User MyUserFTP logged in.
<2009-06-02 16:39:29,229> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP FTP command: PASV
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASV, reply:
227 Entering Passive Mode (192,168,0,150,5,25).
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Passive: ip = 168.168.168.168, port = 1305
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connecting to MyHostFTP:1305
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP FTP command: NLST C:\ftpFiles
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: NLST, reply:
125 Data connection already open; Transfer starting.
<2009-06-02 16:39:29,244> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket being read by [JCA-work-instance:FTP Adapter-11]
<2009-06-02 16:39:29,354> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket read failed by [JCA-work-instance:FTP Adapter-11] DATA=[TIMEDOUT] in [110 msecs]
<2009-06-02 16:39:29,354> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Sending event: 1 with: oracle.tip.adapter.ftp.FTPConnection@d313d6
<2009-06-02 16:39:29,354> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPManagedConnection::destroy called, closing physical socket
<2009-06-02 16:39:29,354> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Clearing Event Listeners
without obtaining the contents of files. This is my wsdl
<definitions
name="FTP_Polling"
targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_Polling/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_Polling/"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
xmlns:pc="http://xmlns.oracle.com/pcbpel/"
xmlns:imp1="http://TargetNamespace.com/FTP_Cobranza"
xmlns:hdr="http://xmlns.oracle.com/pcbpel/adapter/ftp/"
>
<import namespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/" location="ftpAdapterInboundHeader.wsdl"/>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" >
<import namespace="http://TargetNamespace.com/FTP_Cobranza" schemaLocation="CAJEROS.xsd" />
</schema>
</types>
<message name="Pagos_msg">
<part name="Pagos" element="imp1:Pagos"/>
</message>
<portType name="Get_ptt">
<operation name="Get">
<input message="tns:Pagos_msg"/>
</operation>
</portType>
<binding name="Get_binding" type="tns:Get_ptt">
<pc:inbound_binding />
<operation name="Get">
<jca:operation
FileType="ascii"
LogicalDirectory="FtpFiles"
ActivationSpec="oracle.tip.adapter.ftp.inbound.FTPActivationSpec"
DeleteFile="true"
IncludeFiles=".*\.txt"
ExcludeFiles=".*corte.*\.txt"
PollingFrequency="120"
MinimumAge="60"
OpaqueSchema="false" >
</jca:operation>
<input>
<jca:header message="hdr:InboundHeader_msg" part="inboundHeader"/>
</input>
</operation>
</binding>
<service name="FTP_Polling">
<port name="Get_pt" binding="tns:Get_binding">
<jca:address location="eis/Ftp/FtpAdapter" UIincludeWildcard="*.txt" UIexcludeWildcard="*corte*.txt" />
</port>
</service>
<plt:partnerLinkType name="Get_plt" >
<plt:role name="Get_role" >
<plt:portType name="tns:Get_ptt" />
</plt:role>
</plt:partnerLinkType>
</definitions>
and I also changed the bpel.xml
<activationAgent className="oracle.tip.adapter.fw.agent.jca.JCAActivationAgent" partnerLink="FTP_Polling">
<property name="portType">Get_ptt</property>
<property name="FtpFiles">C:\ftpFiles</property>
</activationAgent>
I hope someone can help me with my problem.
Greetings
Edited by: user10655677 on 2/06/2009 05:13 PMHello
The problem: I was sending the wrong direction where should look the files in the FTP. The correct way to send is as follows:
My FTPService.wsdl
<binding name="Get_OpenBatch_binding" type="tns:Get_OpenBatch_ptt">
<pc:inbound_binding/>
<operation name="Get_OpenBatch">
<jca:operation FileType="ascii"
PhysicalDirectory="Cashier"
ActivationSpec="oracle.tip.adapter.ftp.inbound.FTPActivationSpec"
ExcludeFiles=".*corte.*\.txt"
DeleteFile="true"
PollingFrequency="60"
MinimumAge="0"
FileModificationTime="FileSystem"
ModificationTimeFormat="4,18,yyyyMMddHHmmSS"
OpaqueSchema="false"/>
<input>
<jca:header message="hdr:InboundHeader_msg" part="inboundHeader"/>
</input>
</operation>
</binding>
<service name="FTPOpenBatch_RegCob">
<port name="Get_OpenBatch_pt" binding="tns:Get_OpenBatch_binding">
<jca:address location="eis/Ftp/FtpAdapter" UIexcludeWildcard="*corte*.txt"/>
</port>
</service>
<plt:partnerLinkType name="Get_OpenBatch_plt">
<plt:role name="Get_OpenBatch_role">
<plt:portType name="tns:Get_OpenBatch_ptt"/>
</plt:role>
</plt:partnerLinkType>
</definitions>
look does not remove the attributes FileModificationTime and ModificationTimeFormat, as recommended in many blogs
and my bpel.xml
<activationAgents>
<activationAgent className="oracle.tip.adapter.fw.agent.jca.JCAActivationAgent" partnerLink="FTPOpenBatch_RegCob">
<property name="portType">Get_OpenBatch_ptt</property>
<property name="Cashier">Cashier</property>
</activationAgent>
</activationAgents>
here I specify the logic directory where are the files.
If you like you can check where the post was given to the problem follow:
FTP Adapter Error time out: FTP Adapter Error time out
I hope this work.
Greetings -
FTP Adapter fails first time when bpel process is invoked from concurrent
Hi,
We noticed that the invoke of the FTP adapter fails the first time when the bpel process is invoked from a concurrent program. The second time the concurrent is ran, it completes fine. However, when invoked from the console, it compeltes fine the first time itlsef.
Any idea what could be worng. We are on SOA Suite 10.1.3.4
Thanks
-PrapoornaWhat you are doing with FTP adapter? Are you writing a file ? Any error details in logs when it is failing on first invocation ?
-
FTP Adapter restrict polling frequency active time frame in a day
Hi All,
Is there anyway I can restrict FTP adapter polling frequency to be active during a particular time frame of the day. Say, my service should poll the incoming location for Sales order data for every hour during business hours of the day.
Thanks,
AGHi
SOA Suite 12c will expose Oracle ESS as the scheduler.
ESS will allow you to schedule soa composites / OSB services etcand allow you to enable / disable them based on jobs, which is what you desire.
12c SOA Suite is expected later this Summer.
Cheers
iain -
How to give a dynamic File Name for Receiver File/FTP Adapter.
Hi Experts,
I have one scenario in which we are creating a flat file of IDOC which is coming from R/3 & sending it to FTP location. For this we have configured Receiver FTP adapter with File Name Scheme as "NT.out" & in File Consturction mode i have given as "Add Time Stamp".
therfore while creating a file it is creating as NTyyyyMMdd-HHmmss-SSS.out
where as my requirement is only to to add Time & not the Date. (NThhmmss.out)
How to do this ?
for your info we are using ABAP Mapping.
Pl help me
Regards,
UmeshHi Umesh,
Add one more field to your target structure for your file name and populate that field as per your requirement like NTyyyyMMdd.out. In receiver communication channel use Variable subtiution option and give the refrence of Payload and file construction mode set as create.
And refer the below weblogs for Variable Subtiutuion File Name Scheme
/people/jayakrishnan.nair/blog/2005/06/20/dynamic-file-name-using-xi-30-sp12-part--i - Dynamic File Name Part 1
/people/jayakrishnan.nair/blog/2005/06/28/dynamic-file-namexslt-mapping-with-java-enhancement-using-xi-30-sp12-part-ii - Dynamic File Name Part 2
Hope this way would be solve u r problem.
Cheers
Veera
>>>Reward points, if it is needful -
FTP Adapter Configuration For End Of File
Hi Team,
i'm doing DB polling and writing that contents to on file using FTP Adapter, DB poller will poll each line @ a time and writes to remote Server
in my FTP adapter usage, after writing the whole contents which i pass from my bpel,
i need to use some hardcoded values at the end of the file
Eg.
test1|test2|test3|test4
test1|test2|test3|test4
test1|test2|test3|test4
test1|test2|test3|test4
@@Thanks@@
Like shown above after writing some contents
i need to add @@Thanks@@ then one ENTER
Thanks in advanceOk, now I'm understanding you are using "Append existing file" option checked... The approach won't work with appending on...
If you know when it is the end of the file you can do something like this...
At the first line file will be like this...
line1|line1
Second line...
line1|line1
line2|line2
When you receive the third line and you know that's the last line you write firstly this...
line1|line1
line2|line2
line3|line3
And then you write the @@Thanks@@ at the end using a different translation schema... Possibly a different FTP Adapter writing on the same file...
line1|line1
line2|line2
line3|line3
@@Thanks@@
However, if you don't know when you are receiving the last line and/or you need the @@Thanks@@ always there it won't work with append option... You'll possibly need a sync read FTP adapter to read the file and rewrite it again at every iteration...
Cheers,
Vlad -
FTP adapter not activating on its own
Hi all,
I have set up a sender FTP adapter and whenever a file falls in there the process is not trigered automatically...Everytime we need activate our directory settings to send the file through FTP adapter...I am not able to figure out why the FTP ADAPTER cannot get activated once it receives a file..
Any ideas...
-TeresaHi teresa
What I can figure out is , I think you might not given the polling time , after certain time adapter needs to poll the file from source and excute it. add some value of polling say 60( 60 sec) . It will poll the file after every 60 sec and excute it. also make sure that mode should not be test otherwise it will excute it every time after polling time and u will have huge no of messages in XI.
Hope this will help .
regards
Vinod ahir -
How can ftp-adapter override the name rules
I have a ftp adaptor, which generate filenames with the following rule NA<%time%>.txt, but I would rather have it be stamped with a more meaninful filename ex NA<accountnumber>.txt.
I am new to Interconnect, IStudio and ftp adaptors...so I have no experience in this. I
I have done some research, and I realise that I might have to overwrite the The FileSenderCustomizer Interface more specifically the generateFilename method.
The question is really, where and how do I do this?
Thanks
Edited by: olona on Mar 3, 2010 4:54 AM
Edited by: olona on Mar 5, 2010 4:53 AM
Move to Integration - Adapters => Integration - AdaptersAn example of a ftp-adapter that will generate a filename based on a value in the file. The file contains CustomerListRecord which again contains multiple Records of Customers, which then contains the actual values.
import java.util.Date;
import java.util.ListIterator;
import java.util.Vector;
import oracle.oai.agent.adapter.sdk.Agent;
import oracle.oai.agent.adapter.sdk.AttributeObject;
import oracle.oai.agent.adapter.sdk.MessageObject;
import oracle.oai.agent.adapter.transport.TransportMessage;
public class SlfNaskCustFileSender {
private final static String objectName = "SLFCustFileSenderStripped";
private final String fileNameExtension = ".c15";
private final String keyMasterRecord = "CustomerListRecord";
private final String keyRecords = "Records";
private final String keyRecordField = "apar_id";
public static void main(String args[]) {
System.out.println("Its alive: " + objectName);
public String generateFileName(Agent agent, String rule, String app, String partitition, Date time,
MessageObject mobj, AttributeObject aobj) {
// Default filename. Add random element just in case.
String fileName = "NAC" + (Math.random() * 100) + fileNameExtension;
// Picking up the buntnumber.
AttributeObject aoCustListRecords = (AttributeObject) mobj.get(keyMasterRecord);
Object o = aoCustListRecords.get(keyRecords);
if (o instanceof Vector) {
Vector v = (Vector) o;
ListIterator iter = v.listIterator();
while (iter.hasNext()) {
Object x = iter.next();
if (x instanceof AttributeObject) {
AttributeObject aoX = (AttributeObject) x;
fileName = aoX.get(keyRecordField) + fileNameExtension;
return fileName;
public void customizeTransportMessage(Agent agent, TransportMessage transportMessage, MessageObject mobj,
AttributeObject aobj) {
} -
Using relative path for in file/ftp adapter
Hi All,
How to have a relative path for file/ ftp adapter's inbound/outbound operation?
Example: Consider $ORA_HOME = /home/oracle --> This environment variable can be different on different machines
i want to drop a file in to $ORA_HOME/folder1/folder2 (Or poll for a file).
<partnerLinkBinding name="FTP">
<property name="wsdlLocation">FTP.wsdl</property>
<property name="out_dir" type="LogicalDirectory">What do i write here???</property>
<property name="retryInterval">60</property>
</partnerLinkBinding>
if i cant configure this in partner link section or in activation agent sction, how else do i achieve this?
i am using 10.1.3.* version.
Thanks in advance.
Roshan.You can achive it using the deployment scripts if the directory is changing on the basis of the environment
If you want to change at run time than you can use the jca properties to set using the variables at runtime.
Regards,
Ajay -
FTP Adapter - ModificationTimeFormat -issue
Hi,
We are using FTP adapter to poll a file from FTP server. We neither have an option to delete or archive files from that FTP remote server hence we are using "FileModificationTime" option. When we use this option, polling adapter errors out with ---
"Could not get file modification time for file :/testfile.txt. Verify that the values for the "ModificationTimeFormat" activation parameter are correct.Ensure the time format pattern and filename begin index and end index are specified according to the specific FTP server.
Check the error stack and fix the cause of the error. Contact oracle support if error is not fixable.
at oracle.tip.adapter.ftp.inbound.FTPSource.getTimestamp(FTPSource.java:1100)
at oracle.tip.adapter.file.inbound.FileList.isMinimumAgePeriod(FileList.java:462)
at oracle.tip.adapter.file.inbound.FileList.ignoreFile(FileList.java:497)
at oracle.tip.adapter.ftp.FTPClient.populateNlstResults(FTPClient.java:918)
at oracle.tip.adapter.ftp.FTPClient._listFiles(F"
Below is the synopsis of log file -
<2010-04-01 16:21:53,026> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Host test.ftp.server FTP command: MDTM /PGP BAM OUTBND UKFSBAM
<2010-04-01 16:21:53,078> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> FTP Command: MDTM, reply:
500 command not understood
<2010-04-01 16:21:53,078> <WARN> <default.collaxa.cube.activation> <File Adapter::Inbound> FTPClient.getMDTM(): unexpected 500 is encountered.
<2010-04-01 16:21:53,078> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Host test.ftp.server FTP command: QUIT
<2010-04-01 16:21:53,129> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> FTP Command: QUIT, reply:
221 Goodbye.
<2010-04-01 16:21:53,130> <ERROR> <default.collaxa.cube.activation> <File Adapter::Inbound> Could not get file modification time for : PGP BAM OUTBND UKFSBAM
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Control socket being read by [JCA-work-instance:FTP Adapter-27]
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Sending event: 1 with: oracle.tip.adapter.ftp.FTPConnection@f20ee14
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> FTPManagedConnection::destroy called, closing physical socket
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Clearing Event Listeners
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> Error retrieving polled files.
<2010-04-01 16:21:53,130> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound>
ORABPEL-11430
Error in listing files in the remote directory.
Unable to list file in remote directory.
Check the error stack and fix the cause of the error. Contact oracle support if error is not fixable.
at oracle.tip.adapter.ftp.FTPAgent.getFileList(FTPAgent.java:470)
at oracle.tip.adapter.file.inbound.FileSource.getFileList(FileSource.java:234)
at oracle.tip.adapter.file.inbound.PollWork.pollFiles(PollWork.java:254)
at oracle.tip.adapter.file.inbound.PollWork.run(PollWork.java:144)
at oracle.tip.adapter.fw.jca.work.WorkerJob.go(WorkerJob.java:51)
at oracle.tip.adapter.fw.common.ThreadPool.run(ThreadPool.java:280)
at java.lang.Thread.run(Thread.java:595)
Caused by: ORABPEL-11400
Can someone please help.
Thanks,
PhaniThe FTP server you're connecting to does not understnad the MDTM command the FTP adapter is configured to use in order to obtain the files date/time:
<2010-04-01 16:21:53,078> <DEBUG> <default.collaxa.cube.activation> <File Adapter::Inbound> FTP Command: MDTM, reply:
500 command not understood
Try using one of the other File Modification Time options in the FTP Adapter wizard such as Directory Listing or File Name Substring -
Hi All,
We are seeing an issue with the FTP Adapter Communication Channel in SAP PI 7.1. When the communication channel is connecting to a FTP Server and if the connection request timeout ( ex: SFTP Server down ) we see a connection error .
However the overall communciation channel status doesnot refelct it and it is still in GREEN status. The status being wrong doesnt raise an adapter CCMS alert. Also we are seeing that the communication channel stops all connection attempts after the failure for that communication channel.
Wanted to check if anyone has seen or encountered the issue and how did you get past the problem.
Thanks in advance..
ArunavaHi,
Could you please let me know whether it is sender communication channel or receiver ?
Also please check below.
1. Java messaging system queues are free or hanged ?
2. Please mention time out paramter in the channel.
3. Did you try Start/Stop the channel.
Please get back to me.
Regards,
Sachin
Edited by: Schin_Sharma on May 26, 2011 9:39 AM -
Hello all,
I'm having some problems to receive files from ftp adapter of oai.
The FTP Adapter don't give any error when it start, but it simple don't do anything when i put a file in the ftp receive directory. (I test the same adapter to send and it's working fine)
Do anyone have any tip?
One other thing is: How can i change the filename that the FTP Adapter of oia give to the files that he sends?
Thanks,
Antsnio Trindade
PS: Please email me to:
[email protected]
or
[email protected]Antonio,
please see my comments below.
Thanks,
Markus
Markus Spohn
Senior Product Manager
9iAS Integration
Server Technologies
Oracle Corporation
200 Oracle Parkway m/s 2op393
Redwood Shores, CA 94065
USA
Work: +1-650-506-9977
Cell: +1-415-806-1405
Fax: +1-650-506-7406
e-Mail: [email protected]
Hello all,
I'm having some problems to receive files from ftp adapter of oai.
The FTP Adapter don't give any error when it start, but it simple don't do anything when i put a file in the ftp receive directory. (I test the same adapter to send and it's working fine)
Do anyone have any tip?I'd need more information about the configuaration of the FTP adapter.
One other thing is: How can i change the filename that the FTP Adapter of oia give to the files that he sends?In the current version of the FTP adapter, the naming convention of the file is as follows
<ftp adapter name><instance number>-<time stamp>
With the next patchset for 9iAS InterConnect 9.0.2, which is expect to be released within the next week or so,
we'll provide aditional functionality for the FTP adapter. That will include features that allow users to specify custom
file names and naming conventions.
Thanks,
Antsnio Trindade
PS: Please email me to:
[email protected]
or
[email protected] -
FTP Adapter on OSB - how to specify logical directory path
I am using the ftp adapter on osb 11g (Oracle Service Bus Version: [Oracle Service Bus Server Side Dependencies 11.1 Thu Aug 19 02:10:08 PDT 2010 ] Oracle Weblogic Server Version: [WebLogic Server 10.3.4.0 Fri Dec 17 20:47:33 PST 2010 1384255 ])
I defined the ftp adapter using jdev and imported the jca artifacts into osb.
I created a business service using jca adapter to put the file to the ftp server.
The problem is the write directory on the ftp server is different for each environment - DEV, QA, PROD.
I used a physical directory specification when defining the adapter in JDEV because it wasn't clear from the help how i would override a logical directory during deployment to osb (it is clear if deploying to soa suite).
Is there a way to override this dynamically override this directory at runtime. Or even better a way to override during deployment time?You do it either way....
Import the SBConfig jar into the sbconsole and change the value in the JCA file
or
Re: Customizing JCA FTP Adapter properties in OSB -
Quality of service in Receiver file/ftp adapter (SAP PI 7.1)?
Hi,
We are building an IDoc to File scenario in SAP PI 7.1, where a single incoming idoc will create three different output files. Also files must be created in target server in a specific order.
Our first idea to ensure that files would be created following a specific order was that Message mapping (in Java) build target payload with all three files following expected sequence.
In addition, receiver file/ftp adapter is setup with a dynamic variable to create each file with a different filename adding also timestamp.
Testing the scenario, we see that three files are created in target server but when we sort them by creation date, it seems they don't follow always same sequence.
Sometimes adapter creates File1, File2, File3; next time it created File2, File1, File3 and so on.
Our problem is that files must be created always with a specific order and we cannot use BPM. Does anyone know if a receiver file/ftp adapter can be setup to create files following specific sequence (EOIO)?
I know that sender file/ftp adapter can be setup with a quality of service, but I didn't find anything similar for Receiver file/ftp adapter.
Suggestions will be welcome.
Kind Regards,
AitorHi,
First, thanks all of you for your quick answers. They were helpful because we learnt a new configuration setting.
We tried your suggestions but they didn't really fix our problem.
Finally interface has been re-designed and we will not have to apply this logic, so no issue from our side.
However, let me continue with this topic in case that somebody else will have the same issue, then it will be able to review this thread.
When adapter created the files in the target directory (windows server), files had the expected timestamp in each filename. However, if we sorted windows directory contents by "Date Creation", files were sorted different that timestamp shows in the filename.
For example, adapter created following files:
File1_20090325-115117-169
File2_20090325-115117-174
File3_20090325-115117-180
But when we sorted windows folder contents, files were sorted as follows:
File2_20090325-115117-174
File1_20090325-115117-169
File3_20090325-115117-180
It seems that timestamp was pre-assigned by the adapter, but when adapter created the files, it did it with a temporary name and finally assigns the filename. If a file size was bigger than other, maybe it takes more time and windows creation date is higher.
If so, it means that adapter is not following same instructions as itu2019s indicated in "maintain order at runtime" checkbox.
Do you know if there is any way where we can push also the order in the adapter as we did in interface determination?
Regards,
Aitor
Maybe you are looking for
-
Hi i am baffled as to why when i have apps sitting in my Itunes on the Macbook that need updating used to start straight away once i plugged in the ipad or iphone ,now all updates on ipad or iphone i do manually same with the macbook .Any help would
-
Can my whole iTunes library be moved to external hard drive?
I am needing to free up space on my laptop and am wanting to move my library to an external hard drive. I have copied it to my hard drive but am unsure of what to do next... Do I just delete items from library or is there a way just to take the file
-
Problems w/ Migration Assistant
I just got my new MacBook Pro in the mail and foolishly launched into it without doing much reading up... I used Migration Assistant to move everything from my Powerbook G4 over to my new MacBook Pro. The transfer got to the "about 2 minutes" remaini
-
Dear All, I have a below requirement :- Information:- I have a report which display Plan Amt and Actual Amt spent during a year. Now assuming we have a data for 2 years i.e. 2009 and 2010 data. I have a optional variable defined for the year object a
-
MPEG-1 and MPEG-2 in the same file
I am being asked to deliver a muxed file containing Video: MPEG-2 Program Audio: MPEG-1 Layer 2 I want to use Compressor to generate each as a separate file, then join them using MPEG Streamclip. But I can't get Compressor 1.2.1 to generate a file th