Francisco José Aquino García wrote:
<result type="stream">
<param name="contentType">${mimeType}</param>
<param name="contentLength">${length}</param>
<param name="contentDisposition">inline; filename="${fileName}"</param>
<param name="inputName">inputStream</param>
<param name="bufferSize">${buffSize}</param>
<param name="allowCaching">false</param>
</result>
</action>
The result doesn't evaluate bufferSize. You can't put in OGNL there.
I've been peeking a little into
org.apache.struts2.dispatcher.StreamResult, and it indeed has a
property bufferSize of type int, but looks like OGNL keeps on
hammering a non-existent String one.
"${buffSize}" is a String.
By the way, I also can't get the point of contentLengh being String.
Did you notice where that string is explicitly parsed to extract a real
value?
198 // Set the content length
199 if (contentLength != null) {
200 String _contentLength =
conditionalParse(contentLength, invocation);
201 int _contentLengthAsInt = -1;
202 try {
203 _contentLengthAsInt =
Integer.parseInt(_contentLength);
204 if (_contentLengthAsInt >= 0) {
205
oResponse.setContentLength(_contentLengthAsInt);
206 }
207 }
208 catch(NumberFormatException e) {
209 log.warn("failed to recongnize
"+_contentLength+" as a number, contentLength header will not be set", e);
210 }
211 }
-Dale
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org