First, I want to say God Bless Middlegen!, and kudos to Aslak and the other developers. This will be an enormous time saver if I can get it to do what I need. When I configure middlegen to generate remote interfaces (viewtype="remote" in the cmp20 subtask), it generates create methods which take local interfaces as parameters. For example: a Choice belongs to a Scale, and the middlegen-erated create method in ChoiceBean looks like this: public foo.interfaces.ChoicePK ejbCreate( int number, java.lang.String text, boolean na, icoachplus.interfaces.ScaleLocal scale ) Resulting in an xdoclet-generated *remote* interface that looks like this: public foo.interfaces.Choice create(int number , java.lang.String text , boolean na , icoachplus.interfaces.ScaleLocal scale) This causes two issues. First, since it didn't generate any local interfaces, it won't compile. I can make it compile by using viewtype="both", but the real issue in my mind is: what good is a create method on a remote interface that takes local interfaces as parameters? A remote client of course does not have access to local interfaces. I love the CMR feature introduced in EJB 2.0, so I want to use local interfaces where I can, but I'd really like to be able to create objects with the remote interfaces where running in the same JVM is not an option. Thanks, Russell ^){([ ʋy֛ry.+r Xy+hTD8Z׀!y$yj{0z)i^I"y˫ܧyli0 --y&yxmYu^j)b b٢u^lqzm?X(~zwXb?']