This site is currently read-only as we are migrating to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 30th, when you will be able to use this site as normal.

    Forum Stats

  • 3,889,967 Users
  • 2,269,775 Discussions
  • 7,916,823 Comments

Discussions

FTP adapter on BPEL

674884
674884 Member Posts: 4
edited Dec 11, 2008 6:26AM in 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
Tagged:

Answers

  • 602488
    602488 Member Posts: 150
    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!
    602488
  • 674884
    674884 Member Posts: 4
    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 '/'.
  • 674884
    674884 Member Posts: 4
    Yes Got it. In IIS FTP site properties there is one option for Directory Listing Style. I made it Unix then it started working.
  • 624617
    624617 Member Posts: 77
    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.