Bug 1109691

Summary: Recovery does not work when no credentials are specified for recovery element in RA configuration
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Ondrej Chaloupka <ochaloup>
Component: JCAAssignee: Jesper Pedersen <jpederse>
Status: CLOSED NOTABUG QA Contact: Martin Simka <msimka>
Severity: medium Docs Contact: Russell Dickenson <rdickens>
Priority: unspecified    
Version: 6.3.0CC: hhovsepy, jmesnil, jochen.riedlinger, lcosti, mnovak, ochaloup, patrick.moeller-knorr, smumford
Target Milestone: ---Keywords: Reopened
Target Release: EAP 6.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Known Issue
Doc Text:
In this release of JBoss EAP 6, when security credentials are not specified in the XML for the recovery element, then recovery does not start for particular JMS resource. This behavior is not intended as a connection should be created with "no credentials" (or something similar). This issue is expected to be resolved in a future release of the product.
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-09-03 13:08:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Ondrej Chaloupka 2014-06-16 07:21:44 UTC
When security credentials are not specified in xml recovery element then recovery does not start for particular jms resource. But when no credentials are used then connection should be created with "no credentials" (or create connection with null or something similar).

It's meant that when RA config like this will be used then connection should be created with 'no credentials':
<recovery>
 <recover-credential/>
</recovery>

It's documented in xsd template as well
<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 issue comes from the question on stack overflow forum 
http://stackoverflow.com/questions/24010124/how-to-make-a-dummy-security-domain-in-jboss-eap-6-2

Comment 1 Jesper Pedersen 2014-09-02 19:50:29 UTC
Fixed as part of JBJCA-1181

Comment 2 Ondrej Chaloupka 2014-09-03 12:10:00 UTC
Fix tested on 6.3.1.CP.CR1.

Instead of having possibility to run recovery without credentials you get error message to log:
WARN  [org.jboss.as.connector.deployers.RaXmlDeployer] (MSC service thread 1-8) IJ020016: Missing <recovery> element. XA recovery disabled for: java:/JmsXA

In general. This issue is meant to be fixed in 6.4.0 so set target version appropriately.

Comment 3 Ondrej Chaloupka 2014-09-03 12:10:51 UTC
The expected behavior came from customer case:
https://access.redhat.com/support/cases/01090234/

Comment 4 Jesper Pedersen 2014-09-03 12:19:10 UTC
A Subject instance is required by spec

Comment 5 Ondrej Chaloupka 2014-09-03 13:04:04 UTC
Hi Jesper,

would you be so kind and point me to the place where it's mentioned in spec? I'm not able to find such note, neither in jca nor jms spec.

If we consider e.g. HornetQ settings there is no need to define recovery credentials. In other words you can run recovery without authentication seamlessly.

I'm opening this bz once again as I think that it's a real issue.

Thanks
Ondra

Comment 6 Jesper Pedersen 2014-09-03 13:08:15 UTC
JCA 1.7: 6.5.3.5

Comment 8 JBoss JIRA Server 2014-09-12 13:41:35 UTC
Ivo Studensky <istudens> updated the status of jira JBJCA-1181 to Reopened

Comment 9 JBoss JIRA Server 2014-09-12 13:49:16 UTC
Jesper Pedersen <jpederse> updated the status of jira JBJCA-1181 to Closed