Oracle SOA Suite 11g File and FTP adapters supports operations that are not available with the wizards.
These operations are Copy, Move and Delete files between File and FTP servers.
It is explained at Oracle Fusion Middleware User's Guide for Technology Adapters
First I developed a composite with a bpel process that exposes this operations, and then an OSB 11g project that use the same adapters.
Some properties can't be assigned at runtime, that's why I created one jca for each operation.
The operations exposed are:
FileCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile
FileMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile
FileDelete -> TargetDirectory, TargetFile
FileToFTPCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FileToFTPMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPDelete -> TargetDirectory, TargetFile, jndiFtp
FtpToFileCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FtpToFileMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
The jndiFtp parameter that you use must be added to the FtpAdapter Resource Adapter and redeploy it.
For example: you can use the standard eis/ftp/FtpAdapter or create a new one with the desired configuration.
<reference name="FTPMove" ui:wsdlLocation="FTPMove.wsdl">
<interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/ftp/SOAFtpIO/SOAFtpIO/FTPMove/#wsdl.interface(FTPMove_ptt)"/>
<binding.jca config="FTPMove_ftp.jca">
<property name="UseNativeRenameOperation" type="xs:string" many="false" override="may">false</property>
</binding.jca>
</reference>
If you use this app in a Cluster installation, must change the jca source files to use HA Adapters.
The source code is here.
I hope that this helps.
JP
These operations are Copy, Move and Delete files between File and FTP servers.
It is explained at Oracle Fusion Middleware User's Guide for Technology Adapters
First I developed a composite with a bpel process that exposes this operations, and then an OSB 11g project that use the same adapters.
Some properties can't be assigned at runtime, that's why I created one jca for each operation.
The operations exposed are:
FileCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile
FileMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile
FileDelete -> TargetDirectory, TargetFile
FileToFTPCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FileToFTPMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FTPDelete -> TargetDirectory, TargetFile, jndiFtp
FtpToFileCopy -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
FtpToFileMove -> SourceDirectory, SourceFile, TargetDirectory, TargetFile, jndiFtp
The jndiFtp parameter that you use must be added to the FtpAdapter Resource Adapter and redeploy it.
For example: you can use the standard eis/ftp/FtpAdapter or create a new one with the desired configuration.
If the FTP server does not support the RNFR/RNTO FTP commands, then you must set UseNativeRenameOperation to FALSE and define the property in composite.xml, as shown in the following example:
<reference name="FTPMove" ui:wsdlLocation="FTPMove.wsdl">
<interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/ftp/SOAFtpIO/SOAFtpIO/FTPMove/#wsdl.interface(FTPMove_ptt)"/>
<binding.jca config="FTPMove_ftp.jca">
<property name="UseNativeRenameOperation" type="xs:string" many="false" override="may">false</property>
</binding.jca>
</reference>
If you use this app in a Cluster installation, must change the jca source files to use HA Adapters.
The source code is here.
I hope that this helps.
JP
1 comment:
Hello,
This was a nice package, but I can't get the FTP-utilities to work.
I haven't changed any of your code, but the user-header jca.jndi for the ftp-adapters won't change/work, it always uses the standard ftp adapter specified in each of the jca files, instead of the one specified in the user header.
Running SOA Suite 11.1.1.6
Any clues to what might be wrong?
Regards Krister
Post a Comment