Ftp plugin problem

Formerly working Lightroom 5 ftp plugin now returns the following error message: Unable to export. Cannot upload because Lightroom could not create the destination directory. Using a standalone ftp client with the same settings works fine. Any help appreciated.

Very few users contribute to this forum -- you might try reposting in the main LR forum: Photoshop Lightroom.

Similar Messages

  • FTP receiver problem

    Hello,
    I have read lots of threads for FTP receiver problems wiht overwriting files....
    But I am not sure which is the correct solution.
    We have:
    - Cluster (6nodes), PI711  (SP03)
    - a time stamp shoudl be in the file name
    - there is dynamice filename, because first char of the filename must be set from mapping
    - each mesasge must be put in a single file (not APPEND mode)
    After few test it seems that files are overwriten.
    I tried ADD MESSAGEID, which seems to work correctly, but with dynamic filenametimestampmsgid the filename is to long for the next application.
    I saw in a note, that the cluster can be the problem....
    Any idea how I can solve my problem?
    Does "use temporaly filename" help?
    How is it used correctly????
    best reagrds
    Werner

    Hi Werner,
    In Processing Parameters tab, keep the file construction mode as "Add timestamp" and in the Putfile use" Use Temporary file". This should help you...
    Refer the below link regarding Configuring the Receiver FTP Adapter 
    http://help.sap.com/saphelp_nwpi711/helpdata/en/44/69d7cfa4b633eae10000000a1553f6/content.htm
    Thanks,

  • PHOTOSHOP CS6 PLUGIN PROBLEM; I have PS CS6

    PHOTOSHOP CS6 PLUGIN PROBLEM; I have PS CS6 & a mac osx 10.7.5  I have downloaded the pluginhttps://sourceforge.net/projects/panotools/  I drag it to the applications folder  (applications/photoshop/plugins) and it shows up there, but it does not show up when I reopen photoshop, can anyone tell me if this is a valid plugin or what I am doing wrong?

    Thank you for the link, I don't see where the licensing is listed at all, I also don't see where it says it is for existing CS2 users only & the line install a special version that does not require activation -                                   
    doesn't scream it'd be a problem to load it especially since I already own a later version that I can't use the plugin on - …I don't find the site all that informative.  I appreciate all the answers & responses to my use of CS2 but I'd really just like to receive an answer to the original question of if the plugin works with it or not…if anyone has that answer I'd appreciate it.
    Is there a place I can purchase it?  I will gladly do so if I can get the plugin to work-that is my goal.

  • I'm having "blocked plugin" problems in mail after 10.7.5 update. Anyone else having this problem?  Fixes?      Thanks!

    I'm having "blocked plugin" problems in mail after 10.7.5 update. Anyone else having this problem?  Fixes? 
    Thanks!

    I'm having "blocked plugin" problems in mail after 10.7.5 update. Anyone else having this problem?  Fixes? 
    Thanks!

  • FTP sync problems with Dreamweaver MX on Prostores website

    I ftp/sync, design and maintain my website Carnelian.com with Dreamweaver MX. My website is hosted by Prostore.com (an Ebay company). They have just recently migrated to new servers and are now requiring FTPES security which apparently is not supported via Dreamw
    eaver Mx (which uses SFTP). Because of this I can no longer FTP or syncronize my website, upload files, images etc. Is there some
    work around so that I can meet their secure ftp requirements and still use Dreamweaver to ftp/sync my website? I can get a third party FTPES client and upload my site changes, images etc but then my website will no longer be syncronized in Dreamweaver MX which would be a great inconvenience and problem for me.
    Is there a solution to this problem?
    ================================================================================
    Here is info on the Prostores migration from their support pages and support personel:
    2009-07-26 01:10:46 - ProStores Customer Support
    ProStores has decided to abandon FTP as an access method to the platform in order to remain compliant with certification authorities
    like PA-DSS and PCI. Dreamweaver does not support FTP TLS/ES or FTPS. Based on the research performed, it appears that Adobe is not
    working on providing this functionality anytime soon. The following options are taken from ProStores Knowledge Base:
    There are many FTP programs available. There are evaluation, free, shareware and paid versions of different FTP programs. ProStores
    only supports FTP programs that support FTPS with SSL/TLS encryption. Below is a list of widely used secure FTP programs (in no spec
    ific order) that are compatible with ProStores FTP services.
    · FileZilla (free)
    · FireFTP (Firefox add-on) (free)
    · WISE-FTP 6 ($)
    · CuteFTP ($)
    · And many others
    If you upload images using the FTP process, there are new security settings and requirements. FTP protocol changed to FTPS (FTP over
    SSL), also known as FTP/ES (Enhanced Security). Access to the new FTP/ES server will be through the URL myftp.prostores.com.
    Update your FTP settings as noted below. In some cases, you may need to use a different FTP client to support the additional securit
    y settings required on the new platform.
    hostname = myftp.prostores.com
    Server type = FTPES or FTPS
    port = 21
    Logon type = normal (not anonymous)
    username / password = primary ProStores login credentials
    Connection type = FTPS
    SSL Settings = Use SSL-encrypted connection with Auth TLS (or TLS 1)
    FTP client requirements = must support SSL-encrypted/TLS connection (Auth TLS or TLS 1)
    Several free and paid FTP clients that support SSL encrypted connections include:
    FileZilla (free)
    FireFTP (Firefox add-on) (free)
    WISE-FTP 6 ($)
    CuteFTP ($)
    And many others"
    Operating System: Windows XP Professional
    Browser: Firefox

    I'm going to give Adobe and Google the benefit of the doubt on this one, and assume it is eBay being ridiculous. My anecdotal experience with Adobe and Google is that they do pay attention to technology trends and usually incorporate industry standard technology into their software. If it were just Dreamweaver that didn't support SSL/TTS I might have a different attitude, however blogger.com doesn't support publishing via SSL/TTS either, so I think the error if there is one, is on the Prostores side of things, and I'm guessing it would have made sense for them to support SFTP.
    At the same time I assume the Adobe eco-system is more likely to render a solution here than the Prostores eco-system. Is there some sort of plugin/additional piece of software that lets Dreamweaver masquerade a SSL/TTS connection?
    Leif Jason
    Internet Marketing Strategist | Mastermynde
    LinkedIn | Twitter | Blog

  • Getting file from ftp server problem.

    Anyone can tell me what's wrong with my code.
    I try to get Test.txt from my ftp server with this coding :
    public class FTPClient{
    public static final void main(String[] args) throws Exception
    {   try {
    URL url = new URL("ftp://user:password@myhost:21/MyFiles/Test.txt");
    URLConnection c = url.openConnection();
    BufferedReader r = new BufferedReader(new InputStreamReader(c.getInputStream()));
    String l = null;
    while ( (l = r.readLine()) != null)
    System.out.println(l);
    catch (Exception e)
    System.out.println("Uh oh, got an IOException error!");
    e.printStackTrace();
    But i get the following error :
    sun.net.ftp.FtpProtocolException: PORT :
    at sun.net.ftp.FtpClient.openDataConnection(FtpClient.java:435)
    at sun.net.ftp.FtpClient.get(FtpClient.java:550)
    at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:382)
    at FTPClient.main(FTPClient.java:8)
    Can somebody help me,
    What's worng with my coding..?
    Thanks,

    I delete the :21 from my code but the same error occured.
    I also try this code
    FtpClient ftpClient = new FtpClient();
    String host ="10.10.10.237";
    String username="username";
    String password="password";
    try
    ftpClient.openServer(host); // connect to FTP server
    ftpClient.login(username, password); // login
    ftpClient.cd("TestFTP");
    ftpClient.binary();
    InputStream is = ftpClient.get("Test.txt");
    ftpClient.closeServer(); //close connectionand I got the same error
    sun.net.ftp.FtpProtocolException: PORT :
    at sun.net.ftp.FtpClient.openDataConnection(FtpClient.java:435)
    at sun.net.ftp.FtpClient.get(FtpClient.java:550)
    at Client.main(Client.java:19)
    I dont know what is the problem.. I've try to find information about this error on the net, but cannot find anything that can help me...

  • InDesign CS5, can't open file due to plugins problem

    Hi folks!
    I'm on Max OSX 10.5.8 and i am currently using a trial version of CS5 (Design Premium) while work sorts out the cash for the upgrade.
    I work inhouse, and I needed to send an artwork file to an external design agency. I saved the file in CS5. The agency have CS5. When they open it, they get an error message to say they don't have the plugins needed to open it. We've never had any plugins, I'm not aware of any that would come with the trial that don't come with the bought version, so i don't know what to do.
    Is there a way of saving a file without saving these "plugins" along with it? Or is there something else i can do?
    Any help much appreciated

    Well well guys, your experience in such matters prevails, after me emailing the agency mentioning again that it is a CS5 file and asking for a screenshot of the problem they came back and said they had figured it out themselves, turns out they are in the process of swapping all the team over to CS5 and the particular member that tried to open this file, was, yes, you guessed it, using CS4. Doh!
    Many many thanks for your help!

  • Business Objects Enterprise 11.5 FTP Transfer Problem

    Hello,
    Hopefully someone out there will be familiar with the issue I'm having and be able to provide a solution.
    We are running Business Objects Enterprise 11.5 on our Windows 2003 server.  I've created and scheduled a job on the server that creates an XLS file containing loan portfolio data that is to be transmitted to a third party client on a monthly basis.
    The problem centers around the method of transfer, which is via FTP to a secure site hosted by the client.  When executed through Crystal, the FTP actually does achieve a successful login using the credentials the client provided (we have verified this repeatedly by looking at the logs), but the client's server "kicks out" when we attempt any operation on it.
    A similar result was produced when we attempted to FTP to the site via the Windows command line.  The login was successful, but even a simple command to view the directory "dir" resulted in the connection being rejected.   To make a long story short, after reviewing the issue extensively with the client's technical department, our conclusion was that the problem was the result of the FTP sending in "active" mode instead of "passive".  We confirmed this by installing a freeware FileZilla on the same server, and switching between active and passive modes (active failed, passive did not).
    Their tech people recommended that we contact SAP to get answers to two questions, which I'm hoping someone out there may know:
    1)  How does Business Objects Enterprise 11.5 execute the FTP process?  Is it using its own native logic or simply invoking the command line?
    2)  Is there any setting with the console that would enable us to modify the FTP settings to send force it to send in passive mode?
    Thanks.

    Hi,
    This is a known limitation. BO only supports active mode for FTP. Refer 1782115 - Which FTP mode is supported as a schedule or publication destination for reference.
    If you are able to write a batch file or a program object to transfer a file from a file location to Client FTP, you can try the below workaround.
    1. Add the script\batch file as a program object in BO. In the script make sure you include the code to delete the instance after it is successfully transmitted through FTP.
    2. Create a File event pointing to the location along with the name of the instance.
    3. Schedule the report to the file location with the specific instance name.
    4. Schedule the program object based on the file event you created in step 2.
    Hope this helps.
    Regards
    Chinmaya

  • Skillbuilders modal page plugin problems in Apex 4.1

    Hi,
    I have applied the Skillbuilders modal page plugin in my application. Everything works fine except that when I close the popup window - my parent window is not getting refreshed.
    I have put the dynamic action - Auto Close modal and action as - Refresh report on parent page.
    Settings:
    Event : Auto Close [Skill Builders Modal Page]
    Selection Type : DOM Object
    DOM Object: document
    No condition
    Any help much appreciated.
    Thanks,
    Jas

    Dear Dan,
    I have the same problem, the main report is not refreshing after adding or editing values and the success message is not showing after the DA taking place and closing the modal.
    another problem i am facing with oracle cloud which is when is when the modal loads, it gives me the following error :
    Sample Database Application
    [email protected]
    An unexpected internal application error has occurred. Please get in contact with your system administrator and provide reference# for further investigation.
    Technical Info (only visible for developers)
    is_internal_error: true
    apex_error_code: APEX.SESSION_STATE.SSP_CHECKSUM_MISSING
    error_backtrace:
    ----- PL/SQL Call Stack -----
    object line object
    handle number name
    0x32c6b06c8 548 package body APEX_040200.WWV_FLOW_ERROR
    0x32c6b06c8 599 package body APEX_040200.WWV_FLOW_ERROR
    0x32c6b06c8 903 package body APEX_040200.WWV_FLOW_ERROR
    0x32ca89608 5985 package body APEX_040200.WWV_FLOW
    0x32df51ac8 249 procedure APEX_040200.F
    0x29cd0a0d0 2 anonymous block
    Set Screen Reader Mode On 4.2.1
    and after googling , i saw your solution for the super lov having the same problem
    problem located in customers page.
    the credentials are:
    http://apex.oracle.com/pls/apex/f?p=4000:1:9039832809236::NO:RP:FB_FLOW_ID,F4000_P1_FLOW,P0_FLOWPAGE,RECENT_PAGES:37403,37403,37403;|,
    workspace: ahk
    username : dan
    password : dan
    Best Regards:
    Yousef Alraway
    Edited by: user12279113 on Mar 12, 2013 3:25 PM

  • Help with ftp upload problem

    Hi I am using a ftp class (known as FTPConnection) that i found on this site: http://www.nsftools.com/tips/JavaFtp.htm , and they only have an example of how to download a File through FTP and not upload one. I am in the proccess of making an FTP upload applet, and need some help on getting upload to work. I also need it to work on both a Pc and mac, so that may be attributing to the problem becuase i am currently on a mac which uses file:// instead of C:\\. Ill post the ftp class, and a snippet of my code that tries to upload a selected file.
    FTPConnection
    /* <!-- in case someone opens this in a browser... --> <pre> */
    * File:   FTPConnection.java
    * Author: Bret Taylor <[email protected]>
    * URL: http://www.stanford.edu/~bstaylor/cs/ftpconnection/FTPConnection.java.shtml
    * see also <a href="http://www.nsftools.com/tips/JavaFtp.htm">http://www.nsftools.com/tips/JavaFtp.htm</a>
    * $Id$
    * Parts of this code were adopted from a variety of other FTP classes the
    * author has encountered that he was not completely satisfied with.  If you
    * think more thanks are due to any particular author than is given, please
    * let him know.  With that caveat, this class can be freely distributed and
    * modified as long as Bret Taylor is given credit in the source code comments.
    * Modified by Julian Robichaux -- http://www.nsftools.com
    * Added constructors, logout(), listFiles(), listSubdirectories(), getAndParseDirList(),
    * processFileListCommand(), and overloaded getFullServerReply().
    * Also added StringBuffer parameter options to transferData() and executeDataCommand()
    * and did a few other little things.
    import java.io.*;
    import java.net.*;
    import java.util.*;
    * <p>A wrapper for the network and command protocols needed for the most common
    * FTP commands.  Standard usage looks something like this:</p>
    * <pre> FTPConnection connection = new FTPConnection();
    * try {
    *     if (connection.connect(host)) {
    *         if (connection.login(username, password)) {
    *             connection.downloadFile(serverFileName);
    *             connection.uploadFile(localFileName);
    *         connection.disconnect();
    * } catch (UnknownHostException e) {
    *     // handle unknown host
    * } catch (IOException e) {
    *     // handle I/O exception
    * }</pre>
    * <p>Most FTP commands are wrapped by easy-to-use methods, but in case clients
    * need more flexibility, you can execute commands directly using the methods
    * <a href="#executeCommand(java.lang.String)">executeCommand</a> and
    * <a href="#executeDataCommand(java.lang.String,
    * java.io.OutputStream)">executeDataCommand</a>,
    * the latter of which is used for commands that require an open data port.</p>
    * @author Bret Taylor
    * @author Julian Robichaux
    * @version 1.01
    public class FTPConnection extends Object {
         * If this flag is on, we print out debugging information to stdout during
         * execution.  Useful for debugging the FTP class and seeing the server's
         * responses directly.
        private static boolean PRINT_DEBUG_INFO = false;
         * The socket through which we are connected to the FTP server.
        private Socket connectionSocket = null;
         private String username;
         private String password;
         private String host;
         * The socket output stream.
        private PrintStream outputStream = null;
         * The socket input stream.
        private BufferedReader inputStream = null;
         * The offset at which we resume a file transfer.
        private long restartPoint = 0L;
         * Added by Julian: If this flag is on, we're currently logged in to something.
        private boolean loggedIn = false;
         * Added by Julian: This is the line terminator to use for multi-line responses.
        public String lineTerm = "\n";
         * Added by Julian: This is the size of the data blocks we use for transferring
         * files.
        private static int BLOCK_SIZE = 4096;
         * Added by Julian: After you create an FTPConnection object, you will call the
         * connect() and login() methods to access your server. Please don't forget to
         * logout() and disconnect() when you're done (it's only polite...).
        public FTPConnection ()
             // default constructor (obviously) -- this is just good to have...
         * Added by Julian: Allows you to specify if you want to send debug output to
         * the console (true if you do, false if you don't).
        public FTPConnection (boolean debugOut)
             PRINT_DEBUG_INFO = debugOut;
         public FTPConnection (String user, String pw, String host_)
             username=user;
              password=pw;
              host=host_;
              PRINT_DEBUG_INFO = false;
         * Prints debugging information to stdout if the private flag
         * <code>PRINT_DEBUG_INFO</code> is turned on.
        private void debugPrint(String message) {
            if (PRINT_DEBUG_INFO) System.err.println(message);
         * Connects to the given FTP host on port f, the default FTP port.
        public boolean connect(String host)
            throws UnknownHostException, IOException
            return connect(host, 21);
         * Connects to the given FTP host on the given port.
        public boolean connect(String host, int port)
            throws UnknownHostException, IOException
            connectionSocket = new Socket(host, port);
              connectionSocket.setSoTimeout(10000);
            outputStream = new PrintStream(connectionSocket.getOutputStream());
            inputStream = new BufferedReader(new
                           InputStreamReader(connectionSocket.getInputStream()));
            if (!isPositiveCompleteResponse(getServerReply())){
                disconnect();
                return false;
            return true;
         * Disconnects from the host to which we are currently connected.
         static boolean URLexists(String URLName)
              try
                   HttpURLConnection.setFollowRedirects(false);
                   // note : you may also need
                   // HttpURLConnection.setInstanceFollowRedirects(false)
                   HttpURLConnection con =
                   (HttpURLConnection) new URL(URLName).openConnection();
                   con.setRequestMethod("HEAD");
                   return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
              catch (Exception e)
                   e.printStackTrace();
                   return false;
         public String getSimpleFileName(File f)
              String path=f.getPath();
              String fileName=path.replace("\\", "/");
              int slashPos = fileName.lastIndexOf("/");
              fileName=fileName.substring(slashPos+1);
              return fileName;
         public String verifyFileName(String name)
              int count=0;
              //String url="http://chris-malcolm.com/images/"+URLEncoder.encode(name).replace("+", "%20");
              while (URLexists("http://chris-malcolm.com/images/"+URLEncoder.encode(name).replace("+", "%20"))==true)
              count++;
              name=FileExt(name)[0]+"-"+count+"."+FileExt(name)[1];
              return name;
         public String[] FileExt(String fileName)
            int dotPos = fileName.lastIndexOf(".");
              fileName=fileName.replace("\\", "/");
              int slashPos = fileName.lastIndexOf("/");
              String extension, name;
              if (slashPos==fileName.length()-1)
                   fileName=fileName.substring(0, fileName.length()-1);
                   slashPos=fileName.lastIndexOf("/");
                   extension="/";
                   name=fileName.substring(slashPos+1);
              else if(dotPos==-1)
                   name=fileName.substring(slashPos+1);
                   extension="";
              else
                   extension = fileName.substring(dotPos+1);
                   name=fileName.substring(slashPos+1, dotPos);
                   String[] output={name, extension};
                   return output;
              String[] output={name, extension};
              return output;
        public void disconnect()
            if (outputStream != null) {
                try {
                      if (loggedIn) { logout(); };
                    outputStream.close();
                    inputStream.close();
                    connectionSocket.close();
                } catch (IOException e) {}
                outputStream = null;
                inputStream = null;
                connectionSocket = null;
         * Wrapper for the commands <code>user [username]</code> and <code>pass
         * [password]</code>.
        public boolean login(String username, String password)
            throws IOException
            int response = executeCommand("user " + username);
            if (!isPositiveIntermediateResponse(response)) return false;
            response = executeCommand("pass " + password);
            loggedIn = isPositiveCompleteResponse(response);
            return loggedIn;
         * Added by Julian: Logout before you disconnect (this is good form).
        public boolean logout()
            throws IOException
            int response = executeCommand("quit");
            loggedIn = !isPositiveCompleteResponse(response);
            return !loggedIn;
         * Wrapper for the command <code>cwd [directory]</code>.
        public boolean changeDirectory(String directory)
            throws IOException
            int response = executeCommand("cwd " + directory);
            return isPositiveCompleteResponse(response);
         * Wrapper for the commands <code>rnfr [oldName]</code> and <code>rnto
         * [newName]</code>.
        public boolean renameFile(String oldName, String newName)
            throws IOException
            int response = executeCommand("rnfr " + oldName);
            if (!isPositiveIntermediateResponse(response)) return false;
            response = executeCommand("rnto " + newName);
            return isPositiveCompleteResponse(response);
         * Wrapper for the command <code>mkd [directory]</code>.
        public boolean makeDirectory(String directory)
            throws IOException
            int response = executeCommand("mkd " + directory);
            return isPositiveCompleteResponse(response);
         * Wrapper for the command <code>rmd [directory]</code>.
        public boolean removeDirectory(String directory)
            throws IOException
            int response = executeCommand("rmd " + directory);
            return isPositiveCompleteResponse(response);
         * Wrapper for the command <code>cdup</code>.
        public boolean parentDirectory()
            throws IOException
            int response = executeCommand("cdup");
            return isPositiveCompleteResponse(response);
         * Wrapper for the command <code>dele [fileName]</code>.
        public boolean deleteFile(String fileName)
            throws IOException
            int response = executeCommand("dele " + fileName);
            return isPositiveCompleteResponse(response);
         * Wrapper for the command <code>pwd</code>.
        public String getCurrentDirectory()
            throws IOException
            String response = getExecutionResponse("pwd");
            StringTokenizer strtok = new StringTokenizer(response);
            // Get rid of the first token, which is the return code
            if (strtok.countTokens() < 2) return null;
            strtok.nextToken();
            String directoryName = strtok.nextToken();
            // Most servers surround the directory name with quotation marks
            int strlen = directoryName.length();
            if (strlen == 0) return null;
            if (directoryName.charAt(0) == '\"') {
                directoryName = directoryName.substring(1);
                strlen--;
            if (directoryName.charAt(strlen - 1) == '\"')
                return directoryName.substring(0, strlen - 1);
            return directoryName;
         * Wrapper for the command <code>syst</code>.
        public String getSystemType()
            throws IOException
            return excludeCode(getExecutionResponse("syst"));
         * Wrapper for the command <code>mdtm [fileName]</code>.  If the file does
         * not exist, we return -1;
        public long getModificationTime(String fileName)
            throws IOException
            String response = excludeCode(getExecutionResponse("mdtm " + fileName));
            try {
                return Long.parseLong(response);
            } catch (Exception e) {
                return -1L;
         * Wrapper for the command <code>size [fileName]</code>.  If the file does
         * not exist, we return -1;
        public long getFileSize(String fileName)
            throws IOException
            String response = excludeCode(getExecutionResponse("size " + fileName));
            try {
                return Long.parseLong(response);
            } catch (Exception e) {
                return -1L;
         * Wrapper for the command <code>retr [fileName]</code>.
        public boolean downloadFile(String fileName)
            throws IOException
            return readDataToFile("retr " + fileName, fileName);
         * Wrapper for the command <code>retr [serverPath]</code>. The local file
         * path to which we will write is given by <code>localPath</code>.
        public boolean downloadFile(String serverPath, String localPath)
            throws IOException
            return readDataToFile("retr " + serverPath, localPath);
         * Wrapper for the command <code>stor [fileName]</code>.
        public boolean uploadFile(String fileName)
            throws IOException
            return writeDataFromFile("stor " + fileName, fileName);
         * Wrapper for the command <code>stor [localPath]</code>. The server file
         * path to which we will write is given by <code>serverPath</code>.
        public boolean uploadFile(String serverPath, String localPath)
            throws IOException
            return writeDataFromFile("stor " + serverPath, localPath);
         * Set the restart point for the next download or upload operation.  This
         * lets clients resume interrupted uploads or downloads.
        public void setRestartPoint(int point)
            restartPoint = point;
            debugPrint("Restart noted");
         * Gets server reply code from the control port after an ftp command has
         * been executed.  It knows the last line of the response because it begins
         * with a 3 digit number and a space, (a dash instead of a space would be a
         * continuation).
        private int getServerReply()
            throws IOException
            return Integer.parseInt(getFullServerReply().substring(0, 3));
         * Gets server reply string from the control port after an ftp command has
         * been executed.  This consists only of the last line of the response,
         * and only the part after the response code.
        private String getFullServerReply()
            throws IOException
            String reply;
            do {
                reply = inputStream.readLine();
                debugPrint(reply);
            } while(!(Character.isDigit(reply.charAt(0)) &&
                      Character.isDigit(reply.charAt(1)) &&
                      Character.isDigit(reply.charAt(2)) &&
                      reply.charAt(3) == ' '));
            return reply;
         * Added by Julian: Returns the last line of the server reply, but also
         * returns the full multi-line reply in a StringBuffer parameter.
        private String getFullServerReply(StringBuffer fullReply)
             throws IOException
            String reply;
            fullReply.setLength(0);
            do {
                reply = inputStream.readLine();
                debugPrint(reply);
                fullReply.append(reply + lineTerm);
            } while(!(Character.isDigit(reply.charAt(0)) &&
                      Character.isDigit(reply.charAt(1)) &&
                      Character.isDigit(reply.charAt(2)) &&
                      reply.charAt(3) == ' '));
              // remove any trailing line terminators from the fullReply
              if (fullReply.length() > 0) 
                   fullReply.setLength(fullReply.length() - lineTerm.length());
            return reply;
         * Added by Julian: Gets a list of files in the current directory.
         public String listFiles()
              throws IOException
              return listFiles("");
         * Added by Julian: Gets a list of files in either the current
         * directory, or one specified as a parameter. The 'params' parameter
         * can be either a directory name, a file mask, or both (such as
         * '/DirName/*.txt').
         public String listFiles(String params)
              throws IOException
              StringBuffer files = new StringBuffer();
              StringBuffer dirs = new StringBuffer();
              if (!getAndParseDirList(params, files, dirs))
                   debugPrint("Error getting file list");
              return files.toString();
         * Added by Julian: Gets a list of subdirectories in the current directory.
         public String listSubdirectories()
              throws IOException
              return listSubdirectories("");
         * Added by Julian: Gets a list of subdirectories in either the current
         * directory, or one specified as a parameter. The 'params' parameter
         * can be either a directory name, a name mask, or both (such as
         * '/DirName/Sub*').
         public String listSubdirectories(String params)
              throws IOException
              StringBuffer files = new StringBuffer();
              StringBuffer dirs = new StringBuffer();
              if (!getAndParseDirList(params, files, dirs))
                   debugPrint("Error getting dir list");
              return dirs.toString();
         * Added by Julian: Sends and gets the results of a file list command,
         * like LIST or NLST.
        private String processFileListCommand(String command)
            throws IOException
            StringBuffer reply = new StringBuffer();
            String replyString;
            // file listings require you to issue a PORT command,
            // like a file transfer
              boolean success = executeDataCommand(command, reply);
              if (!success)
                   return "";
            replyString = reply.toString();
            // strip the trailing line terminator from the reply
            if (reply.length() > 0)
                 return replyString.substring(0, reply.length() - 1);
            }  else  {
                 return replyString;
          * Added by Julian: Gets a directory list from the server and parses
          * the elements into a list of files and a list of subdirectories.
         private boolean getAndParseDirList(String params, StringBuffer files, StringBuffer dirs)
              throws IOException
              // reset the return variables (we're using StringBuffers instead of
              // Strings because you can't change a String value and pass it back
              // to the calling routine -- changing a String creates a new object)
              files.setLength(0);
              dirs.setLength(0);
              // get the NLST and the LIST -- don't worry if the commands
              // don't work, because we'll just end up sending nothing back
              // if that's the case
              String shortList = processFileListCommand("nlst " + params);
              String longList = processFileListCommand("list " + params);
              // tokenize the lists we got, using a newline as a separator
              StringTokenizer sList = new StringTokenizer(shortList, "\n");
              StringTokenizer lList = new StringTokenizer(longList, "\n");
              // other variables we'll need
              String sString;
              String lString;
              // assume that both lists have the same number of elements
              while ((sList.hasMoreTokens()) && (lList.hasMoreTokens())) {
                   sString = sList.nextToken();
                   lString = lList.nextToken();
                   if (lString.length() > 0)
                        if (lString.startsWith("d"))
                             dirs.append(sString.trim() + lineTerm);
                             debugPrint("Dir: " + sString);
                        }  else if (lString.startsWith("-"))  {
                             files.append(sString.trim() + lineTerm);
                             debugPrint("File: " + sString);
                        }  else  {
                             // actually, symbolic links will start with an "l"
                             // (lowercase L), but we're not going to mess with
                             // those
                             debugPrint("Unknown: " + lString);
              // strip off any trailing line terminators and return the values
              if (files.length() > 0)  {  files.setLength(files.length() - lineTerm.length());  }
              if (dirs.length() > 0)  {  dirs.setLength(dirs.length() - lineTerm.length());  }
              return true;
         * Executes the given FTP command on our current connection, returning the
         * three digit response code from the server.  This method only works for
         * commands that do not require an additional data port.
        public int executeCommand(String command)
            throws IOException
            outputStream.println(command);
            return getServerReply();
         * Executes the given FTP command on our current connection, returning the
         * last line of the server's response.  Useful for commands that return
         * one line of information.
        public String getExecutionResponse(String command)
            throws IOException
            outputStream.println(command);
            return getFullServerReply();
         * Executes the given ftpd command on the server and writes the results
         * returned on the data port to the file with the given name, returning true
         * if the server indicates that the operation was successful.
        public boolean readDataToFile(String command, String fileName)
            throws IOException
            // Open the local file
            RandomAccessFile outfile = new RandomAccessFile(fileName, "rw");
            // Do restart if desired
            if (restartPoint != 0) {
                debugPrint("Seeking to " + restartPoint);
                outfile.seek(restartPoint);
            // Convert the RandomAccessFile to an OutputStream
            FileOutputStream fileStream = new FileOutputStream(outfile.getFD());
            boolean success = executeDataCommand(command, fileStream);
            outfile.close();
            return success;
         * Executes the given ftpd command on the server and writes the contents
         * of the given file to the server on an opened data port, returning true
         * if the server indicates that the operation was successful.
        public boolean writeDataFromFile(String command, String fileName)
            throws IOException
            // Open the local file
            RandomAccessFile infile = new RandomAccessFile(fileName, "r");
            // Do restart if desired
            if (restartPoint != 0) {
                debugPrint("Seeking to " + restartPoint);
                infile.seek(restartPoint);
            // Convert the RandomAccessFile to an InputStream
            FileInputStream fileStream = new FileInputStream(infile.getFD());
            boolean success = executeDataCommand(command, fileStream);
            infile.close();
            return success;
         * Executes the given ftpd command on the server and writes the results
         * returned on the data port to the given OutputStream, returning true
         * if the server indicates that the operation was successful.
        public boolean executeDataCommand(String command, OutputStream out)
            throws IOException
            // Open a data socket on this computer
            ServerSocket serverSocket = new ServerSocket(0);
            if (!setupDataPort(command, serverSocket)) return false;
            Socket clientSocket = serverSocket.accept();
            // Transfer the data
            InputStream in = clientSocket.getInputStream();
            transferData(in, out);
            // Clean up the data structures
            in.close();
            clientSocket.close();
            serverSocket.close();
            return isPositiveCompleteResponse(getServerReply());   
         * Executes the given ftpd command on the server and writes the contents
         * of the given InputStream to the server on an opened data port, returning
         * true if the server indicates that the operation was successful.
        public boolean executeDataCommand(String command, InputStream in)
            throws IOException
            // Open a data socket on this computer
            ServerSocket serverSocket = new ServerSocket(0);
            if (!setupDataPort(command, serverSocket)) return false;
            Socket clientSocket = serverSocket.accept();
            // Transfer the data
            OutputStream out = clientSocket.getOutputStream();
            transferData(in, out);
            // Clean up the data structures
            out.close();
            clientSocket.close();
            serverSocket.close();
            return isPositiveCompleteResponse(getServerReply());   
         * Added by Julian: Executes the given ftpd command on the server
         * and writes the results returned on the data port to the given
         * StringBuffer, returning true if the server indicates that the
         * operation was successful.
        public boolean executeDataCommand(String command, StringBuffer sb)
            throws IOException
            // Open a data socket on this computer
            ServerSocket serverSocket = new ServerSocket(0);
            if (!setupDataPort(command, serverSocket)) return false;
            Socket clientSocket = serverSocket.accept();
            // Transfer the data
            InputStream in = clientSocket.getInputStream();
            transferData(in, sb);
            // Clean up the data structures
            in.close();
            clientSocket.close();
            serverSocket.close();
            return isPositiveCompleteResponse(getServerReply());   
         * Transfers the data from the given input stream to the given output
         * stream until we reach the end of the stream.
        private void transferData(InputStream in, OutputStream out)
            throws IOException
            byte b[] = new byte[BLOCK_SIZE];
            int amount;
            // Read the data into the file
            while ((amount = in.read(b)) > 0) {
                out.write(b, 0, amount);
         * Added by Julian: Transfers the data from the given input stream
         * to the given StringBuffer until we reach the end of the stream.
        private void transferData(InputStream in, StringBuffer sb)
            throws IOException
            byte b[] = new byte[BLOCK_SIZE];
            int amount;
            // Read the data into the StringBuffer
            while ((amount = in.read(b)) > 0) {
                sb.append(new String(b, 0, amount));
         * Executes the given ftpd command on the server and writes the results
         * returned on the data port to the given FilterOutputStream, returning true
         * if the server indicates that the operation was successful.
        private boolean setupDataPort(String command, ServerSocket serverSocket)
            throws IOException
            // Send our local data port to the server
            if (!openPort(serverSocket)) return false;
            // Set binary type transfer
            outputStream.println("type i");
            if (!isPositiveCompleteResponse(getServerReply())) {
                debugPrint("Could not set transfer type");
                return false;
            // If we have a restart point, send that information
            if (restartPoint != 0) {
                outputStream.println("rest " + restartPoint);
                restartPoint = 0;
                // TODO: Interpret server response here
                getServerReply();
            // Send the command
            outputStream.println(command);
            return isPositivePreliminaryResponse(getServerReply());
         * Get IP address and port number from serverSocket and send them via the
         * <code>port</code> command to the ftp server, returning true if we get a
         * valid response from the server, returning true if the server indicates
         * that the operation was successful.
        private boolean openPort(ServerSocket serverSocket)
            throws IOException
            int localport = serverSocket.getLocalPort();
            // get local ip address
            InetAddress inetaddress = serverSocket.getInetAddress();
            InetAddress localip;
            try {
                localip = inetaddress.getLocalHost();
            } catch(UnknownHostException e) {
                debugPrint("Can't get local host");
                return false;
            // get ip address in high byte order
            byte[] addrbytes = localip.getAddress();
            // tell server what port we are listening on
            short addrshorts[] = new short[4];
            // problem:  bytes greater than 127 are printed as negative numbers
            for(int i = 0; i <= 3; i++) {
                addrshorts[i] = addrbytes;
    if (addrshorts[i] < 0)
    addrshorts[i] += 256;
    outputStream.println("port " + addrshorts[0] + "," + addrshorts[1] +
    "," + addrshorts[2] + "," + addrshorts[3] + "," +
    ((localport & 0xff00) >> 8) + "," +
    (localport & 0x00ff));
    return isPositiveCompleteResponse(getServerReply());
    * True if the given response code is in the 100-199 range.
    private boolean isPositivePreliminaryResponse(int response)
    return (response >= 100 && response < 200);
    * True if the given response code is in the 300-399 range.
    private boolean isPositiveIntermediateResponse(int response)
    return (response >= 300 && response < 400);
    * True if the given response code is in the 200-299 range.
    private boolean isPositiveCompleteResponse(int response)
    return (response >= 200 && response < 300);
    * True if the given response code is in the 400-499 range.
    private boolean isTransientNegativeResponse(int response)
    return (response >= 400 && response < 500);
    * True if the given response code is in the 500-5

    ok i tried explaining th eproblem in the previous post, but i apologize if my explanation was poor. anyways, i tried to look into it further by doing a printStackTrace() and believe it may be a read error. here is my new updated snippet, and also a link to a screenshot ([click here for screenshot|http://img143.imageshack.us/my.php?image=picture4qr0.png]) of what the error looks like on my end. it seems like a socket is not being read, or maybe it is initialized properly. Again I apologize if my problem is vague, but I do appreciate your input. thanks.
    updated code snippet
    public void uploadFiles()
              statusLabel.setVisible(true);
              errorLabel.setVisible(true);
              uploadButton.setVisible(false);
              footer.setVisible(false);
              holdingPanel.setVisible(false);
              pbar.setVisible(true);
              pbar = new JProgressBar();
              pbar.setMinimum(0);
              float Total=0;
              for (int i=0; i<fileLengths.size(); i++)
                   if(((java.lang.Boolean)model.getValueAt(i,1)).toString().equals("true"))
                        Total+=Float.parseFloat((String)fileLengths.get(i));
              pbar.setMaximum((int)Total);
              String info="";
              try
                   ftp=new FTPConnection(false);
                   ftp.connect("ftp.chris-malcolm.com");
                   if (ftp.login("chrismal", "***"))
                        statusLabel.setText("Status: Connected.");
                        info+="Successfully logged in!\n";
                        info+="System type is: " + ftp.getSystemType()+"\n";
                        info+="Current directory is: " + ftp.getCurrentDirectory()+"\n";
                        if (ftp.changeDirectory("/www/images/"))
                             info+="directory changed to: " + ftp.getCurrentDirectory()+"\n";
                                                 try
                             for (int i=0; i<allFiles.size(); i++)
                                  if(((java.lang.Boolean)model.getValueAt(i,1)).toString().equals("true"))
                                       String f=client.verifyFileName((String)model.getValueAt(i,0));
                                       String f2=""+((File)allFiles.get(i)).getPath();
                                       info+="filename: "+f2+"\n";
                                       if (ftp.uploadFile(f2))
                                            statusLabel.setText("Status: Uploading "+f+" - "+i+" of "+calculateTotalFiles()+" files(s)");
                                            pbar.setValue(Integer.parseInt((String)fileLengths.get(i)));
                                       else
                                            errorLabel.setText("Error occured while uploading"+f2+"\n");
                        catch(Exception de) 
                             StringWriter sw = new StringWriter();
                                  PrintWriter pw = new PrintWriter(sw);
                                  de.printStackTrace(pw);
                                  pw.close();
                                  //errorLabel.setText("<html>ERROR:"+sw.toString().replace("\n", "<br>")+"</html>");
                                  info+="Error: "+de.getMessage()+"\n";
                                  info+="Trace: "+sw+"\n";
                             try { ftp.disconnect(); statusLabel.setText("Status: disconnected.");}  catch(Exception e2)  {};
                        else
                             info+="could not change directory\n";
                   else
                        info+="could not login";
              catch (Exception e)
                   StringWriter sw = new StringWriter();
                                  PrintWriter pw = new PrintWriter(sw);
                                  e.printStackTrace(pw);
                                  pw.close();
                                  info+="Error: "+e.getMessage()+"\n";
                                  info+="Trace: "+sw+"\n";
                   try { ftp.disconnect();  statusLabel.setText("Status: disconnected.");}  catch(Exception e2)  {};
              errorLabel.setText("ERROR:"+info);
              JOptionPane.showMessageDialog(this, info, "test", JOptionPane.PLAIN_MESSAGE);
              try { ftp.disconnect(); statusLabel.setText("Status: disconnected.");}  catch(Exception e2)  {};
         Edited by: cjm771 on Jul 13, 2008 7:23 PM

  • Can anyone help with my Shutterfly export plugin problem?

    My Shutterfly plugin for iPhoto says that I have the wrong password. I double-checked on the Shutterfly website and I have the correct password. This is very inconvenient because I can't upload my photos to make a book. Shutterfly said it's a problem with iPhoto. Any ideas?
    I uninstalled and reinstalled the plugin but it didn't work.
    It used to work just fine.
    Thanks
    Meg

    It is not a problem with iPhoto since iPhoto has no support of any sort for Sutterfly - if you have a ShutterFly plug in it is not an Apple plug in - it is from ShutterFly or a third party - you need to contact the author for usupport on their product
    LN

  • FTP Adapter Problem

    Hi,
    I am using the FTP adapter to transfer a file from a remote machine and am getting this exception.
    java.lang.NoClassDefFoundError: oracle/security/pki/OraclePKIProvider
    at oracle.tip.adapter.ftp.FTP.connect(FTP.java:438)
    at oracle.tip.adapter.ftp.FTPClient.establishFtpSession(FTPClient.java:169)
    at oracle.tip.adapter.ftp.FTPAgent.login(FTPAgent.java:597)
    at oracle.tip.adapter.ftp.FTPAgent.getFileList(FTPAgent.java:269)
    at oracle.tip.adapter.file.inbound.FileSource.getFileList(FileSource.java:199)
    at oracle.tip.adapter.file.inbound.PollWork.pollFiles(PollWork.java:210)
    at oracle.tip.adapter.file.inbound.PollWork.run(PollWork.java:116)
    at oracle.tip.adapter.fw.jca.work.WorkerJob.go(WorkerJob.java:51)
    at oracle.tip.adapter.fw.common.ThreadPool.run(ThreadPool.java:267)
    at java.lang.Thread.run(Thread.java:534)
    Any ideas?
    Thanks
    -G

    Clemens,
    It's very nice to know that guys like you are here to help people like me. I develope the same BPEL Project on a stand alone windows installation (BPEL Server 10.1.2.0.2) a Works perfectly.
    I'm sure know the problem resides on the BPEL Server or the OAS. Besides updating the BPEL Server version what order suggestions do you have in mind????
    What do you think about OAS R3??? Is it trusted to upgrade to R3 now????
    Thank very much for your time.
    Cordially,
    Jose
    Mensaje editado por:
    user489282

  • FTP adapter problems

    Hi all,
    I'm having some problems with the FTP adapter.
    About two months ago I did an ESB project which reads from an FTP and writes the files in a local directory.
    I noticed that I had to change this parameter oracle.tip.adapter.file.numProcessorThreads=1 in the integration\esb\config\pc.properties.esb en integration\esb\config\ pc.properties file, for the FTP adapter to work all right. And it has been working for a long time.
    The issue is, that now, I deploy this same ESB project to the same server and is not working. No files are being copied to my local directory. Furthermore, there are no instances in the ESB Control either.
    I haven't changed anything so I don't understand why this is happening.
    I set the log trace to FINEST and I found this trace for a lot of files in the log:
    JCA: Poller enqueuing file for processing :/200704110041_r01g0020.gif
    JCA: Ignoring File : 200704110041_r01g0020.gif as it is already enqued for processing.
    So, there are no errors showing in the log but the adapter is not working.
    Any tips about this? It is very important because we have to put this project in the production machine....
    Thanks for your help.
    Message was edited by:
    Zaloa

    Hi Mark,
    Thank you for your response, I have post the service request already. So far, I haven't got any answers and I have been trying to deploy this same project in different servers.
    I get different results everytime without changing anything. In the test environment I just get the first error I post in this thread. In my local server I get a fatal error that I have already reported in this forum with the subject "FatalError FTP Adapter", and I write it here again.
    JCA: Completed inbound translation for : 200704021141_r01g1120.gif
    JCA: Did not publish file {200704021141_r01g1120.gif} as endpoint has been de-activated.
    JCA: Processer thread calling onFatalError with exception Error al publicar el mensaje.
    Se ha producido un error al publicar el mensaje del archivo /200704021141_r01g1120.gif (Error publishing the file message....)
    Compruebe la pila de errores y corrija la causa del error. Póngase en contacto con los Servicios de Soporte Oracle si no se puede
    corregir el error. (Check error stack and fix the error. Contact Oracle Support Services if the error can not be fixed)
    JCA inbound adapter service listener for "SUBIRA.INM.ConsultaFTP_RS.Get" with endpoint ID "[Get_ptt::Get(opaque)]" has been requested
    to shutdown by Resource Adapter due to fatal error. Reason : ORABPEL-11004
    Error al publicar el mensaje. (Error publishing the message)
    Se ha producido un error al publicar el mensaje del archivo /200704021141_r01g1120.gif (An error has occurred publishing the file....)
    Compruebe la pila de errores y corrija la causa del error. Póngase en contacto con los Servicios de Soporte Oracle si no se puede
    corregir el error. (Check error stack and fix the error. Contact Oracle Support Services if the error can not be fixed)
    Any ideas? Thanks in advance,
    Zaloa

  • BPEL FTP Adapter problems

    Hi!
    I have two problem using the FTP Adapter in a BPEL process.
    The first can be described as follow: I have a BPEL process that incapsulates the FTP Adapter and it is deployed correctly on the BPEL default domain. It's working fine in a normal context with no error. Now I want to simulate a "read FTP Server" crash; so I put the FTP Server from which I'm reading off-line. When the GET module of the FTP Adapter tries to poll the server, it generates a Null Pointer Exception and on the server command window I can read, after a while, that the process state will be set to OFF. But when I enter in the console I always see the state ON! But the interesting question is: is there an automatic way to recovery the process and to restart it? I see that in the domain parameter there are two values: rcvAgentDelay (7200) and rcvThreshold (600). I tried to set them to some other values, for example (120) and (10), but the process still remains "blocked" and no new polling seems to happen.
    The second problem is about the creation and the deploying on a new domain. I create a new domain called "bulk" and I tried to deploy my process on it but I can't do it due to the generation of many exception! Can I deploy a process with a FTP Adapter component inside on a domain different from the default one? And if the response is positive, like I think, can you summarize the most important steps of it and if I must configure some specific domain parameters?
    Thanks a lot,
    Busnelli.

    OK, firstly I want to thank both of you, Rakesh and Maneesh.
    Here are the details requested:
    Operation System = Windows XP Pro SP2
    BPEL Process Manager = 10.1.2
    BPEL Server version = 2.2 (build 1361)
    JDeveloper version = 10.1.2 (build 1811)
    BPEL Designer version = 10.1.2 (build 050322)
    Usually after any modification I'm used to restarting the BPEL server.
    Today I have downloaded the "Oracle JDeveloper 10g (10.1.3) - Developer Preview" (I think to be the Post Beta 3) and as soon as possible I will try to use it.
    Thanks to both!

  • Smartsound Quicktracks Plugin Problem

    After making the mistake of upgrading to iTunes 5, I now get a windows installer message looking for 'Smartsound Quicktracks Plugin.msi" everytime I boot up the PC. It's looking for this plugin. I was using the previous version of iTunes. I've tried uninstalling Quicktime and re-installing with the same problem. Will reverting back to earlier iTunes wipe out my purchased music and should I attempt to do this? It's a pain to keep clicking on cancel everytime I boot up.

    Trevor, welcome to these discussions.
    The "Smartsound Quicktracks" plug-in has nothing at all to do with Apple's QuickTime for Windows software.
    You must have downloaded it and then (maybe) uninstalled it. And it didn't uninstall completely or properly.
    It's not an error message from any of your installed Apple software.

Maybe you are looking for