Skip to content

Commit eb434fc

Browse files
committed
Merge branch 'wdt-807' into 'main'
Fix NPE when not enough information is specified RCUDbinfo See merge request weblogic-cloud/weblogic-deploy-tooling!1561
2 parents 8dd2f52 + 947e464 commit eb434fc

File tree

2 files changed

+32
-15
lines changed

2 files changed

+32
-15
lines changed

core/src/main/python/wlsdeploy/tool/create/atp_helper.py

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ def set_ssl_properties(xml_doc, atp_creds_path, keystore_password, truststore_pa
2525
props = collection.getElementsByTagName("propertySet")
2626

2727
keystore, keystore_type, truststore, truststore_type = fix_store_type_and_default_value(keystore, keystore_type,
28-
truststore, truststore_type)
28+
truststore, truststore_type, truststore_password,
29+
keystore_password)
2930

3031
for prop in props:
3132
if prop.getAttribute('name') == 'props.db.1':
@@ -55,21 +56,34 @@ def set_ssl_properties(xml_doc, atp_creds_path, keystore_password, truststore_pa
5556
file_handle.close()
5657

5758

58-
def fix_store_type_and_default_value(keystore, keystore_type, truststore, truststore_type):
59+
def fix_store_type_and_default_value(keystore, keystore_type, truststore, truststore_type, truststore_pw, keystore_pw):
5960
# historical reason atp does not need these inputs by default and it uses JKS
6061
# set the default and return it
6162

62-
if keystore is None:
63-
if keystore_type == 'SSO':
64-
keystore = 'cwallet.sso'
65-
else:
66-
keystore = 'keystore.jks'
63+
# If there is password and type not set, set it to JKS
64+
65+
if keystore_pw is not None and keystore_type is None:
66+
keystore_type = 'JKS'
67+
68+
if truststore_pw is not None and truststore_type is None:
69+
truststore_type = 'JKS'
70+
71+
# If both type and store are not set, default to SSO
72+
if keystore_type is None and keystore is None:
73+
keystore_type = 'SSO'
74+
keystore = 'cwallet.sso'
75+
76+
if truststore_type is None and truststore is None:
77+
truststore_type = 'SSO'
78+
truststore = 'cwallet.sso'
79+
80+
# If no store specify for JKS type
81+
if keystore_type == 'JKS' and keystore is None:
82+
keystore = 'keystore.jks'
83+
84+
if truststore_type == 'JKS' and truststore is None:
85+
truststore = 'truststore.jks'
6786

68-
if truststore is None:
69-
if truststore_type == 'SSO':
70-
truststore = 'cwallet.sso'
71-
else:
72-
truststore = 'truststore.jks'
7387

7488
return keystore, keystore_type, truststore, truststore_type
7589

core/src/main/python/wlsdeploy/tool/create/domain_creator.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,8 @@ def __run_rcu(self):
303303
truststore_type = rcu_db_info.get_truststore_type()
304304
keystore_type = rcu_db_info.get_keystore_type()
305305
keystore, keystore_type, truststore, truststore_type = atp_helper.fix_store_type_and_default_value(keystore,
306-
keystore_type, truststore, truststore_type)
306+
keystore_type, truststore, truststore_type,
307+
truststore_pwd, keystore_pwd)
307308

308309

309310
self._set_rcu_ssl_args_properties(ssl_conn_properties, rcu_db_info, keystore, keystore_type, truststore,
@@ -1279,7 +1280,8 @@ def __set_atp_standard_conn_properties(self, datasource_name, tns_admin, trustst
12791280
truststore_type, keystore_pwd, keystore_type, keystore):
12801281
location = deployer_utils.get_jdbc_driver_params_properties_location(datasource_name, self.aliases)
12811282
keystore, keystore_type, truststore, truststore_type = atp_helper.fix_store_type_and_default_value(keystore,
1282-
keystore_type, truststore, truststore_type)
1283+
keystore_type, truststore, truststore_type,
1284+
truststore_pwd, keystore_pwd)
12831285

12841286
properties_set = []
12851287
self.__set_connection_property_info(location, DRIVER_PARAMS_KEYSTORE_PROPERTY, self.__get_store_path(tns_admin,
@@ -1668,7 +1670,8 @@ def get_atp_standard_conn_properties(self, tns_admin, truststore, truststore_pwd
16681670
truststore_type, keystore_pwd, keystore_type, keystore):
16691671

16701672
keystore, keystore_type, truststore, truststore_type = atp_helper.fix_store_type_and_default_value(keystore,
1671-
keystore_type, truststore, truststore_type)
1673+
keystore_type, truststore, truststore_type,
1674+
truststore_pwd, keystore_pwd)
16721675

16731676
properties_set = []
16741677

0 commit comments

Comments
 (0)