I'm having a lot of difficulty getting file uploading to work using Teapot/Zinc. The documentation is not entirely clear about how it's supposed to work, and the example provided doesn't quite work. I'm referring to section "4.6 Submitting HTML Forms" in "Enterprise Pharo ��� a Web Perspective."

Here's my setup...

I have a Teapot route like:

GET: '/upload-handler' -> [ :req | self uploadHandler: req ];

where

uploadHandler: req
�� ��^ '<div>
�� �� �� <form method="POST" action="upload-handler"�� enctype="multipart/form-data">
�� �� �� �� ��<input type="file" name="fileupload">
�� �� �� �� ��<input type="submit" value="Upload!">
�� �� �� </form>
�� �� �� </div>'

I have a submission form like:

GET: '/submission' -> [ :req | self submissionPage: req ];
POST: '/submission' -> [ :req | self handleSubmission: req ];

where

submissionPage: req
�� ��^ '<div>
�� �� �� <form method="POST">
�� �� �� �� ��<input type="file" name="fileupload" value="">
�� �� �� �� ��<input type="submit" value="Submit">
�� �� �� </form>
�� �� �� </div>'

handleSubmission: req
�� ��ZnClient new
�� �� �� url: 'http://174.117.171.194/upload-handler';
�� �� �� addPart: (ZnMimePart
�� �� �� �� ��fieldName: 'fileupload' fileNamed: 'S1-ABCD012345.st' );
�� �� �� post.

When I submit the submission form, I get "FileDoesNotExist: File @ /S1-ABCD012345.st".

It doesn't matter what path I use to get to S1-ABCD012345.st. I tried "/Users/richardeng/Documents". I tried "/Documents". I tried "/". I don't know what path it's looking for. The file is there ��� there's no reason why it can't find it.

I guess I'm just not understanding how this whole thing is supposed to work. Any ideas?

Richard