It seems that the method-params for container transactions are not matched correctly if the contain arrays. I've got an EJB "First" that calls another EJB "Second". Both have the same interface containing a method void test(String[]); If I define the transaction attribute NEVER including method-params for "First" and without params for "Second" the test fails with JBAS014163: Transaction present on server in Never call (EJB3 13.6.2.6) I define the container transaction like this: <container-transaction> <method> <ejb-name>FirstWithParams</ejb-name> <method-intf>Local</method-intf> <method-name>test</method-name> <method-params> <method-param>java.lang.String[]</method-param> </method-params> </method> <method> <ejb-name>FirstWithParams</ejb-name> <method-intf>Local</method-intf> <method-name>test</method-name> <method-params> <method-param>java.lang.String</method-param> </method-params> </method> <method> <ejb-name>FirstWithParams</ejb-name> <method-intf>Local</method-intf> <method-name>test</method-name> <method-params> <method-param>int</method-param> </method-params> </method> <method> <ejb-name>Second</ejb-name> <method-intf>Local</method-intf> <method-name>test</method-name> </method> <trans-attribute>Never</trans-attribute> </container-transaction> I will attach a test case that fails at the call to test(String[]) but successfully call test(String) and test(int).
Verified with EAP 6.4.12.CP.CR1
Retroactively bulk-closing issues from released EAP 6.4 cummulative patches.