Solved

Can't get request_content when request is big

Posted on 2003-12-05
9
1,650 Views
Last Modified: 2013-12-18
Hello !

I've debeloped a LotusScript Agent handles a POST query encoded as multipart-data, in order to provide upload capabilities without using a Domino-generated form.

Inside the LotusScript code I get the POST request from the NotesSession.DocumentContext.GetItemValue("Request_content")(0); this code returns a String containing the multipart message.

In order to test this agent, I made an HTML page containing a form like this:
<form method="POST" action="http://gaga/gogo.nsf/myAgent?OpenAgent" enctype="multipart/form-data">
<input type="file" name="gugu" />
<input type="file" name="toto" />
</form>
and I can upload files from my local computer up to the Domino server.

This work fine with small files, but my problem is that when I try to upload BIG files, let's say 200KB (shouldn't be a big deal), the "Request_content" variable is NULL!!!!

My agent :

Dim session As New NotesSession
Set doc = session.DocumentContext

'incoming is empty
incoming = doc.GetItemValue("Request_content")(0)

'Here, the size is right with small file, and around 576 Bytes with big files
Messagebox doc.size      
      

Anybody to help me ?

Thanks
0
Comment
Question by:Muldec
  • 5
  • 3
9 Comments
 
LVL 14

Expert Comment

by:p_partha
ID: 9885321
If you can tell what are you trying to achieve by printing request_content , we can help you out with alternatives, I tried attaching more than 576 bytes file , i cud succesfully print the value of request_content.

Let us know why do u need request_content information


Partha
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 9892735
Which version of Domino are you using?
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 9892867
Under R5, I'm not getting null content, but I am getting truncated contents in the 40k-60k limit range.
0
Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

 

Author Comment

by:Muldec
ID: 9895066
qwaletee :
I'm using Domino 6.5
What are your results with files bigger than 100k ?

p_partha :
Well, I need to upload an unspecified number of files to the server. To achieve that, I've developped an ActiveX wich read files client-side and send a http-post-request multipart encoded. I need to get that request server-side to write files on the disk. My idea was to user the request_content. As I'm not a Lotus devolepper, maybe there is some other possibilities that I don't know.
0
 
LVL 31

Accepted Solution

by:
qwaletee earned 250 total points
ID: 9895105
Do it the same way Notes would normally do it.  Create a form to post to.  Add a whole bund of file upload controls.  Use a QuerySave Agent to process the incoming document and its attachments.  WHat you will want to do is a loop similar to:

Dim s as new notesSession
Dim doc as notesDocument
Set doc = sdocumentConetxt
Dim fileNames
fileName = Evaluate("@AttachmentNames".doc)
Dim obj as notesEmbeddedObject
Forall fileName in fileNames
  Set obj = doc.getAttachment(fileName)
  obj.extractFile "C:\TEMP\" & fileName
End Forall
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 9895117
You can also try other enctype values, as Domino does, but I don't think that will work particularly well.
0
 

Author Comment

by:Muldec
ID: 9895174
> Add a whole bund of file upload controls

I can't do that. The number of files that can be uploaded with my ActiveX control is illimited. So I can't create a form with a limited number of upload controls. Doing that, I could loose some files wich is not acceptable :)
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 9895181
I'm not certain you really need to have all the upload controls... one might suffice.  And, even if you do need them all, thetruth is that if you put 500 in, you would be unlikely to ever have a problem.
0
 

Author Comment

by:Muldec
ID: 9895267
This is a do-it-yourself solution. But if there is no other way, I'll try it.
If there is no other answer and if it works, the points are yours.
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This is an old article, please see an updated version of this article, located here: http://www.experts-exchange.com/articles/23619/Notes-8-5x-Windows-7-Notes-info-and-tips.html
IBM Notes offer Encryption feature using which the user can secure its NSF emails or entire database easily. In this section we will discuss about the process to Encrypt Incoming and Outgoing Mails in depth.
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question