call-by-reference = true не соответствует спецификации EJB.
Целью удаленных EJB-компонентов было обеспечение прозрачности местоположения.Другими словами, если целевой EJB находится в другой JVM, то очевидно, что данные должны каким-то образом копироваться в эту JVM, поэтому для согласованности также копируются вызовы EJB в той же JVM.Если вызовы EJB в той же JVM не были скопированы, то вызывающий / вызываемый не будет знать, например, нужно ли им защищенно копировать ArrayList.Всегда копируя, эта неоднозначность устраняется, но за счет производительности.
Если вы можете полностью доверять всем клиентам и EJB-компонентам в одной JVM и при необходимости установить соглашение для копирования данных, то вы можете включить вызов-by-reference = true.