Discussions
Categories
- 17.9K All Categories
- 3.4K Industry Applications
- 3.4K Intelligent Advisor
- 75 Insurance
- 537.7K On-Premises Infrastructure
- 138.7K Analytics Software
- 38.6K Application Development Software
- 6.1K Cloud Platform
- 109.6K Database Software
- 17.6K Enterprise Manager
- 8.8K Hardware
- 71.3K Infrastructure Software
- 105.4K Integration
- 41.6K Security Software
FTP adapter on BPEL
I am using Oracle AS 10.1.3.1 on windows. My FTP server is also on Windows. But during invoke of outbound FTP adapter i am getting following error
I am able to do FTP from AS machine to FTP server (Window) through command prompt and it is working fine.
Error message
<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="code"><code>550</code>
</part><part name="summary"><summary>file:/D:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_ProfileProcesTest_1.3_42d6d84ceee8de6430d37dfbfaa14936.tmp/FTP_To_OUT.wsdl Put_ptt::Put(Root-Element) - WSIF JCA Execute of operation 'Put' failed due to: Error sending file to FTP Server.
Unable to send file to server.
; nested exception is:
ORABPEL-11429
Error sending file to FTP Server.
Unable to send file to server.
Please ensure 1. Specified remote output Dir has write permission 2. Output filename has not exceeded the max chararters allowed by the OS and 3. Remote File System has enough space.
</summary>
</part><part name="detail"><detail>550 /FTPFolders/CUST_081210184025.txt: The system cannot find the path specified. </detail>
</part></bindingFault>
Defination of FTP Adapter is
<definitions
name="FTP_To_OUT"
targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_To_OUT/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_To_OUT/"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
xmlns:imp1="http://TargetNamespace.com/Read"
xmlns:hdr="http://xmlns.oracle.com/pcbpel/adapter/ftp/"
<import namespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/" location="ftpAdapterOutboundHeader.wsdl"/>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" >
<import namespace="http://TargetNamespace.com/Read" schemaLocation="CUST_2007330181610_1.xsd" />
</schema>
</types>
<message name="Root-Element_msg">
<part name="Root-Element" element="imp1:Root-Element"/>
</message>
<portType name="Put_ptt">
<operation name="Put">
<input message="tns:Root-Element_msg"/>
</operation>
</portType>
<binding name="Put_binding" type="tns:Put_ptt">
<jca:binding />
<operation name="Put">
<jca:operation
FileType="binary"
PhysicalDirectory="FTPFolders"
InteractionSpec="oracle.tip.adapter.ftp.outbound.FTPInteractionSpec"
FileNamingConvention="CUST_%yyMMddHHmmss%.txt"
NumberMessages="1"
OpaqueSchema="false" >
</jca:operation>
<input>
<jca:header message="hdr:OutboundHeader_msg" part="outboundHeader"/>
</input>
</operation>
</binding>
<service name="FTP_To_OUT">
<port name="Put_pt" binding="tns:Put_binding">
<jca:address location="eis/Ftp/FtpAdapter" />
</port>
</service>
<plt:partnerLinkType name="Put_plt" >
<plt:role name="Put_role" >
<plt:portType name="tns:Put_ptt" />
</plt:role>
</plt:partnerLinkType>
</definitions>
Defination of OC4j-ra.xml is
<?xml version="1.0"?>
<oc4j-connector-factories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.oracle.com/technology/oracleas/schema/oc4j-connector-factories-10_0.xsd" schema-major-version="10" schema-minor-version="0" >
<imported-shared-libraries>
<import-shared-library name="oracle.bpel.common"/>
<import-shared-library name="oracle.xml"/>
</imported-shared-libraries>
<connector-factory location="eis/Ftp/FtpAdapter" connector-name="Ftp Adapter">
<config-property name="host" value="10.zzz.yy.xxx"/>
<config-property name="port" value="21"/>
<config-property name="username" value="xxx"/>
<config-property name="password" value="yyy"/>
<config-property name="keepConnections" value="true"/>
<config-property name="serverType" value="win"/>
<config-property name="serverLocaleLanguage" value=""/>
<config-property name="serverLocaleCountry" value=""/>
<config-property name="serverLocaleVariant" value=""/>
<config-property name="serverEncoding" value=""/>
<config-property name="useFtps" value="false"/>
<config-property name="walletLocation" value="C:\wallet\ewallet.p12"/>
<config-property name="walletPassword" value="welcome1"/>
<config-property name="channelMask" value="both"/>
<config-property name="securePort" value="990"/>
<config-property name="keyStoreProviderName" value=""/>
<config-property name="keystoreType" value=""/>
<config-property name="keystoreAlgorithm" value=""/>
<config-property name="enableCipherSuits" value=""/>
<config-property name="proxyHost" value=""/>
<config-property name="proxyPort" value=""/>
<config-property name="proxyUsername" value=""/>
<config-property name="proxyPassword" value=""/>
<config-property name="proxyType" value=""/>
<config-property name="proxyDefinitionFile" value=""/>
<config-property name="useProxy" value="false"/>
<config-property name="useSftp" value="false"/>
<config-property name="authenticationType" value="password"/>
<config-property name="preferredKeyExchangeAlgorithm" value="diffie-hellman-group1-sha1"/>
<config-property name="preferredCompressionAlgorithm" value="none"/>
<config-property name="preferredDataIntegrityAlgorithm" value="hmac-md5"/>
<config-property name="preferredPKIAlgorithm" value="ssh-rsa"/>
<config-property name="privateKeyFile" value=""/>
<config-property name="preferredCipherSuite" value="blowfish-cbc"/>
<config-property name="transportProvider" value="socket"/>
<connection-pooling use="none">
</connection-pooling>
<security-config use="none">
</security-config>
</connector-factory>
</oc4j-connector-factories
Edited by: user6408601 on Dec 10, 2008 6:03 AM
I am able to do FTP from AS machine to FTP server (Window) through command prompt and it is working fine.
Error message
<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="code"><code>550</code>
</part><part name="summary"><summary>file:/D:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_ProfileProcesTest_1.3_42d6d84ceee8de6430d37dfbfaa14936.tmp/FTP_To_OUT.wsdl Put_ptt::Put(Root-Element) - WSIF JCA Execute of operation 'Put' failed due to: Error sending file to FTP Server.
Unable to send file to server.
; nested exception is:
ORABPEL-11429
Error sending file to FTP Server.
Unable to send file to server.
Please ensure 1. Specified remote output Dir has write permission 2. Output filename has not exceeded the max chararters allowed by the OS and 3. Remote File System has enough space.
</summary>
</part><part name="detail"><detail>550 /FTPFolders/CUST_081210184025.txt: The system cannot find the path specified. </detail>
</part></bindingFault>
Defination of FTP Adapter is
<definitions
name="FTP_To_OUT"
targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_To_OUT/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/ftp/FTP_To_OUT/"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
xmlns:imp1="http://TargetNamespace.com/Read"
xmlns:hdr="http://xmlns.oracle.com/pcbpel/adapter/ftp/"
<import namespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/" location="ftpAdapterOutboundHeader.wsdl"/>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" >
<import namespace="http://TargetNamespace.com/Read" schemaLocation="CUST_2007330181610_1.xsd" />
</schema>
</types>
<message name="Root-Element_msg">
<part name="Root-Element" element="imp1:Root-Element"/>
</message>
<portType name="Put_ptt">
<operation name="Put">
<input message="tns:Root-Element_msg"/>
</operation>
</portType>
<binding name="Put_binding" type="tns:Put_ptt">
<jca:binding />
<operation name="Put">
<jca:operation
FileType="binary"
PhysicalDirectory="FTPFolders"
InteractionSpec="oracle.tip.adapter.ftp.outbound.FTPInteractionSpec"
FileNamingConvention="CUST_%yyMMddHHmmss%.txt"
NumberMessages="1"
OpaqueSchema="false" >
</jca:operation>
<input>
<jca:header message="hdr:OutboundHeader_msg" part="outboundHeader"/>
</input>
</operation>
</binding>
<service name="FTP_To_OUT">
<port name="Put_pt" binding="tns:Put_binding">
<jca:address location="eis/Ftp/FtpAdapter" />
</port>
</service>
<plt:partnerLinkType name="Put_plt" >
<plt:role name="Put_role" >
<plt:portType name="tns:Put_ptt" />
</plt:role>
</plt:partnerLinkType>
</definitions>
Defination of OC4j-ra.xml is
<?xml version="1.0"?>
<oc4j-connector-factories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.oracle.com/technology/oracleas/schema/oc4j-connector-factories-10_0.xsd" schema-major-version="10" schema-minor-version="0" >
<imported-shared-libraries>
<import-shared-library name="oracle.bpel.common"/>
<import-shared-library name="oracle.xml"/>
</imported-shared-libraries>
<connector-factory location="eis/Ftp/FtpAdapter" connector-name="Ftp Adapter">
<config-property name="host" value="10.zzz.yy.xxx"/>
<config-property name="port" value="21"/>
<config-property name="username" value="xxx"/>
<config-property name="password" value="yyy"/>
<config-property name="keepConnections" value="true"/>
<config-property name="serverType" value="win"/>
<config-property name="serverLocaleLanguage" value=""/>
<config-property name="serverLocaleCountry" value=""/>
<config-property name="serverLocaleVariant" value=""/>
<config-property name="serverEncoding" value=""/>
<config-property name="useFtps" value="false"/>
<config-property name="walletLocation" value="C:\wallet\ewallet.p12"/>
<config-property name="walletPassword" value="welcome1"/>
<config-property name="channelMask" value="both"/>
<config-property name="securePort" value="990"/>
<config-property name="keyStoreProviderName" value=""/>
<config-property name="keystoreType" value=""/>
<config-property name="keystoreAlgorithm" value=""/>
<config-property name="enableCipherSuits" value=""/>
<config-property name="proxyHost" value=""/>
<config-property name="proxyPort" value=""/>
<config-property name="proxyUsername" value=""/>
<config-property name="proxyPassword" value=""/>
<config-property name="proxyType" value=""/>
<config-property name="proxyDefinitionFile" value=""/>
<config-property name="useProxy" value="false"/>
<config-property name="useSftp" value="false"/>
<config-property name="authenticationType" value="password"/>
<config-property name="preferredKeyExchangeAlgorithm" value="diffie-hellman-group1-sha1"/>
<config-property name="preferredCompressionAlgorithm" value="none"/>
<config-property name="preferredDataIntegrityAlgorithm" value="hmac-md5"/>
<config-property name="preferredPKIAlgorithm" value="ssh-rsa"/>
<config-property name="privateKeyFile" value=""/>
<config-property name="preferredCipherSuite" value="blowfish-cbc"/>
<config-property name="transportProvider" value="socket"/>
<connection-pooling use="none">
</connection-pooling>
<security-config use="none">
</security-config>
</connector-factory>
</oc4j-connector-factories
Edited by: user6408601 on Dec 10, 2008 6:03 AM
Answers
-
Probably the Windows FTP server chokes on the path "/FTPFolders/CUST_081210184025.txt" as it uses Unix separators. You may need to use "\FTPFolders\CUST_081210184025.txt". I can't see the properties in the XML you have given, but when you configure the FTP adapter in the application server console there should be one field for the separator and one for the root folder. Both should be "\" rather than "/" on Windows. The default is "/".
Good luck! -
Yes you may be right but i did not find any option to define directory separator during FTP adapter setting also there is no such configurable property in oc4j-ra.xml file of FTPadapter. Can you please guide me how to define the directory separator as '\' in place of '/'.
-
Yes Got it. In IIS FTP site properties there is one option for Directory Listing Style. I made it Unix then it started working.
-
You need not specify seperately the directory seperator "/" or "\" in propery configuration of a FTP adapter.
Instead serverType set to appropriate value unix,win etc will do the trick. In your case I have found that you set your serverType to win. I recommend that after changing the serverType property in your oc4j-ra.xml you have not restarted your OC4J. Restart soa-suite once again and check.
Cheers
Soumya
This discussion has been closed.