when you use Shareable Interface, you only can share Object Shareable (implement Shareable Interface) or primitive type. So, you cannot share primitive array because Firewall will deny this access.That is not correct. You can pass data through a global object as well. As mentioned by Sebastien, the APDU buffer is a global object.
To receive data from the server applet: call with apdu buffer passing the offset to copy into and return the length of the data copied into the buffer.
server.setData(apduBuffer, dataOffset, dataLength);
short len = server.getData(apduBuffer, dataOffset);
When I select my client applet, I receive a status word 6F00 when I want to exchange byte arrayAlso, the 6F00 status word is from an unhandled exception. From memory, you will be getting a SecurityException so you could handle the exception and return a meaningful exception (or debug the issue).