Du serialisierst Dein Event und schickst es über die Leitung an die Ziel-URL.
Ein Beispiel mit JSON-P dürfte grob wie folgt aussehen (ungetestet, kann Fehler enthalten):
[code=Java]
public class Event {
final String orderId;
final String customerId;
public Event(String orderId, String customerId) {
this.orderId = orderId;
this.customerId = customerId;
}
}
[/code]
Serverseite:
[code=Java]
@Path("webhooks")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public class Webhooks {
@Path("ordercreated")
@POST
public Response orderCreated(JsonObject json) {
Event event = new Event(json.getString("order-id"), json.getString("customer-id"));
// mach etwas mit dem event
return Response.ok();
}
}
[/code]
Clientseite:
[code=Java]
JsonObject event = Json.createJsonObjectBuilder()
.add("order-id", orderId)
.add("customer-id", customerId)
.build();
Client client = ClientBuilder.client();
WebTarget target = client.target("http://www.mydomain.com/webhhook/ordercreated");
Response response = target.request().post(Entity.json(event.toString()));
// behandle response
[/code]