Thank you Jeremy, that may indeed be it. I'll give it a try shortly

Incidentally, what does your  IOUtils.toString look like? Does it use
an InputStreamReader combined with a StringWriter? Im using

StringWriter sw = new StringWriter();
char[] buffer = new char[1024];
for (int n; (n = r.read(buffer)) != -1; )  {
sw.write(buffer, 0, n);
}

Just checking im doing things the most standard way possible.

thanks again

David

On 11/25/09, Jeremy Blythe <[email protected]> wrote:
> You might be parsing a text/plain as a multipart. I've blogged about
> this here
> http://jeremyblythe.blogspot.com/2009/11/receiving-email-in-google-app-engine.html
> I think this is a bug in App Engine.
>
> On Nov 25, 3:42 pm, david ruescas <[email protected]> wrote:
>> I added a trace message, here's the value of
>> javax.mail.internetMimeMessage.getContentType():
>>
>> com.dr.reviewengine.MailServlet doPost: multipart content type
>> text/plain; charset=ISO-8859-1
>>
>> thankyou
>>
>> On 11/25/09, m seleron <[email protected]> wrote:
>>
>> > Hi,
>>
>> > I want you to teach the value of
>> > [javax.mail.internetMimeMessage.getContentType() ]
>> > for confirmation.
>>
>> > thanks.
>>
>> > On 11月25日, 午前3:57, david ruescas <[email protected]> wrote:
>> >> When receiving email I get an out of memory error when calling
>> >> getCount on the MimeMultipart object.
>>
>> >> Heres the stack trace:
>>
>> >> Error for /_ah/mail/[email protected]
>> >> java.lang.OutOfMemoryError: Java heap space
>> >>         at java.util.Arrays.copyOf(Unknown Source)
>> >>         at java.io.ByteArrayOutputStream.write(Unknown Source)
>> >>         at
>> >> javax.mail.internet.MimeMultipart.readTillFirstBoundary(MimeMultipart.java:244)
>> >>         at
>> >> javax.mail.internet.MimeMultipart.parse(MimeMultipart.java:181)
>> >>         at
>> >> javax.mail.internet.MimeMultipart.getCount(MimeMultipart.java:109)
>> >>         at com.dr.reviewengine.MailServlet.doPost(MailServlet.java:85)
>> >>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
>> >>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>> >>         at
>> >> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
>> >>         at
>> >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
>> >>         at
>> >> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>> >>         at
>> >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> >>         at
>> >> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>> >>         at
>> >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> >>         at
>> >> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>> >>         at
>> >> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> >>         at
>> >> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>> >>         at
>> >> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
>> >>         at
>> >> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>> >>         at
>> >> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>> >>         at
>> >> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>> >>         at org.mortbay.jetty.Server.handle(Server.java:313)
>> >>         at
>> >> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
>> >>         at
>> >> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
>> >>         at
>> >> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>> >>         at
>> >> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
>> >>         at
>> >> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:139)
>> >>         at
>> >> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:239)
>> >>         at
>> >> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5135)
>> >>         at
>> >> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5133)
>> >>         at
>> >> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>> >>         at
>> >> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:363)
>>
>> > --
>>
>> > You received this message because you are subscribed to the Google
>> > Groups
>> > "Google App Engine for Java" group.
>> > To post to this group, send email to
>> > [email protected].
>> > To unsubscribe from this group, send email to
>> > [email protected].
>> > For more options, visit this group at
>> >http://groups.google.com/group/google-appengine-java?hl=en.
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Google App Engine for Java" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-appengine-java?hl=en.
>
>
>

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.


Reply via email to