Yeah, that one bugs everybody... the fact that the spec requires you to adhere to RMI-IIOP types, but does not include the details.
So, I have two points on this:
1) On the exam, you DO have to know that you are required to assume RMI-IIOP. But, when answering questions -- you can treat RMI-IIOP as though it were plain RMI over JRMP. In other words, if you know the rules for RMI, you'll be able to answer the questions correctly. WITH ONE EXCEPTION: you DO have to know about PortableRemoteObject.narrow() for the remote home stub.
2) But for the curious... the restrictions that RMI-IIOP adds over RMI over JRMP are quite subtle (although they could kill you if they came up)... I pulled this directly from the
RMI-IIOP programmer's guide:
* Don't inherit the same method name into a remote interface more than once from different base remote interfaces.
*Be careful when using names that differ only in case. The use of a type name and a variable of that type whose name differs from the type name only in case is supported. Most other combinations of names that differ only in case are not supported.
There are other restrictions, but I think these are really the two big issues that matter for EJB. But as I said, this is not on the exam
cheers,
Kathy