Из раздела 4.9.7 спецификации EJB 3.2:
Один и тот же бизнес-интерфейс не может быть локальным и удаленным.
бизнес-интерфейс бина.
В качестве обходного пути можно использовать подинтерфейсы:
public interface MyInterface { /* all the methods */ }
public interface MyRemoteInterface extends MyInterface { /* empty */ }
@Stateless
@Remote(MyRemoteInterface.class)
@Local(MyInterface.class)
public class MyBean { /* ... */ }
Обратите внимание, что параметры и возвращаемые значения методов на удаленном интерфейсе будут передаваться по значению, но параметры и возвращаемые значения методов на локальном интерфейсе будут передаваться по ссылке.