]
Panagiotis Sotiropoulos commented on WFLY-13360:
------------------------------------------------
Adding a multi-version testcase :
Log WARN when EJB does not implement Business interface and is not
compliant with EJB 3.2 spec
----------------------------------------------------------------------------------------------
Key: WFLY-13360
URL:
https://issues.redhat.com/browse/WFLY-13360
Project: WildFly
Issue Type: Bug
Reporter: Panagiotis Sotiropoulos
Assignee: Panagiotis Sotiropoulos
Priority: Major
From the specification every business interface need to be declared explicitly as a
business interface by @Remote or @Local annotation or deployment descriptor.
EJB 3.2 specification
4.9.7 Session Bean’s Business Interface
- The bean class must implement the interface or the interface must be designated as a
local or remote business interface of the bean by means of the Local or Remote annotation
or in the deployment descriptor.
- All business interfaces must be explicitly designated as such if any of the following
is true:
- the bean exposes a no-interface view
- any interface of the bean class is explicitly designated as a business interface of
the bean by either of the following means:
- using the Local or Remote annotation with a non-empty value on the bean class
- using the Local or Remote annotation on the interface
- in the deployment descriptor
If EJB A implements I and EJB B extends A , EJB B must also declare it implements I in
order to be spec compliant:
public interface I {...}
@Stateless
public class A implements I {...}
@Stateless
public class B extends A {...}