2 Replies Latest reply on Aug 9, 2011 7:26 PM by 881228

    ODI FTP Put - Wild character (%) in remote filename


      I am using ODI FTP Put to FTP the file ftom local ODI server to target FTP server. Target file name has wild character % in it.

      ex -
      SourceFile name - aprf_idoc.txt
      Target file name - %APRF%idoc%1234%b

      I am getting below error message while writing SourceFile name to target FTP server with Target file name.

      I am using version of ODI

      Is there any way to pass the wild character in the filename? Plaese let me know.

      org.apache.commons.vfs.FileSystemException: Invalid URI escape sequence "%AP".
      at org.apache.commons.vfs.provider.UriParser.decode(UriParser.java:321)
           at org.apache.commons.vfs.provider.UriParser.decode(UriParser.java:290)
           at org.apache.commons.vfs.provider.UriParser.checkUriEncoding(UriParser.java:415)
           at org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:626)
           at org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:582)
           at com.sunopsis.dwg.tools.filecopy.RemoteFileCopy.copy(RemoteFileCopy.java:424)
           at com.sunopsis.dwg.tools.FtpPut.actionCopy(FtpPut.java:35)
           at com.sunopsis.dwg.tools.filecopy.AbstractFtp.actionExecute(AbstractFtp.java:64)
           at com.sunopsis.dwg.function.SnpsFunctionBase.execute(SnpsFunctionBase.java:276)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execIntegratedFunction(SnpSessTaskSql.java:3430)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.executeOdiCommand(SnpSessTaskSql.java:1491)
           at oracle.odi.runtime.agent.execution.cmd.OdiCommandExecutor.execute(OdiCommandExecutor.java:32)
           at oracle.odi.runtime.agent.execution.cmd.OdiCommandExecutor.execute(OdiCommandExecutor.java:1)
           at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2906)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2609)
           at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:540)
           at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:453)
           at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:1740)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:338)
           at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:214)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:272)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:263)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:822)
           at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:123)
           at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:83)
           at java.lang.Thread.run(Thread.java:662)

      Edited by: 878225 on Aug 9, 2011 3:23 AM
        • 1. Re: ODI FTP Put - Wild character (%) in remote filename
          1) Please post your question on the ODI forum - Data Integrator . This is the ODSI forum - a completely different product.

          2) What does it mean to specify an exact source file name and a target file name with wild-card characters? The only thing that could possibly work is if there already exists exactly one file in the target directory that matches the pattern.

          3) Check the ODI FTP Put documentation to see if wild-cards are allowed (the underlying command would need to use ftp mput/mget).

          4) From the error message, apparently the syntax to "escape out" special characters uses a percent sign. You should be able to use that "escape out" syntax to escape out the wild-card character.

          5) Would a * work instead of the percent sign? Or would a question-mark work instead of the percent sign?
          • 2. Re: ODI FTP Put - Wild character (%) in remote filename
            Hi Mike,

            1) Thanks for letting me know about this, I have posted my question to the forum u mentioned.

            2) Source file name is the one which we get from legacy system and target expects thts file in some other name which has % in it.

            3) I searched the documentation but did not get the relevant information.

            5) Yes, * is working in place of %.