The key phrase is "inner class". You probably aren't making the inner class static. Remember that java inner classes contain an implicit reference to their containing class - so you're trying to serialize bot the inner class and the outer class.
Jeff On Mon, Apr 9, 2012 at 5:13 AM, Deepak Singh <deepaksingh...@gmail.com> wrote: > Hi Jeff, > > I create an inner class as follows, > > class TaskOp implements DeferredTask, Serializable { > > @Override > public void run() { > try{ > enq.setStatus(Constant.CANCELLED_ENQUIRY); > objectify.put(enq); > }catch () { > > } > } > } > > Here in run method, i am using objectify.put('a serialisable object'); > Now i create a taskOption as follows, > > try{ > TaskOptions taskOpt = TaskOptions.Builder.withPayload(new TaskOp()); > Queue defQueue = QueueFactory.getDefaultQueue(); > defQueue.add(taskOpt); > }catch (Exception e) { > System.out.println("CommonRpcServiceImpl.cancelTripEnquiry() > "+e.getMessage()); > } > > Here the task option accepts an object of my inner class which implements > DeferreTask. > > Now executing the above task gives me the following exception, > > java.io.NotSerializableException: > com.google.gwt.user.server.rpc.impl.StandardSerializationPolicy > > I verify that the object being used in DeferredTask is serialisable, even > the i am getting the exception. > > I hope now the problem is clear. > > > > Thanks > Deepak > > > On Mon, Apr 9, 2012 at 6:29 AM, Jeff Schnitzer <j...@infohazard.org> wrote: >> >> I suggest restating the problem and being as clear as possible. I >> can't understand what you are asking - sorry. >> >> Jeff >> >> On Sun, Apr 8, 2012 at 7:04 PM, Deepak Singh <deepaksingh...@gmail.com> >> wrote: >> > I am still stuck with the issue.... >> > >> > >> > On Sun, Apr 8, 2012 at 2:03 AM, Deepak Singh <deepaksingh...@gmail.com> >> > wrote: >> >> >> >> Hi, >> >> >> >> I am doing some database operation on GAE-JAVA using Objectify 3.0.1 >> >> through Deferedtask as follows, >> >> >> >> class TaskOp implements DeferredTask, Serializable { >> >> >> >> @Override >> >> public void run() { >> >> try{ >> >> enq.setStatus(Constant.CANCELLED_ENQUIRY); >> >> objectify.put(enq); >> >> List<PackageConversationDTO> convList = >> >> objectify.query(PackageConversationDTO.class).filter("leadId", >> >> enq.getId()).list(); >> >> for(PackageConversationDTO convDto : convList) { >> >> convDto.setStatus(Constant.CANCELLED_TRIP_PACKAGE_CONVERSATION); >> >> objectify.put(convDto); >> >> } >> >> List<HolidayInvoiceDTO> list = >> >> objectify.query(HolidayInvoiceDTO.class).filter("tripId", >> >> enq.getId()).list(); >> >> for(HolidayInvoiceDTO holiday : list) { >> >> holiday.setStatus(Constant.INVOICE_GENERATED_THEN_TRIP_CANCELLED); >> >> objectify.put(holiday); >> >> } >> >> }catch (Exception e) { >> >> System.out >> >> .println("CommonRpcServiceImpl.cancelTripEnquiry(...).TaskOp.run() >> >> "+e.getMessage()); >> >> } >> >> } >> >> >> >> } >> >> >> >> >> >> >> >> try{ >> >> TaskOptions taskOpt = TaskOptions.Builder.withPayload(new TaskOp()); >> >> Queue defQueue = QueueFactory.getDefaultQueue(); >> >> defQueue.add(taskOpt); >> >> }catch (Exception e) { >> >> System.out.println("CommonRpcServiceImpl.cancelTripEnquiry() >> >> "+e.getMessage()); >> >> } >> >> >> >> It always throws this exception >> >> >> >> CommonRpcServiceImpl.cancelTripEnquiry() >> >> java.io.NotSerializableException: >> >> com.google.gwt.user.server.rpc.impl.StandardSerializationPolicy >> >> >> >> I make sure that all the object being used here are serializable. >> >> >> >> >> >> Thanks in advance >> >> Deepak Singh >> > >> > >> > >> > >> > -- >> > Deepak Singh > > > > > -- > Deepak Singh -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.