{"ref":"artifact:sap-samples-event-mesh-client-java-samples","page":"/artifacts/sap-samples-event-mesh-client-java-samples","json":"/artifacts/sap-samples-event-mesh-client-java-samples.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-event-mesh-client-java-samples","name":"SAP-samples/event-mesh-client-java-samples","artifact_type":"sample","ecosystem":"btp","use_as":"starting-point","domain":"integration-and-messaging","origin_ring":"sap-official","description":{"one_line":"Two Spring Boot applications showing point-to-point and publish-subscribe messaging against SAP [Event Mesh](artifact:btp-event-mesh) through its Java JMS client.","short":"Spring Boot apps messaging over SAP Event Mesh's Java JMS client","what_it_solves":"Reaching SAP [Event Mesh](artifact:btp-event-mesh) from Java means going through three separate emjapi dependencies — the Spring service connector, the core connection factory, and the JMS extension — and this shows the client wired up two ways. `emjapi-samples-jms-p2p` sends and receives messages on a queue through REST endpoints on a Spring Boot app; `emjapi-samples-jms-pubsub` does the same for a topic, plus a REST endpoint for reading from a queue. Both run on SAP BTP, Cloud Foundry, bound to an Event Mesh service instance created with a service descriptor supplied in each sample's own `config` folder. It stops at the two messaging patterns: management of queues and subscriptions themselves is the separate Messaging Management API, only linked to from here."},"links":{"repo":"https://github.com/SAP-samples/event-mesh-client-java-samples"},"type_properties":{"form":{"value":"snippets","sources":[{"url":"https://github.com/SAP-samples/event-mesh-client-java-samples","title":"SAP-samples/event-mesh-client-java-samples — README","checked":"2026-10-18","quote":"This sample demonstrates Event Mesh with Java, using combinations of vanilla Java, Spring, and JMS."}]}},"identity":{"license":"Apache-2.0"},"maintainers":["actor:sap-samples"],"source_available":true,"demonstrates":["capability:event-mesh"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-13"},"contributors":["actor:ademvural","actor:ajinkyapatil8190","actor:btbernard","actor:gehlalex","actor:jonathanbaker7","actor:linastehle","actor:mibo","actor:mortenri","actor:mortenrie"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"10 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, not archived"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"fair","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"README 9 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":19,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":19,"forks":17,"open_issues":3,"archived":false,"pushed_at":"2026-10-15","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2018-07-10T20:09:28Z","open_prs":1,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":9713,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2018-08-03","last_commit":"2026-10-15","commits":53,"contributors":10,"readme_path":"README.adoc","readme_sha":"b23b5f0feb067e2ebdeec26b9a1c444a568b3628","repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:sap-samples","name":"SAP Samples","json":"/actors/sap-samples.json"}],"contributors":[{"ref":"actor:ademvural","name":"ademvural","json":"/actors/ademvural.json"},{"ref":"actor:ajinkyapatil8190","name":"Ajinkya Patil","json":"/actors/ajinkyapatil8190.json"},{"ref":"actor:btbernard","name":"Brian Bernard","json":"/actors/btbernard.json"},{"ref":"actor:gehlalex","name":"gehlalex","json":"/actors/gehlalex.json"},{"ref":"actor:jonathanbaker7","name":"Jonathan Baker","json":"/actors/jonathanbaker7.json"},{"ref":"actor:linastehle","name":"linastehle","json":"/actors/linastehle.json"},{"ref":"actor:mibo","name":"Michael Bolz","json":"/actors/mibo.json"},{"ref":"actor:mortenrie","name":"Morten","json":"/actors/mortenrie.json"},{"ref":"actor:mortenri","name":"Morten Riedel","json":"/actors/mortenri.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}