Jay Roy
asked on
forwadring to Servlet from Remote object fails
hi guys
I am generating Pdf from flex. From my flex client i call 'RemoteCustomer' a java remote object and call generatePdf()method. In this method i am trying to forward to a java Servlet called PDFServlet which is in the same package as RemoteCustomer but i get error shown below
public class RemoteCustomer{
public void generatePdf(Workflow workflow){
boolean pdfStatus = true;
try{
String sessionKeyName = "PDF_BYTESTREAM";
ByteArrayOutputStream pdfByteStream = null;
HttpServletRequest request = flex.messaging.FlexContext .getHttpRe quest();
HttpServletResponse response = flex.messaging.FlexContext .getHttpRe sponse();
pdfByteStream = PdfMaker.makePdf(workflow) ; -- this contains the byte stream which needs to be passed to servlet
request.getSession().setAt tribute(se ssionKeyNa me,p dfByteStream);
request.getRequestDispatch er("PDFServlet").forward(request, response); //PDFServlet exist in same package as this class
}
}
PDFServlet is my servlet class but unfortunately its not forwarding to the servlet.
It says
org.springframework.flex.s ervlet.Mes sageBroker Hand lerAdapter handle Received invalid request for endpoint path '/messagebroker/PDFServlet '.[4/26/11 12:58:10:850 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr t.SRTServl etResponse addHeader WARNING: Cannot set header. Response already committed.
[4/26/11 12:58:10:865 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr t.SRTServl etResponse setDateHeader WARNING: Cannot set header. Response already committed.
[4/26/11 12:58:10:865 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr t.SRTServl etResponse setHeader WARNING: Cannot set header. Response already committed.
[4/26/11 12:58:10:928 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr t.SRTServl etResponse setIntHeader WARNING: Cannot set header. Response already committed.
[4/26/11 12:58:10:944 EDT] 00000029 SystemOut O [BlazeDS]SRVE0209E: Writer already obtained
java.lang.IllegalStateExce ption: SRVE0209E: Writer already obtained
at com.ibm.ws.webcontainer.sr t.SRTServl etResponse .get Outpu
Any help will be greatly appreciated
thanks
I am generating Pdf from flex. From my flex client i call 'RemoteCustomer' a java remote object and call generatePdf()method. In this method i am trying to forward to a java Servlet called PDFServlet which is in the same package as RemoteCustomer but i get error shown below
public class RemoteCustomer{
public void generatePdf(Workflow workflow){
boolean pdfStatus = true;
try{
String sessionKeyName = "PDF_BYTESTREAM";
ByteArrayOutputStream pdfByteStream = null;
HttpServletRequest request = flex.messaging.FlexContext
HttpServletResponse response = flex.messaging.FlexContext
pdfByteStream = PdfMaker.makePdf(workflow)
request.getSession().setAt
request.getRequestDispatch
}
}
PDFServlet is my servlet class but unfortunately its not forwarding to the servlet.
It says
org.springframework.flex.s
[4/26/11 12:58:10:865 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr
[4/26/11 12:58:10:865 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr
[4/26/11 12:58:10:928 EDT] 00000029 srt W com.ibm.ws.webcontainer.sr
[4/26/11 12:58:10:944 EDT] 00000029 SystemOut O [BlazeDS]SRVE0209E: Writer already obtained
java.lang.IllegalStateExce
at com.ibm.ws.webcontainer.sr
Any help will be greatly appreciated
thanks
ASKER
yeah, makes sense
when you said
>>>byte[] would be great, but Byte[] really sucks
whats the difference between byte[] and Byte[]
thx
when you said
>>>byte[] would be great, but Byte[] really sucks
whats the difference between byte[] and Byte[]
thx
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
I would suggest to call your Servlet directly from the Flex client using an UrlRequest or something like that.