C++ server send Capn Object to JavaClient like this capnp::MallocMessageBuilder message; Info::Builder info = message.initRoot<Info>(); info.setId(123); kj::ArrayPtr<const kj::ArrayPtr<const capnp::word>> segments = message.getSegmentsForOutput();
then I convert the segments object to char* send to java_client by proto rpc_call (bytes field) Then In java_client, I do like this to read the capn object com.google.protobuf.ByteString capn_object_bytes = response.getCapnObject() SegmentReader segment = new SegmentReader(capn_object_bytes.asReadOnlyByteBuffer(), null); AnyPointer.Reader any = new AnyPointer.Reader(segment, 0, 64*1024*1024); Info.Reader info = any.getAs(Info.factory); System.out.println("Id:" + info.getId()); run java_cliet ,happend error like this : Exception in thread "main" java.lang.NullPointerException at org.capnproto.WireHelpers.readStructPointer(WireHelpers.java:918) at org.capnproto.StructFactory.fromPointerReaderRefDefault(StructFactory.java:34) at org.capnproto.StructFactory.fromPointerReader(StructFactory.java:41) at org.capnproto.StructFactory.fromPointerReader(StructFactory.java:24) at org.capnproto.AnyPointer$Reader.getAs(AnyPointer.java:56) -- You received this message because you are subscribed to the Google Groups "Cap'n Proto" group. To unsubscribe from this group and stop receiving emails from it, send an email to capnproto+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/capnproto/081ab20b-5eae-43d5-a4fc-8230ef39d4a5%40googlegroups.com.