Fault handling in FTP adapter

Hi Gurus,
I have configured Rejection message handler to send the rejected file into a location of an FTP server. The action part of my fault policy looks like this
<Actions>
<Action id="writeToFile">
<fileAction>
<location>/u03/sftpuser/out</location>
<fileName>stud.csv</fileName>
</fileAction>
</Action>
But it is not writing the file here. The error in the logs shows as below
[2013-11-06T02:00:21.145-05:00] [soa_server1] [WARNING] [] [oracle.integration.platform.faulthandling.recovery] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\n] [userId: weblogic] [ecid: 5644e604b69ae2c7:6287cedb:14143ebdfe9:-8000-0000000000683616,0] [APP: soa-infra] Not able to write metadata to file: /u03/sftpuser/out/stud_metadata.csv[[
java.io.FileNotFoundException: /u03/sftpuser/out/stud_metadata.csv (Permission denied)
[2013-11-06T02:00:21.146-05:00] [soa_server1] [WARNING] [] [oracle.integration.platform.faulthandling] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\n] [userId: weblogic] [ecid: 5644e604b69ae2c7:6287cedb:14143ebdfe9:-8000-0000000000683616,0] [APP: soa-infra]  [RejectedMsgHandling]Unable to apply policies on the rejected message with id - 10[[
java.io.FileNotFoundException: /u03/sftpuser/out/stud_metadata.csv (Permission denied)
I have checked the FTP server and at this location all the permissions are granted. Please let me know what i am missing here.
Thanks
Ayush

Are you able to ftp to the same location via putty ? Also, you could increase the log level from the EM Console to level 32 for granular log details.

Similar Messages

  • How to add fault handling for file adapter??

    Hi guys I am new to SOA technology ,I have one scenario  in file adapter  ,when file adapter reads a file from directory .If file is there   then read the file  data else it can give user defined exception that  the file is not there .How can i write user defined exception in SOA?? Give me any ideas please.............
    Thanks in advance..

    So, you want to (1) Fetch the data from these 3 type of files and (2) Also, store the payload data of the file, which is in XML format, into the same database tables ?
    If this is the requirement.. then, I would say, you could :
    (1) Read files using file adapter, but not as opaque.. Define schemas conforming to the file structures. In that way, you'll always have the file data read in the form of XML.
    (2) Fetch relevant data from such XML payloads of files and insert into database tables. Then, insert the XML payload into WHO column. You might have to convert the xml data into blob/clob before inserting.
    Job done !

  • "Message Rejection Handler" for the file/ftp adapter using fault policy

    Hi guys,
    We are trying to implement "Message Rejection Handler" for the file/ftp adapter using following fault policy configuration.
    Fault Policy:
    `````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy">
    <faultPolicy version="2.0.1" id="ProcessNameGenericPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="ProcessNameHumanInterventionPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults"
    name="medns:mediatorFault">
    <condition>
    <test>contains($fault.mediatorErrorCode, "TYPE_TRANSIENT")</test>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    <!--<action ref="ora-retry-with-intervention"/>-->
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry-with-intervention">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-human-intervention"/>
    </retry>
    </Action>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="RejectedMessages">
    <Conditions> <!-- All the fault conditions are defined here -->
    <faultName xmlns:rjm="http://schemas.oracle.com/sca/rejectedmessages" name="rjm:PartnerLinkName">
    <!-- local part of fault name should be the service name-->
    <condition>
    <action ref="writeToFile"/> <!-- action to be taken, refer to Actions section for the details of the action -->
    </condition>
    </faultName>
    </Conditions>
    <Actions> <!-- All the actions are defined here -->
    <Action id="writeToFile">
    <fileAction>
    <location>Server/Loc/path</location>
    <fileName>Rejected_AJBFile_%ID%_%TIMESTAMP%.xml</fileName>
    </fileAction>
    </Action>
    </Actions>
    </faultPolicy>
    </faultPolicies>
    Fault Binding:
    ``````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicyBindings version="2.0.1"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <composite faultPolicy="ProcessNameGenericPolicy"/>
    <service faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </service>
    <reference faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </reference>
    </faultPolicyBindings>
    We have SyncFileRead partner link.
    The expectation is: when the message read by SyncFileRead partner link is rejected,
    that rejected message should come to particular directory in the server.
    Could you please help us fixing this.
    TIA.

    HI..
    Have a look at this blog :
    3) Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized
    Description: The request requires user authentication
    Possible Tips:
    u2022 Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
    u2022 If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
    u2022 If the error is in Adapter Engine
    u2013then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
    u2022 May be wrong password for user XIISUSER
    u2022 May be wrong password for user XIAFUSER
    u2013 for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the Exchange Profile After doing this, you can restart the message
    Http* Errors in XI
    Thanks,
    Pooja

  • FTP ADAPTER: How to handle Special characters

    Hi All,
    We are running into issues with special characters while fpt'ing the file using FTP adapter.
    ex: japanese characters '東邦チタニウム株式会社' would look as '???????????' in the transferred file.
    The following steps are involved in the process.
    1. Reads the data from a database.
    2. Constructs an XML object.
    3. Transforms the data into ftp msg.- In this step the spl. characters are fine
    4. FTP's the msg.
    5. The file on FTP server has issues.
    Tried to change the file type to binary, UTF-8 etc.. but nothing worked.
    Any help/pointers will be highly appreciated.
    Thanks in advance.

    Hi Bhavishya,
    Apparently your SAP database isn't configured to support Unicode. That would be the first solution to your problem, but I can imagine it's a bit drastic to convert your DB.
    A second solution would be to encode the input description to ASCII before storing it in the database. When reading from the database, decode again to Unicode. This way, no information is lost. A suitable encoding would be Base64. e.g.
    String description = "šunday žebra";
    String descriptionBase64 = new sun.misc.BASE64Encoder().encode(
      description.getBytes("UTF-8")); // ""
    // store descriptionBase64 in the DB
    // later, when reading descriptionBase64 from the DB
    String description2 = new String(
      new sun.misc.BASE64Decoder().decodeBuffer(descriptionBase64), "UTF-8");
    Instead of using Sun's implementation, a better alternative is to use the open source implementation
    org.apache.commons.codec.binary.Base64 from Commons Codec . 
    The 3rd approach is indeed to normalize the description by replacing all special characters with their ASCII equivalent. A rather easy solution is as follows:
    String description = "šunday žebra";
    String descriptionNormalized = sun.text.Normalizer.normalize(
      description, sun.text.Normalizer.DECOMP, 0).replaceAll(
      "[^p{ASCII}]", "");
    sun.text.Normalizer decomposes the string, e.g. "éàî" becomes "e´a`i^", after which non-ASCII characters are being removed using a regular expression.Again, note that it's usually a bad idea to use sun.* packages, see note about sun.* packages. The above code only works with J2SE 1.4 and J2SE 5.0, but it breaks in J2SE 6.0 (where
    java.text.Normalizer became part of the public API ;-). A good open source implementation can be found here: ICU4J (com.ibm.icu.text.Normalizer). 
    Kind regards,
    /Sigiswald

  • Dynamic JNDI in FTP Adapter | jca.jndi property not picked by Adapter

    Hi,
    I am trying to pass jndi dynamically to FTP adapter using the steps mentioned in http://blogs.oracle.com/adapters/entry/changing_the_connection_factory_jndi_dynamically_in_ftp_adapter.
    I have configured FTP jndi(eis/Ftp/SoaFtpAdapter) at app server.
    And included the following property in the invoke activity that calls the FTP adapter
    <bpelx:inputProperty name="jca.jndi" variable="jndiLocation"/>
    Invoke activity definition looks as following
        <invoke name="Invoke1"
                partnerLink="FTPFileListAdap" portType="ns3:FileListing_ptt"
                operation="FileListing"
                inputVariable="Invoke1_FileListing_InputVariable"
                outputVariable="Invoke1_FileListing_OutputVariable"
                bpelx:invokeAsDetail="no">
          <bpelx:inputProperty name="jca.jndi" variable="jndiLocation"/>
          <bpelx:toProperties>
            <bpelx:toProperty name="jca.ftp.Directory" variable="directoryName"/>
          </bpelx:toProperties>   
        </invoke>FTP Adapter jca configuration is as following
    <adapter-config name="FTPFileListAdap" adapter="FTP Adapter" wsdlLocation="FTPFileListAdap.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <connection-factory location="eis/Ftp/SoaFtpAdapter12" UIincludeWildcard="*.txt"/>
      <endpoint-interaction portType="FileListing_ptt" operation="FileListing">
        <interaction-spec className="oracle.tip.adapter.ftp.outbound.FTPListInteractionSpec">
          <property name="PhysicalDirectory" value="/in/dev"/>
          <property name="Recursive" value="true"/>
          <property name="IncludeFiles" value=".*\.txt"/>
        </interaction-spec>
      </endpoint-interaction>
    </adapter-config>While calling the BPEL i am passing two parameters
    jndiLocation = eis/Ftp/SoaFtpAdapter
    and
    directoryName = /in/dev
    Following is the fault that I am getting while executing the BPEL.
    <fault>
    <bpelFault>
    <faultType>0</faultType>
    <bindingFault>
    <part  name="summary">
    <summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'FileListing' failed due to: JCA Binding Component connection issue. JCA Binding Component is unable to create an outbound JCA (CCI) connection. RunTimeConfigFTP:FTPFileListAdap [ FileListing_ptt::FileListing(Empty,filelist) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: BINDING.JCA-12510 JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element <connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the <connection-factory/> element: location='eis/Ftp/SoaFtpAdapter12'. The reason for this is most likely that either 1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or 2) the '<jndi-name>' element in weblogic-ra.xml has not been set to eis/Ftp/SoaFtpAdapter12. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR). Please correct this and then restart the Application Server Please make sure that the JCA connection factory and any dependent connection factories have been configured with a sufficient limit for max connections. Please also make sure that the physical connection to the backend EIS is available and the backend itself is accepting connections. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary>
    </part>
    <part  name="detail">
    <detail>JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element <connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the <connection-factory/> element: location='eis/Ftp/SoaFtpAdapter12'. The reason for this is most likely that either 1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or 2) the '<jndi-name>' element in weblogic-ra.xml has not been set to eis/Ftp/SoaFtpAdapter12. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR). Please correct this and then restart the Application Server </detail>
    </part>
    <part  name="code">
    <code>12510</code>
    </part>
    </bindingFault>
    </bpelFault>
    </fault>It seems that FTP Adapter is not picking up the value from jca.jndi property.
    How to handle this situation.
    Thanks
    Ajay

    Hi,
    Since I am working on BPEL 2.0
    Following changes solved my problem.
    In the invoke activity, I replaced the following xml tag
          <bpelx:inputProperty name="jca.jndi" variable="jndiLocation"/>with following
          <bpelx:toProperties>
            <bpelx:toProperty name="jca.jndi" variable="jndiLocation"/>
          </bpelx:toProperties> And now my invoke activity looks as follow.
        <invoke name="Invoke1"
                partnerLink="FTPFileListAdap" portType="ns3:FileListing_ptt"
                operation="FileListing"
                inputVariable="Invoke1_FileListing_InputVariable"
                outputVariable="Invoke1_FileListing_OutputVariable"
                bpelx:invokeAsDetail="no">
          <bpelx:toProperties>
            <bpelx:toProperty name="jca.ftp.Directory" variable="directoryName"/>
          </bpelx:toProperties>   
          <bpelx:toProperties>
            <bpelx:toProperty name="jca.jndi" variable="jndiLocation"/>
          </bpelx:toProperties>      
        </invoke>Thanks
    Ajay

  • JCA Binding error with FTP Adapter on put operation

    Hi
    I am facing a problem with put operation with ftp adapter. my soa service will get file from the 1st ftp server (Unix) as attachment and is putting the file on another ftp serve(Unix)r. the put operation is failing with the below error:-
    Non Recoverable System Fault :
    <bpelFault><faultType>0</faultType><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Put' failed due to: Error sending file to FTP Server. 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. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary></part><part name="detail"><detail>Unexpected termination: Socket closed</detail></part><part name="code"><code>null</code></part></remoteFault></bpelFault>
    this is a SFTP server and the corressponding property is set to true on the configuration. I had also recreated the jndi again & also increased the max connections to 700, but still facing the same issue. Also i am able to ftp the files to this location through filezilla. Also i continously getting the below errors in soa_server1.out:-
    <Jul 24, 2012 7:25:11 AM CDT> <Error> <oracle.soa.bpel.engine> <BEA-000000> <Unhandled exception for ComponentDN=default/NShoreAccrualConcService!1.0*soa_9113be23-2e93-4e54-9987-2e8ae5a4b2e6/ProcessNShoreAccurals CompositeInstanceId=330020 ComponentInstanceId=330018>
    <Jul 24, 2012 7:25:11 AM CDT> <Error> <oracle.soa.bpel.engine> <BEA-000000> <This exception occurred because the fault thrown in the BPEL flow was not handled by any fault handlers and reached the top-level scope. Root cause :
    com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault}
    messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
    parts: {{
    summary=<summary>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Put' failed due to: Error sending file to FTP Server.
    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.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary>
    ,detail=<detail>Unexpected termination: Socket closed</detail>
    ,code=<code>null</code>}
         at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:338)
         at com.collaxa.cube.engine.ext.common.InvokeHandler.__invoke(InvokeHandler.java:1059)
         at com.collaxa.cube.engine.ext.common.InvokeHandler.handleNormalInvoke(InvokeHandler.java:586)
         at com.collaxa.cube.engine.ext.common.InvokeHandler.handle(InvokeHandler.java:130)
         at com.collaxa.cube.engine.ext.bpel.common.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:74)
         at com.collaxa.cube.engine.ext.bpel.common.wmp.BaseBPELActivityWMP.perform(BaseBPELActivityWMP.java:158)
         at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:2543)
         at com.collaxa.cube.engine.CubeEngine._handleWorkItem(CubeEngine.java:1165)
         at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1071)
         at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:73)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:220)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:328)
         at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4430)
         at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4361)
         at com.collaxa.cube.engine.CubeEngine._createAndInvoke(CubeEngine.java:698)
         at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:555)
         at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:673)
         at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:293)
         at sun.reflect.GeneratedMethodAccessor1687.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.jee.intercept.MethodInvocationInvocationContext.proceed(MethodInvocationInvocationContext.java:104)
         at oracle.security.jps.ee.ejb.JpsAbsInterceptor$1.run(JpsAbsInterceptor.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.ejb.JpsAbsInterceptor.runJaasMode(JpsAbsInterceptor.java:81)
         at oracle.security.jps.ee.ejb.JpsAbsInterceptor.intercept(JpsAbsInterceptor.java:112)
         at oracle.security.jps.ee.ejb.JpsInterceptor.intercept(JpsInterceptor.java:105)
         at sun.reflect.GeneratedMethodAccessor1119.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.jee.intercept.JeeInterceptorInterceptor.invoke(JeeInterceptorInterceptor.java:69)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
         at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
         at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy277.handleInvoke(Unknown Source)
         at com.collaxa.cube.engine.ejb.impl.bpel.BPELDeliveryBean_5k948i_ICubeDeliveryLocalBeanImpl.__WL_invoke(Unknown Source)
         at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
         at com.collaxa.cube.engine.ejb.impl.bpel.BPELDeliveryBean_5k948i_ICubeDeliveryLocalBeanImpl.handleInvoke(Unknown Source)
         at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:35)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:140)
         at com.collaxa.cube.engine.dispatch.BaseDispatchTask.process(BaseDispatchTask.java:88)
         at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTask.java:64)
         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
         at java.lang.Thread.run(Thread.java:662)
    >
    <Jul 24, 2012 7:25:11 AM CDT> <Error> <oracle.soa.bpel.engine.dispatch> <BEA-000000> <failed to handle message
    com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault}
    messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
    parts: {{
    summary=<summary>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Put' failed due to: Error sending file to FTP Server.
    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.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary>

    Error itself indicates the potential issues -
    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 spaceRegards,
    Anuj

  • FTP Adapter setting filename at runtime not working

    Hi,
    I am facing an issue SOA 11.1.1.5 with FTP Adapter setting the filename at runtime. I have a process that reads a file from local server and puts it over to a remote FTP Server.
    I want to use the same filename that is picked up locally and placed on the ftp location. Below is the snippet of FTP Invoke and the filename is read from a variable which is set before the invoke
    <invoke name="Invoke_PutFile"
    inputVariable="Invoke_PutFile_PutFile_InputVariable"
    partnerLink="PutFile" portType="ns2:PutFile_ptt"
    operation="PutFile" bpelx:invokeAsDetail="no">
    <bpelx:inputProperty name="jca.file.TargetFileName" variable="targetFileName"/>
    </invoke>
    Here is the FTP jca file snippet
    <endpoint-interaction portType="PutFile_ptt" operation="PutFile">
    <interaction-spec className="oracle.tip.adapter.ftp.outbound.FTPInteractionSpec">
    <property name="LogicalDirectory" value="FtpDir"/>
    <property name="FileType" value="ascii"/>
    <property name="Append" value="false"/>
    <property name="TargetFileName" value="setAtRunTime"/>
    <property name="NumberMessages" value="1"/>
    </interaction-spec>
    </endpoint-interaction>
    But when I test I am getting an error, it's complaining Cannot set JCA WSDL Property. Error while setting JCA WSDL Property. Property setTargetFileName is not defined for oracle.tip.adapter.ftp.outbound.FTPInteractionSpec Please verify the spelling of the property. ".
      Fault Details : com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}bindingFault} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} parts: {{ summary=Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'PutFile' failed due to: Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "Could not instantiate InteractionSpec oracle.tip.adapter.ftp.outbound.FTPInteractionSpec due to: Cannot set JCA WSDL Property.
    Error while setting JCA WSDL Property. Property setTargetFileName is not defined for oracle.tip.adapter.ftp.outbound.FTPInteractionSpec Please verify the spelling of the property. ".
    The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. ".
    The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. ,detail=Cannot set JCA WSDL Property.
    Error while setting JCA WSDL Property. Property setTargetFileName is not defined for oracle.tip.adapter.ftp.outbound.FTPInteractionSpec Please verify the spelling of the property. ,code=null}
      If I use *<property name="FileNamingConvention" value="%yyMMddHHmmssSS%_%SEQ%.txt"/>* inside the jca file it works but I want to use the filename at runtime and be the same name as it's picked up.
    Any idea what I am doing wrong.
    Thanks

    .bpel file
    <?xml version = "1.0" encoding = "UTF-8" ?>
    <!--
      Oracle JDeveloper BPEL Designer
      Created: Mon Jun 03 10:33:49 CDT 2013
      Author: 
      Type: BPEL 1.1 Process
      Purpose: Empty BPEL Process
    -->
    <process name="SharedServiceFtpFileMove"
                   targetNamespace="http://xmlns.oracle.com/SOALocal/SharedServiceFtpFileMove/SharedServiceFtpFileMove"
                   xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
                   xmlns:client="http://xmlns.oracle.com/SOALocal/SharedServiceFtpFileMove/SharedServiceFtpFileMove"
                   xmlns:ora="http://schemas.oracle.com/xpath/extension"
                   xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
             xmlns:ns1="http://xmlns.oracle.com/pcbpel/adapter/file/SOALocal/SharedServiceFtpFileMove/FilePoller"
             xmlns:ns2="http://xmlns.oracle.com/pcbpel/adapter/ftp/SOALocal/SharedServiceFtpFileMove/PutFile"
             xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
             xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
             xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
             xmlns:oraext="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
             xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
             xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
             xmlns:bpm="http://xmlns.oracle.com/bpmn20/extensions"
             xmlns:xdk="http://schemas.oracle.com/bpel/extension/xpath/function/xdk"
             xmlns:xref="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
             xmlns:ns5="http://xmlns.oracle.com/SharedServiceEmailNotification/xsd/V1"
             xmlns:ns4="http://xmlns.oracle.com/pcbpel/adapter/opaque/"
             xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap">
      <!--
         ORCHESTRATION LOGIC                                              
         Set of activities coordinating the flow of messages across the   
         services integrated within this business process                 
      -->
      <partnerLinks>
        <partnerLink name="FilePoller" partnerLinkType="ns1:ReadFile_plt"
                     myRole="ReadFile_role"/>
        <partnerLink name="PutFile" partnerLinkType="ns2:PutFile_plt"
                     partnerRole="PutFile_role"/>
      </partnerLinks>
      <variables>
        <variable name="Receive_ReadFile_InputVariable"
                  messageType="ns1:ReadFile_msg"/>
        <variable name="sourceFileName" type="xsd:string"/>
        <variable name="targetFileName" type="xsd:string"/>
        <variable name="Invoke_PutFile_PutFile_InputVariable"
                  messageType="ns2:PutFile_msg"/>
        <variable name="FtpJndi" type="xsd:string"/>
      </variables>
      <faultHandlers>
        <catchAll>
          <sequence name="Sequence1">
            <terminate/>
          </sequence>
        </catchAll>
      </faultHandlers>
      <sequence name="main">
        <receive name="Receive" createInstance="yes"
                 variable="Receive_ReadFile_InputVariable"
                 partnerLink="FilePoller" portType="ns1:ReadFile_ptt"
                 operation="ReadFile">
          <bpelx:property name="jca.file.FileName" variable="sourceFileName"/>
        </receive>
        <assign name="Assign_Data">
          <copy>
            <from variable="sourceFileName"/>
            <to variable="targetFileName"/>
          </copy>
          <copy>
            <from expression="'eis/Ftp/FtpAdapter'"/>
            <to variable="FtpJndi"/>
          </copy>
        </assign>
        <assign name="Assign_Invoke">
          <copy>
            <from variable="Receive_ReadFile_InputVariable" part="opaque"/>
            <to variable="Invoke_PutFile_PutFile_InputVariable" part="opaque"/>
          </copy>
        </assign>
        <invoke name="Invoke_PutFile"
                inputVariable="Invoke_PutFile_PutFile_InputVariable"
                partnerLink="PutFile" portType="ns2:PutFile_ptt"
                operation="PutFile" bpelx:invokeAsDetail="no">
          <bpelx:inputProperty name="jca.ftp.TargetFileName" variable="targetFileName"/>
          <bpelx:inputProperty name="jca.jndi" variable="FtpJndi"/>
        </invoke>
      </sequence>
    </process>File Adapter Poller jca
    <adapter-config name="FilePoller" adapter="File Adapter" wsdlLocation="FilePoller.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <connection-factory location="eis/FileAdapter" UIincludeWildcard="*-*.txt"/>
      <endpoint-activation portType="ReadFile_ptt" operation="ReadFile">
        <activation-spec className="oracle.tip.adapter.file.inbound.FileActivationSpec">
          <property name="DeleteFile" value="true"/>
          <property name="LogicalArchiveDirectory" value="FtpLocalArchive"/>
          <property name="MinimumAge" value="0"/>
          <property name="Recursive" value="true"/>
          <property name="PollingFrequency" value="15"/>
          <property name="LogicalDirectory" value="FtpLocalFiles"/>
          <property name="IncludeFiles" value=".*-.*\.txt"/>
          <property name="UseHeaders" value="false"/>
        </activation-spec>
      </endpoint-activation>
    </adapter-config>Ftp Adapter put jca
    <adapter-config name="PutFile" adapter="FTP Adapter" wsdlLocation="PutFile.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <connection-factory location="eis/Ftp/FtpAdapter"/>
      <endpoint-interaction portType="PutFile_ptt" operation="PutFile">
        <interaction-spec className="oracle.tip.adapter.ftp.outbound.FTPInteractionSpec">
          <property name="LogicalDirectory" value="FtpDir"/>
          <property name="FileType" value="ascii"/>
          <property name="Append" value="false"/>
          <property name="TargetFileName" value="setAtRunTime"/>
          <property name="NumberMessages" value="1"/>
        </interaction-spec>
      </endpoint-interaction>
    </adapter-config>Thanks

  • Issue with FTP Adapter ListFiles files with spaces in the filename

    Hi
    I have an FTP adapter that does a ListFiles of all the files in a directory. It comes back and everything works fine however it removes all spaces from the filename meaning when I do the GET afterwards this fails as it is a different filename.
    The filename is a0eQ0000000wJVdIAM~1~ technote316.TIF note the space between ~ and technote.
    When a ListFiles is done I get the following request response in BPEL execution:
    <messages>
    <InvokeGetFilenames_FileListing_InputVariable><part name="Empty" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><empty xmlns="http://xmlns.oracle.com/pcbpel/adapter/ftp/CommonServices/SalesforceNotifcationServices/GetFileNameFromFTPServer"/></part></InvokeGetFilenames_FileListing_InputVariable>
    <InvokeGetFilenames_FileListing_OutputVariable><part name="filelist" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><filelist size="1" xmlns="http://xmlns.oracle.com/pcbpel/adapter/ftp/CommonServices/SalesforceNotifcationServices/GetFileNameFromFTPServer"><file><directory>/salesforce/006Q0000007yKcd</directory><filename>a0eQ0000000wJVdIAM~1~technote316.TIF</filename><lastModifiedTime>1305507120000</lastModifiedTime><creationTime>0</creationTime><size>1906643</size></file></filelist></part></InvokeGetFilenames_FileListing_OutputVariable></messages>
    This then follows with a GET that fails:
    <messages><input>
    <InvokeGETfile_SynchRead_InputVariable><part name="Empty" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><empty xmlns="http://xmlns.oracle.com/pcbpel/adapter/opaque/"/></part></InvokeGETfile_SynchRead_InputVariable></input><fault>
    <bpelFault><faultType>0</faultType><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'SynchRead' failed due to: No Data to process.
    No Data to process.
    File /salesforce/006Q0000007yKcd/a0eQ0000000wJVdIAM~1~technote316.TIF to be processed was not found or not available or has no content
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary></part><part name="detail"><detail>550 /salesforce/006Q0000007yKcd/a0eQ0000000wJVdIAM~1~technote316.TIF: No such file or directory</detail></part><part name="code"><code>550</code></part></remoteFault></bpelFault></fault><faultType>
    <message>0</message></faultType></messages>
    I'm guessing its some use of the jca.message.encoding I can't find anything that really explains this though. Just the http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10231/adptr_propertys.htm link.
    Any help would be greatly appreciated.
    Thanks

    Hi PG,
    Is your private file in the form of Java Keystore (.jks)? I had used .ppk file and it was a success.
    If it is .jks in your case, try using the same password for private key as of keystore file (.jks). I hope you're not supplying any PASSWORD in the Adapter properties.
    Regards,
    Neeraj Sehgal

  • Error Handling in File Adapter

    I have been working on a requirement where the file adapter picks up the file and gives to the BPEL for processing the data.
    So, in order to do Error Handling for file adapter, i have been reading the Oracle documentation for technology adapters. In that, some of the
    points which i felt valuable for my error handling when using file adapter are the uniqueMessageSeparator property, fault-policies for rejected messages,
    and one of the action for rejected messages could be writing the payload to a file or invoking any other webservice.
    In my composite, i have configured the file adapter as a service for reading files, and i defined the xsd using the native format builder....If i put some data like 'aaaa' in the attribute of type integer , the .csv file is being picked up and its being passed to the BPEL without any error ? I believe there should be a translation error...right...
    But i am not getting the error, please tell me if anything is wrong in my xsd....
    Here is my xsd...
    <?xml version="1.0" encoding="UTF-8" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:nxsd="http://xmlns.oracle.com/pcbpel/nxsd"
    xmlns:tns="http://TargetNamespace.com/InboundService"
    targetNamespace="http://TargetNamespace.com/InboundService"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    nxsd:version="NXSD"
    nxsd:stream="chars"
    nxsd:encoding="US-ASCII"
    nxsd:hasHeader="true"
    nxsd:headerLines="1"
    nxsd:headerLinesTerminatedBy="${eol}"
    >
    <xsd:element name="names">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="name" minOccurs="1" maxOccurs="unbounded">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="FirstName" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," />
    <xsd:element name="LastName" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," />
    <xsd:element name="Number" type="xsd:integer" nxsd:style="terminated" nxsd:terminatedBy="${eol}" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    And for DB Adapter, there is a property called SchemaValidation, i think that is not there for File adapter, by default it will take care of validation i guess....In another composite, my file adapter is picking up the .xml file and if i put any wrong data over there, that is working fine, i am getting the translation error, but only here in the case of csv file, i am not getting the error. Experts, please help me in this regard...I am using SOA 11G
    Thanks,
    Naresh

    Hi Yatan,
    Thanks for the reply. I did the same way, where my composite is picking up an XML file and translation error is coming. Even the fault policies are working fine, like writing to a file and even invoking other web service. Its really good that you have achieved the same thing in csv files. But the same thing i am unable to achieve when my file adapter is picking up the csv file. I really cant understand where i am doing wrong.
    here is my XSD which i defined through my native builder format...
    <?xml version="1.0" encoding="UTF-8" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:nxsd="http://xmlns.oracle.com/pcbpel/nxsd"
    xmlns:tns="http://TargetNamespace.com/FileRecv"
    targetNamespace="http://TargetNamespace.com/FileRecv"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    nxsd:version="NXSD"
    nxsd:stream="chars"
    nxsd:encoding="US-ASCII"
    nxsd:hasHeader="true"
    nxsd:headerLines="1"
    nxsd:headerLinesTerminatedBy="${eol}"
    >
    <xsd:element name="Roots">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="FirstName" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="LastName" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="Number" type="xsd:integer" nxsd:style="terminated" nxsd:terminatedBy="${eol}" nxsd:quotedBy="&quot;" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    the jca file ..
    <adapter-config name="FileRecv" adapter="File Adapter" wsdlLocation="FileRecv.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/FileAdapter" UIincludeWildcard="n*.csv"/>
    <endpoint-activation portType="Read_ptt" operation="Read">
    <activation-spec className="oracle.tip.adapter.file.inbound.FileActivationSpec">
    <property name="DeleteFile" value="true"/>
    <property name="MinimumAge" value="0"/>
    <property name="PhysicalDirectory" value="C:\files"/>
    <property name="Recursive" value="false"/>
    <property name="PollingFrequency" value="5"/>
    <property name="IncludeFiles" value="n.*\.csv"/>
    <property name="UseHeaders" value="false"/>
    </activation-spec>
    </endpoint-activation>
    </adapter-config>
    I told that the file will contain only 1 record while defining xsd and i kept a record whose values are John , Peter and akjdkjdskj.
    Now if the data is like above, the file is still getting picked up without any translation error and the BPEL is getting completed successfully...
    Is it possible for you to send your sample project and the csv file from which you have defined the xsd to me if you dont mind ?
    Thanks,
    Naresh

  • How does TimeOut(Sec) works/ behave in FTP Adapter?

    Hi ,
    How does TimeOut(Sec) works/ behave in FTP Adapter?
    Lets Say : If I mention 300 Secs in this . How Should it behave ??
    if a file processing in adapter is taking more then 300 sec , will it also be  terminated ??? what error response i will get in such case.
    Regards
    Prabhat Sharma.

    Hi,
    if there's a network error the channel may hang (for a very long time)
    if you specify 300 secs after that time the channel will reset the connection and you can start pooling again
    for more details:
    Note 849089 - XI 3.0 / PI 7.0 File Adapter: FTP Timeout Handling
    Regards,
    Michal Krawczyk

  • Oracle AS B2B - Various Features in FTP Adapter (FTPS, SFTP...)

    As part of the Oracle AS B2B 10.1.2.0.2 FTP adapter offering following features are supported. FTP Protocol forms part of the Generic Exchange Plugin.
    1. Basic FTP
    Identification of Trading Partner Criterion is slightly different for Internal and External Delivery channel, even though identification is based on the "Name" in both of this cases.
    a. For External Delivery Channel.
    i. Identification of Trading Partner is based on the name of the file and the name shoud follow the patterns as nameOfTP_UniqueID.
    ii.Identification of Trading Partneris based on the name of the Directory. To enable this it is required to set
    oracle.tip.adapter.b2b.allTPInOneDirectory= True as part of tip.properties setting.
    b. For Internal Delivery Channel.
    The identification of Trading partner and the Document is based on the name of the file and should follow the pattern as
    TradingPartner_DocumentType_Revision_msgType_msgId_replytoMsgID_extension.xml
    2. FTPS : FTP OVer SSL
    Download any of the FTP server which can be configured to FTPS such as FIlezilla. Configure FTP server for FTPS as per the FTP server documentation.
    Oracle AS B2B Configurtion:
    The SSL configuration is drived by the value of parameter "Channel mask"
    1. Depending on the mode of data transfer i.e Active/Passive , specify the data port for Active configuration and no data port for passive mode. Control port is there for both the mode and by default B2B considers this to be 21, there is a need to
    mention it for any deviation.
    2. Receiver Channel Mask (Host) : Depending on whether No channel encrypted, data channel to be encrypted , Control Channel to be encrypted or Both control and Data channel to be encrypted specity none, Data, Control or Both accordingly.
    2. Sender Channel Mask (Trading Partner) : Depending on whether No channel encrypted, data channel to be encrypted , Control Channel to be encrypted or Both control and Data channel to be encrypted specity none, Data, Control or Both accordingly.
    Refer to the user guide for FTP Transport configuration.
    3. SFTP(New Feature available as part of latest B2B patch # 6353697)
    SFTP implementation has been provided for Oracle B2B 10.1.2.0.2 version. This enables B2B to send and receive payload files over SFTP (SSH FTP) protocol.
    SFTP protocol support added for both external trading partners and internal applications communications. The naming conventions of the payload files are in-line with File and FTP adapters.
    Proxy support provided (HTTP)
    Authentication Support :
    Password based authentication – username/password combination authentication
    Public key authentication – authenticating the identity based on the public key
    create a key pair using OpenSSL keygen tool and the Public key need to be installed in the server. and the private keys fully qualified file location has to be specified in Private Key file and the passphrase has to be provide in Prive Key Pass phrase.
    If the passphrase is present in the FTP configuration, B2B engine considers the password based Authentication else key based Authentication otherwise it is key based Authentication.

    Hello Ramesh
    I want to configure FTPS using FTP adapter in Oracle BPEL,I am not configuring any wallet as of now.I am gettig following error while invoking the Put Operation of FTP adapter.
    <messages><input><Invoke_1_Put_InputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="Zebra_CRM005ProcessRequest"><Zebra_CRM005ProcessRequest xmlns="http://xmlns.oracle.com/Zebra_CRM005">
    <input>test</input>
    </Zebra_CRM005ProcessRequest>
    </part></Invoke_1_Put_InputVariable></input><fault><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="code"><code>null</code>
    </part><part name="summary"><summary>file:/vol2/opt/oracle/product/10.1.3.1/soa/bpel/domains/default/tmp/.bpel_FTP_WRITE_NEW_v2008_09_24__47502_0c1781b2ce7e4236dffaaa7cabd43a0c.tmp/A.wsdl [ Put_ptt::Put(Zebra_CRM005ProcessRequest) ] - 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>null</detail>
    </part></remoteFault></fault></messages>
    Please help in configuring FTPS in oracle FTP adapter.
    Thanks
    Satendra Pare
    [email protected]

  • Issue with List Files option in FTP Adapter-

    Hi All,
    I am getting the following error when I am using the list files option inside FTP adapter. The soa Version I am using is 11.1.1.5
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'FileListing' failed due to: Error in listing files in the remote directory. Error in listing files in the remote directory. Unable to list file in remote directory. Please make sure that the ftp server settings are correct. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    I have configured FTP adapter successfully by giving the following details,
    useSftp –
    username –
    password -
    host -
    port –
    authenticationType –
    preferredCipherSuite -
    and it is working perfectly for getfiles option and it is reading files successfully, but it is throwing error when I am using list files option. I tried this option for listing the files that are in remote directory. Any Help would be appreciated.
    Complete fault
    <messages>
    <input>
    <Invoke1_FileListing_InputVariable>
    <part name="Empty">
    <empty/>
    </part>
    </Invoke1_FileListing_InputVariable>
    </input>
    <fault>
    <bpelFault>
    <faultType>0</faultType>
    <bindingFault>
    <part name="summary">
    <summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'FileListing' failed due to: Error in listing files in the remote directory. Error in listing files in the remote directory. Unable to list file in remote directory. Please make sure that the ftp server settings are correct. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary>
    </part>
    <part name="detail">
    <detail>No such file</detail>
    </part>
    <part name="code">
    <code>null</code>
    </part>
    </bindingFault>
    </bpelFault>
    </fault>
    <faultType>
    <message>0</message>
    </faultType>
    </messages>
    May 9, 2013 4:32:00
    Edited by: BK574 on May 9, 2013 2:47 PM

    Is this a bug in SOA suite?
    Following are the properties inside JCA file
    <adapter-config name="List" adapter="FTP Adapter" wsdlLocation="List.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/ftp/FTPService" UIincludeWildcard="*.*"/>
    <endpoint-interaction portType="FileListing_ptt" operation="FileListing">
    <interaction-spec className="oracle.tip.adapter.ftp.outbound.FTPListInteractionSpec">
    <property name="PhysicalDirectory" value="*.*"/>
    <property name="Recursive" value="true"/>
    <property name="IncludeFiles" value="*.*"/>
    </interaction-spec>
    </endpoint-interaction>
    </adapter-config>
    Edited by: BK574 on May 10, 2013 6:30 AM
    Edited by: BK574 on May 10, 2013 6:31 AM

  • Seeburger FTP Adapter And SAP PI 7.1

    Hi Everyone,
    Just a few questions about Seeburger FTP adapter please. Bit of background for clarity, we are doing an implementation using Seeburger FTP and sap PI 7.1 picking up EDIFACT (Orders) and returning (DESADV, ORDERSP, INVOICES). However we are not using any BIC, using another tool for EDIFACT -> EDIFACT-XML conversion (conversion agent) and in-house mapping development using graphical mapping.
    So couple of things which I haven't been able to figure out from the standard documentation for Seeburger FTP adapter:
    1) First is the functional ACK which we are meant to send back to the VAN is that a STANDARD FUNCTIONALITY with Seeburger FTP adapter?
    2) Because we are receiving a mix bag EDIFACT interchange on the way IN, I need to split messages accordingly and pass them on to the relevant channels and mappings. By using the standard module Splitter can I achieve that?
    3) Lastly some of the standard validations which are applicable to EDIFACT are they supported within the FTP adapter automatically? e.g. Counting number of messages in one interchange etc.
    Any help in this regard will be really great.
    regards

    Now a Good news.
    If you are using Seeburger version 2.1 (which you should be as you want it for PI 7.1), then there is an Internal Classifier and Split option for FTP adapter. You just need to tick checkbox "Use built-in splitting" and you are done. Then I believe there won't be any need for considering all these problems. The earlier version of Seeburger with PI 7.0 doesn't have such option and that could be the reason you haven't received any appropriate response yet.
    Still I will reply all your questions considering that "your case is of PI 7.0". -> remember PI 7.0
    >>even with just splitter we should be able to break it up?????? or am I wrong in thinking this?
    No. You even need BIC or an equivalent custom module for achieving this.
    >>I can't visualize where to handle the overall message count in one Interchange any suggestions?
    You need to write an adapter module for this. Not sure about the code but this module has to be added before the split happens.
    >> seeburger ftp adapter it does talk about a lot of reports which are available on sender/reciever actions. e.g. delivered, despatched etc. Are these reports not essentially ACKs?
    These reports are the ones used at the receiver side for getting the ACKs from the receiver. Your requirement is at present for sender scenario.
    Regards,
    Prateek

  • Clarification needed in the Fault Handling Framework(Error Hospital)

    Hi,
    I need some clarification on Fault Handling Framework...
    Scenario:
    My BPEL Process is Asynchronous.(10.1.3.3.1) and I tryed to invoke the another BPEL Process( which is used to select the Fname from the table using DB Adapter) . In the Main BPEL Process I have the Fault handling Framework and I done necessary changes in the bpel.xml. This is successfully working for Invoke Activity when ever an Remote or Binding Fault occurs in the Sub-BPEL Process and this Fault is send to Fault-Policy.xml in the server(bpel/domains/default/config/fault-Policy) and works accordingly to the action mentioned in the policy xml....( I have also made changes in the fault-bindings.xml ).
    How ever this Framework is working fine for every actions.
    Need Clarification:
    1) Only the Binding and Remote faults will work for the Fault handling Framework.
    2) can we use User defined faults (Buissness Faults,,,) for this........because I used the User defined faults to invoke the fault-policy.xml and it won't works....
    3)Only Invoke Activity can be handled for this Framework or any Other Activity........
    4)How to handle other Activity in the Fault-policy.xml...
    5)Any difference for Asynchronous or Synchronous in this Fault Handling Framework.......
    I also referred the Oracle SOA Suite New Feauters PDF .......
    Can any one send me the related documents and try to help me on this.
    Please help me on this.......
    Thanks,
    Ashok.

    Hi Chintan,
    You are saying that Custom faults are also supported for fault-Policy.xml.
    I can't understand that 2nd answer you said. can you please explain how to use the Custom faults in the FaultHandlingFramework..
    My Scenario:
    I have 2 BPEL Process, BPEL1 will invoke the BPEL2 and if any remote fault or binding faults occurs in the BPEL 2 its returning the same fault to BPEL1 and here I am using FaulthandlingFramework , this fault send to fault-policy.xml and necessary action is took place succesfuly...(like retry, human intervention.....)
    But when I throw some CustomFaults(userdefinedFaults)in the BPEL2 , its returning as a remotefault to BPEL1. I don't know how to use the customFaults in the Fault handling framework.......
    Can you explain me in detail how to use custom faults in faulthandling framework...............
    Send me some related documents for this.....

  • What is the maximum filesize for a FTP Adapter?

    I have xml files with 1000's of records to read in. The file size can range anywhere from a few MB up to ~100MB. Most of them are about 50 MB.
    The FTP adapter works when I have a small file, but with larger ones it apparently times out. Once it runs into a big file like this, it won't process any more files until I restart the process. It doesn't show any faults or even any record of a running instance in the BPEL Console, so I have no idea specifically when it breaks. I uploaded a 10MB file to my ftp server and left it for a half hour, but nothing showed up, so I'm assuming it's broken rather than just taking a long time.
    What is the maximum file size for a FTP adapter? Can I change this somewhere? I looked in the ...\application-deployments\default\FtpAdapter\oc4j-ra.xml file but couldn't find any settings to change.

    Well no luck on my end and it doesn't look like anybody else has any ideas either. This thread Re: FTP Adapter, Java Embedding, ... says that if you can't get the functionality you need out of the default one, you should write your own FTP adapter in JCA. I looked at JCA and would like to write a simple polling adapter and then put all my FTP code in embedded java.
    Can somebody explain how I could achieve the basic FTP Adapter polling functionality in JCA? I'm having difficulty figuring out how to have an ongoing polling process without instantiating a BPEL process itself, like the existing FTP adapter does. I don't want to set off on writing my own adapter if it's going to be a much larger undertaking than I have time for.
    Also, is the source code open for the default FTP adapter? It would be great if I could just modify the few things I need to change rather than write one from scratch.

Maybe you are looking for