Hi David,
I haven't tested this in IBM i, but I found this recommendation on stackexchange. Please give it a try and update us whether it works or not!
Pass the user name through the -o User option, or through the equivalent User directive in the client configuration file (~/.ssh/config).
sftp -o Port=8777 -o User=user@example.com example.com
This applies to ssh, scp and sshfs as well. Using the configuration file instead of -o options has the advantage of also working with tools that call ssh and don't let you easily pass command line options if at all.
------------------------------
Steven Riedmueller
Certified IBM i Admin
Speaker, Mentor, and Advocate
------------------------------