diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.classpath b/dev/io.openliberty.checkpoint_fat_appClientSupport/.classpath
new file mode 100755
index 000000000000..39fac45ab16e
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.classpath
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.project b/dev/io.openliberty.checkpoint_fat_appClientSupport/.project
new file mode 100755
index 000000000000..9f9de54dbce1
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.project
@@ -0,0 +1,23 @@
+
+
+ io.openliberty.checkpoint_fat_appClientSupport
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ bndtools.core.bndbuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+ bndtools.core.bndnature
+
+
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/bndtools.core.prefs b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/bndtools.core.prefs
new file mode 100644
index 000000000000..789fa99991ac
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/bndtools.core.prefs
@@ -0,0 +1,2 @@
+compileErrorAction=build
+eclipse.preferences.version=1
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.core.resources.prefs b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 000000000000..25d9425fe34e
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+#Ant properties
+#Automatically generated by the ant prepare.settings.files task
+eclipse.preferences.version=1
+encoding/=UTF-8
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.core.prefs b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000000..6fba0a1ed75f
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,289 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.codeComplete.argumentPrefixes=
+org.eclipse.jdt.core.codeComplete.argumentSuffixes=
+org.eclipse.jdt.core.codeComplete.fieldPrefixes=
+org.eclipse.jdt.core.codeComplete.fieldSuffixes=
+org.eclipse.jdt.core.codeComplete.localPrefixes=
+org.eclipse.jdt.core.codeComplete.localSuffixes=
+org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
+org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
+org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
+org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=18
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=2
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=2
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=18
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=2
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=18
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=18
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=18
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=18
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=20
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=4
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=false
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=false
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
+org.eclipse.jdt.core.formatter.comment.line_length=180
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=4
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=4
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=180
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=true
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
+org.eclipse.jdt.core.formatter.tabulation.char=space
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=true
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.ui.prefs b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 000000000000..c0003634609f
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,60 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=/**\n *\n * ${tags}\n *//**\n * ${tags}\n * ${see_to_target}\n *//**\n * ${tags}\n *//** *//**\n * ${tags}\n *//**\n * @param ${param} the ${bare_field_name} to set\n *//**\n * @return the ${bare_field_name}\n */${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}\n\n\n\n// ${todo} Auto-generated method stub\n${body_statement}${body_statement}\n// ${todo} Auto-generated constructor stubreturn ${field};${field} \= ${param};
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.make_local_variable_final=false
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=false
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=true
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/bnd.bnd b/dev/io.openliberty.checkpoint_fat_appClientSupport/bnd.bnd
new file mode 100644
index 000000000000..91b13f4c7c50
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/bnd.bnd
@@ -0,0 +1,37 @@
+#*******************************************************************************
+# Copyright (c) 2024 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# IBM Corporation - initial API and implementation
+#*******************************************************************************
+
+-include= ~../cnf/resources/bnd/bundle.props
+bVersion=1.0
+
+fat.project: true
+
+src:\
+ fat/src,\
+ test-applications/app.war/src,\
+ test-applications/appClient.jar/src
+
+
+-buildpath: \
+ io.openliberty.org.apache.commons.codec;version=latest,\
+ io.openliberty.org.apache.commons.logging;version=latest,\
+ com.ibm.websphere.javaee.annotation.1.1;version=latest,\
+ com.ibm.websphere.javaee.ejb.3.2;version=latest,\
+ com.ibm.websphere.javaee.servlet.3.0;version=latest,\
+ com.ibm.websphere.javaee.validation.1.1;version=latest,\
+ com.ibm.ws.com.meterware.httpunit.1.7;version=latest,\
+ com.ibm.ws.kernel.service;version=latest,\
+ com.ibm.ws.logging;version=latest,\
+ org.apache.httpcomponents:httpcore;strategy=exact;version=4.1.2,\
+ com.ibm.ws.kernel.boot.common;version=latest,\
+ com.ibm.websphere.javaee.cdi.2.0;version=latest
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/build.gradle b/dev/io.openliberty.checkpoint_fat_appClientSupport/build.gradle
new file mode 100644
index 000000000000..7fb75951ba8a
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/build.gradle
@@ -0,0 +1,14 @@
+/*******************************************************************************
+ * Copyright (c) 2020, 2024 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+addRequiredLibraries.dependsOn addJakartaTransformer
+
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/AppClientSupportTest.java b/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/AppClientSupportTest.java
new file mode 100755
index 000000000000..f7c76372dff0
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/AppClientSupportTest.java
@@ -0,0 +1,91 @@
+/*******************************************************************************
+ * Copyright (c) 2024 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+package com.ibm.ws.security.client.fat;
+
+import static org.junit.Assert.assertTrue;
+
+import java.util.List;
+
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
+import org.jboss.shrinkwrap.api.spec.JavaArchive;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TestName;
+import org.junit.runner.RunWith;
+
+import com.ibm.websphere.simplicity.ShrinkHelper;
+import com.ibm.websphere.simplicity.ShrinkHelper.DeployOptions;
+import com.ibm.websphere.simplicity.log.Log;
+
+import componenttest.custom.junit.runner.FATRunner;
+import componenttest.topology.impl.LibertyClient;
+import componenttest.topology.impl.LibertyClientFactory;
+import componenttest.topology.impl.LibertyServer;
+import componenttest.topology.impl.LibertyServerFactory;
+import componenttest.topology.utils.HttpUtils;
+
+@RunWith(FATRunner.class)
+public class AppClientSupportTest {
+ private static Class> c = AppClientSupportTest.class;
+
+ @Rule
+ public TestName testName = new TestName();
+
+ private static LibertyClient client = LibertyClientFactory.getLibertyClient("clientInjection");
+ private static LibertyServer server = LibertyServerFactory.getLibertyServer("serverInjection");
+ public static final String APP_NAME = "app.war";
+
+ @BeforeClass
+ public static void beforeClass() throws Exception {
+ WebArchive appWar = ShrinkHelper.defaultApp(server, APP_NAME, new DeployOptions[] { DeployOptions.OVERWRITE }, "app");
+ ShrinkHelper.addDirectory(appWar, "test-applications/app.war/resources");
+ FATSuite.copyAppsAppToDropins(server, APP_NAME);
+
+ JavaArchive appClientJAR = ShrinkHelper.buildJavaArchive("appClient.jar", "appClient");
+ EnterpriseArchive appClientEAR = ShrinkWrap.create(EnterpriseArchive.class, "appClient.ear");
+ appClientEAR.addAsModule(appClientJAR);
+ ShrinkHelper.addDirectory(appClientEAR, "test-applications/appClient.ear/resources");
+
+ ShrinkHelper.exportToClient(client, "dropins", appClientEAR, new DeployOptions[] { DeployOptions.OVERWRITE });
+
+ server.startServer();
+
+ HttpUtils.findStringInUrl(server, "app/test", "TEST BEAN = 4");
+
+ client.startClient();
+ }
+
+ @AfterClass
+ public static void afterClass() throws Exception {
+ server.stopServer();
+
+ }
+
+ private void check() throws Exception {
+ String methodName = testName.getMethodName();
+ List strings = client.findStringsInCopiedLogs(methodName + "-PASSED");
+ Log.info(c, methodName, "Found in logs: " + strings);
+ assertTrue("Did not find expected method message " + methodName, strings != null && strings.size() >= 1);
+ }
+
+ @Test
+ public void injectTestBean() throws Exception {
+ check();
+ }
+
+}
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/FATSuite.java b/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/FATSuite.java
new file mode 100755
index 000000000000..719a33c0b4a3
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/fat/src/com/ibm/ws/security/client/fat/FATSuite.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2024 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+package com.ibm.ws.security.client.fat;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+import com.ibm.websphere.simplicity.RemoteFile;
+
+import componenttest.custom.junit.runner.AlwaysPassesTest;
+import componenttest.topology.impl.LibertyFileManager;
+import componenttest.topology.impl.LibertyServer;
+
+@RunWith(Suite.class)
+@SuiteClasses({
+ AlwaysPassesTest.class,
+ AppClientSupportTest.class
+
+})
+public class FATSuite {
+
+ /*
+ * On Windows, always run the default/empty/EE7/EE8 tests.
+ * On other Platforms:
+ * - if Java 8, run default/empty/EE7/EE8 tests.
+ * - All other Java versions
+ * -- If LITE mode, run EE9
+ * -- If FULL mode, run EE10
+ */
+// @ClassRule
+// public static RepeatTests repeat = LargeProjectRepeatActions.createEE9OrEE10Repeats();
+
+ public static void copyAppsAppToDropins(LibertyServer server, String appName) throws Exception {
+ RemoteFile appFile = server.getFileFromLibertyServerRoot("apps/" + appName);
+ LibertyFileManager.createRemoteFile(server.getMachine(), server.getServerRoot() + "/dropins").mkdir();
+ appFile.copyToDest(server.getFileFromLibertyServerRoot("dropins"));
+ }
+}
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/bootstrap.properties b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/bootstrap.properties
new file mode 100755
index 000000000000..8449c0f2d339
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/bootstrap.properties
@@ -0,0 +1,15 @@
+###############################################################################
+# Copyright (c) 2020 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# IBM Corporation - initial API and implementation
+###############################################################################
+
+bootstrap.include=../../servers/../servers/../servers/./testports.properties
+com.ibm.ws.timedexit.timetolive=120000
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/client.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/client.xml
new file mode 100755
index 000000000000..fb147d331654
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/clients/clientInjection/client.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+ javaeeClient-8.0
+ appSecurityClient-1.0
+
+
+
+
+
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/bootstrap.properties b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/bootstrap.properties
new file mode 100755
index 000000000000..533377193636
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/bootstrap.properties
@@ -0,0 +1,25 @@
+###############################################################################
+# Copyright (c) 2020 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# IBM Corporation - initial API and implementation
+###############################################################################
+
+bootstrap.include=../testports.properties
+
+com.ibm.ws.logging.trace.specification=*=info=enabled:\
+com.ibm.ws.security.*=all=enabled:\
+com.ibm.ws.ssl=all:\
+com.ibm.ws.transport.iiop.*=all
+
+
+com.ibm.ws.logging.max.file.size=0
+#ds.loglevel=debug
+websphere.java.security.exempt=true
+io.openliberty.checkpoint.allowed.features=ejbRemote-3.2,ejbPersistentTimer-3.2,ejb-3.2,appClientSupport-1.0,ejbHome-3.2
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/server.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/server.xml
new file mode 100755
index 000000000000..4e9171250583
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/publish/servers/serverInjection/server.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+ appClientSupport-1.0
+ cdi-2.0
+ servlet-4.0
+ ejb-3.2
+
+
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/resources/WEB-INF/beans.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/resources/WEB-INF/beans.xml
new file mode 100644
index 000000000000..db2fdaa80225
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/resources/WEB-INF/beans.xml
@@ -0,0 +1,7 @@
+
+
+
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestBean.java b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestBean.java
new file mode 100644
index 000000000000..e64178aea13a
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestBean.java
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2024 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package app;
+
+import javax.enterprise.context.ApplicationScoped;
+
+@ApplicationScoped
+public class TestBean {
+
+ public int add(int x, int y) {
+ return x + y;
+ }
+}
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestServlet.java b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestServlet.java
new file mode 100644
index 000000000000..dadce773fc75
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/app.war/src/app/TestServlet.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2017 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package app;
+
+import java.io.IOException;
+
+import javax.inject.Inject;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+@WebServlet("/test")
+public class TestServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ @Inject
+ TestBean testBean;
+
+ public TestServlet() {
+ super();
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ response.getOutputStream().println("TEST BEAN = " + testBean.add(2, 2));
+ }
+}
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/application.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/application.xml
new file mode 100755
index 000000000000..0c9bba98fc3d
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/application.xml
@@ -0,0 +1,18 @@
+
+
+
+ appClientEAR
+
+ appClient.jar
+
+
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/permissions.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/permissions.xml
new file mode 100644
index 000000000000..e63f5b91d486
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.ear/resources/META-INF/permissions.xml
@@ -0,0 +1,26 @@
+
+
+
+
+ java.util.PropertyPermission
+ *
+ read
+
+
+
+ java.io.FilePermission
+ ALL FILES
+ read,write
+
+
+
+
+ java.lang.RuntimePermission
+ *
+
+
+
\ No newline at end of file
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/MANIFEST.MF b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/MANIFEST.MF
new file mode 100644
index 000000000000..e282fe05701c
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/MANIFEST.MF
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+Main-Class: appClient.TestAppClient
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/application-client.xml b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/application-client.xml
new file mode 100755
index 000000000000..180893ae5cc6
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/resources/META-INF/application-client.xml
@@ -0,0 +1,15 @@
+
+
+
+ appClientJAR
+
diff --git a/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/src/appClient/TestAppClient.java b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/src/appClient/TestAppClient.java
new file mode 100644
index 000000000000..0b4bd41562e4
--- /dev/null
+++ b/dev/io.openliberty.checkpoint_fat_appClientSupport/test-applications/appClient.jar/src/appClient/TestAppClient.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2024 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package appClient;
+
+import javax.naming.InitialContext;
+
+import app.TestBean;
+
+public class TestAppClient {
+
+ public static void main(String[] args) throws Exception {
+ System.out.println("main - entry");
+ InitialContext ctx = new InitialContext();
+
+ // Lookup the TestBean
+ TestBean testBean = (TestBean) ctx.lookup("java:global/app/app/TestBean");
+
+ if (checkBean(testBean))
+ System.out.println("injectTestBean-PASSED");
+
+ System.out.println("main - exit");
+ }
+
+ private static boolean checkBean(TestBean testBean) {
+ return testBean != null && testBean.add(4, 8) == 12;
+ }
+
+}