The issue seems to be with recover tag not using the parent security domain and explicitly needing "recover-credential" element under the "recovery" element. The "jboss-as-resource-adapters_1_1.xsd" file has the following information about the recover-credentials tag
<xs:element name="recover-credential" type="credentialType" minOccurs="0" maxOccurs="1"> <xs:annotation> <xs:documentation> <![CDATA[[ Specifies the security options used when creating a connection during recovery. Note: if this credential are not specified the security credential are used for recover too ]]> </xs:documentation> </xs:annotation> </xs:element>
This implies that if the recover credentials are not specified then security credentials should be used for recover and I don't need to specify it. This seems to be broken in JBoss EAP 6.1.0 (I am using Alpha but 6.1.0final also has the same issue); and was working in AS 7.1.1 final.
Currently I am able to have the recover plugin getting called correctly by adding the recover-credential element under recover element.
<recovery no-recovery="false"> <recover-credential> <security-domain>****SecurityDomain</security-domain> </recover-credential> <recover-plugin class-name="***.*RecoveryPlugin"/> </recovery>