Bug 797746

Summary: HttpProtocol should use default keystore location if not specified
Product: [JBoss] JBoss Enterprise SOA Platform 5 Reporter: Martin Weiler <mweiler>
Component: JBossESBAssignee: Nobody <nobody>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5.2.0 GACC: soa-p-jira
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Enhancement
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Martin Weiler 2012-02-27 08:16:40 UTC
Description of problem:
Using HttpRouter to connect to https:// requires to specify information about the ssl key. If the keystore location is not explicitly defined, '/keystore' is used as default location.

This default location should be changed to use the default JRE keystore location - ${JAVA_HOME}/lib/security/cacerts


Version-Release number of selected component (if applicable):
JBossESB 4.10

How reproducible:
Always

Steps to Reproduce:
1. Set up HttpRouter with https:// target endpoint
2. Don't explicitly  set the "keystore" property
  
Actual results:
Initialization fails:

Caused by: org.jboss.soa.esb.ConfigurationException: Failed to locate keystore '/keystore'.
        at org.jboss.soa.esb.http.configurators.HttpProtocol.getKeyMaterial(HttpProtocol.java:200)
        at org.jboss.soa.esb.http.configurators.HttpProtocol.configure(HttpProtocol.java:94)
        at org.jboss.soa.esb.http.HttpClientFactory.createHttpClient(HttpClientFactory.java:84)
        at org.jboss.soa.esb.actions.routing.http.HttpRouter.<init>(HttpRouter.java:113)


Expected results:
Initialization succeeds by using the default keystore location. An INFO message could inform the user that the default keystore is used.