Check server.log: expected two lines containing: Intercepted v1.MyEjbImpl and Intercepted v2.MyEjbImpl
but actually only one line (either containing v1.MyEjbImpl or v2.MyEjbImpl) exists.
Check out Maven test project from GitHub:
https://github.com/wrungel/bugs/tree/master/ejb-names-interceptor
Build the project with mvn clean install
Deploy EAR file ( ear/target/ejb-names-interceptor.ear ) to Wildfly
Call the Webservice http://localhost:8080/MyWebservice/v1/MyEjbImpl?wsdl
Call the Webservice http://localhost:8080/MyWebservice/v2/MyEjbImpl?wsdl
Check server.log :
expected two lines containing: Intercepted v1.MyEjbImpl and Intercepted v2.MyEjbImpl
but actually only one line (either containing v1.MyEjbImpl or v2.MyEjbImpl ) exists.
Rename Java class names of the EJBs so all names are unique.
Also tried to override the names of EJBs according to JSR 318 (EJB 3.1) spec:
<bean-name> is the ejb-name of the enterprise bean. For enterprise beans defined via annotation,
it defaults to the unqualified name of the session bean class, unless specified in the contents of the
Stateless/Stateful/Singleton annotation name() attribute.
For enterprise beans defined via ejb-jar.xml, it’s specified in the <ejb-name> deployment descriptor element.)
without success:
Overriding the EJB names of the beans in ejb-jar.xml
Overriding the EJB names of the beans using @Stateless(name="...")
Rename Java class names of the EJBs so all names are unique .
Also tried to override the names of EJBs according to JSR 318 (EJB 3.1) spec: <bean-name> is the ejb-name of the enterprise bean. For enterprise beans defined via annotation,
it defaults to the unqualified name of the session bean class, unless specified in the contents of the
Stateless/Stateful/Singleton annotation name() attribute.
For enterprise beans defined via ejb-jar.xml, it’s specified in the <ejb-name> deployment descriptor element.)
without success:
Overriding the EJB names of the beans in ejb-jar.xml
Overriding the EJB names of the beans using @Stateless(name="...")