Bug 779489 (SOA-1873)

Summary: FTP notifier - Illegal character in fragment - with special char in password
Product: [JBoss] JBoss Enterprise SOA Platform 5 Reporter: Len DiMaggio <ldimaggi>
Component: Documentation, JBossESBAssignee: Len DiMaggio <ldimaggi>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5.0.0 ER7   
Target Milestone: ---   
Target Release: 5.0.0 GA   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/SOA-1873
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-02-12 15:21:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 779504    
Attachments:
Description Flags
helloworld.tar
none
server.log none

Description Len DiMaggio 2010-01-24 19:16:48 UTC
Date of First Response: 2010-02-10 22:30:55
project_key: SOA

Platform JIRA for:  https://jira.jboss.org/jira/browse/JBESB-3147

Comment 1 Len DiMaggio 2010-01-24 19:18:16 UTC
Attachment: Added: helloworld.tar
Attachment: Added: server.log


Comment 2 Len DiMaggio 2010-01-24 19:19:45 UTC
Link: Added: This issue is related to SOA-1490


Comment 3 Len DiMaggio 2010-01-24 19:19:45 UTC
Link: Added: This issue is related to SOA-1491


Comment 5 Len DiMaggio 2010-01-25 15:09:52 UTC
Note from Kevin - this differs from SOA-1490 in that in 1490, the bug was how the ESB constructed the URL - in this problem (SOA-1873) the user must define the URL and encode all necessary chars - need to document an example - and verify that it works.

Comment 6 Len DiMaggio 2010-01-26 02:47:00 UTC
The correct way to use these chars in an FTP notifier password or dir is:

For example - for a dir of "ftp_dir##"

                                   <target class="NotifyFTP">
                                        <ftp
                                            URL="ftp://username:password@servername.jboss.com/ftp_dir%23%23"
                                           filename="test.{jbossesb.message.id}.dat"
                                           passive="true" />
                                   </target>



Comment 7 Len DiMaggio 2010-01-26 02:47:55 UTC
Link: Added: This issue depends JBESB-3147


Comment 8 Len DiMaggio 2010-01-26 13:50:36 UTC
We're inconsistent with how we handle special characters between ftp gateway listener definitions and ftp notifier definitions - it would make it simpler for users if we handled these in the same way. I'll log a separate feature request JIRA for that.

For example, to use a directory of "ftp_dir##" and a password of "password##:

FTP gateway listener:

<ftp-provider hostname="servername.com" name="FTPprovider">
    <ftp-bus busid="notifyFTPChannel">
        <ftp-message-filter directory="/ftp_dir##"
            error-delete="false" error-suffix=".HAS_ERROR"
            input-suffix=".notifiertest" passive="true"
            password="password##" post-delete="false"
            post-suffix=".COMPLETE" username="username"
            work-suffix=".esbWorking" />
    </ftp-bus>
</ftp-provider>


FTP: notifier:

<action class="org.jboss.soa.esb.actions.Notifier" name="notify">
    <property name="okMethod" value="notifyOK" />
    <property name="notification-details">
        <NotificationList type="OK">
            <target class="NotifyFTP">
                <ftp
                    URL="ftp://username:password%23%23@servername.com/ftp_dir%23%23"
                    filename="{jbossesb.message.id}.notifier"
                    passive="true" />
            </target>
         </NotificationList>
    </property>
</action>



Comment 9 Len DiMaggio 2010-01-26 16:36:38 UTC
Link: Added: This issue is a dependency of SOA-1887


Comment 10 David Le Sage 2010-02-11 03:30:55 UTC
I have added this issue to the Release Notes.  Here is the draft text:


https://jira.jboss.org/jira/browse/SOA-1873
    

    There is an inconsistency between the FTP Gateway Listener and the FTP Notifier.
    The FTP Gateway Listener can accept non-alpha numeric characters for fields such as the
     password whilst the FTP Notifier cannot. For instance, a # character must be entered as %23
     to work in the Notifier. If you enter an illegal character, the Notifier will not work.


Comment 11 Dana Mison 2010-02-11 03:54:22 UTC
Also should be noted in the NotifyFTP section of the OOB chapters of the Programmers Guide

Comment 12 David Le Sage 2010-02-11 04:21:58 UTC
I have reworded the Release Note slightly:

https://jira.jboss.org/jira/browse/SOA-1873

    There is an inconsistency between the FTP Gateway Listener and the FTP Notifier. The
    FTP Gateway Listener can accept non-alpha numeric characters whilst the FTP Notifier
    cannot. In the latter case, fields must be URL encoded. For instance, a # character must be
    entered as %23 to work in the Notifier. If you enter an illegal character, the Notifier will not
    work.


As per Darrin's recommendation, the issue is also mentioned in the appropriate section of the Programmers' Guide now.