Commit 66428269 by Patryk Czarnik

RestServer jeszcze bardziej ostateczna wersja

parent 3ce733df
...@@ -71,7 +71,7 @@ public class ROrder { ...@@ -71,7 +71,7 @@ public class ROrder {
// wyślemy przekierowanie pod adres tego klienta. // wyślemy przekierowanie pod adres tego klienta.
// To jest lepsze z punktu widzenia "dobrych praktyk REST". // To jest lepsze z punktu widzenia "dobrych praktyk REST".
@GET @GET
@Path("/{id:[0-9][0-9]*}/customer") @Path("/{id:[0-9]+}/customer")
public Response getCustomer(@PathParam("id") Integer orderId) throws DBException, RecordNotFound { public Response getCustomer(@PathParam("id") Integer orderId) throws DBException, RecordNotFound {
try(DBConnection db = DBConnection.open()) { try(DBConnection db = DBConnection.open()) {
OrderDAO orderDAO = db.orderDAO(); OrderDAO orderDAO = db.orderDAO();
......
package sklep.rest; package sklep.rest;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.net.URI;
import java.util.List; import java.util.List;
import jakarta.ws.rs.Consumes; import jakarta.ws.rs.Consumes;
...@@ -11,6 +12,9 @@ import jakarta.ws.rs.PUT; ...@@ -11,6 +12,9 @@ import jakarta.ws.rs.PUT;
import jakarta.ws.rs.Path; import jakarta.ws.rs.Path;
import jakarta.ws.rs.PathParam; import jakarta.ws.rs.PathParam;
import jakarta.ws.rs.Produces; import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.UriInfo;
import sklep.db.DBConnection; import sklep.db.DBConnection;
import sklep.db.DBException; import sklep.db.DBException;
import sklep.db.ProductDAO; import sklep.db.ProductDAO;
...@@ -46,11 +50,13 @@ public class RProduct { ...@@ -46,11 +50,13 @@ public class RProduct {
// POST potrafi "dodać rekord do katalogu". // POST potrafi "dodać rekord do katalogu".
@POST @POST
@Consumes({"application/json", "application/xml"}) @Consumes({"application/json", "application/xml"})
public void saveProduct(Product product) throws DBException { public Response saveProduct(Product product, @Context UriInfo uriInfo) throws DBException {
try(DBConnection db = DBConnection.open()) { try(DBConnection db = DBConnection.open()) {
ProductDAO productDAO = db.productDAO(); ProductDAO productDAO = db.productDAO();
productDAO.save(product); productDAO.save(product);
db.commit(); db.commit();
URI uri = uriInfo.getAbsolutePathBuilder().path("/{id}").build(product.getProductId());
return Response.created(uri).build();
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment