0
私のエンキューコールでレトロフィットによって送信された生のjsonをチェックしたいと思います。ここに行く私のクリックイベントのコード:jsonがレトロフィットで送信されていることを確認してください
public void onClick(View v) {
ArrayList<Product> products = ((MenuAdapter)rvMenuProducts.getAdapter()).getOrderItens();
ArrayList<Item> orderItemList = new ArrayList<Item>();
for(Product p: products){
orderItemList.add(new Item(p));
}
EditText etCardNumber = (EditText) findViewById(R.id.et_card_number);
String cardNumber = etCardNumber.getText().toString();
if(GenericUtils.stringIsNotNullAndNotEmpty(cardNumber)){
NewOrder newOrder = new NewOrder(waiterId, establishmentId, cardNumber, orderItemList);
WaiterRequester.addOrder(newOrder, new Callback<AddOrderResultInfo>() {
@Override
public void onResponse(Call<AddOrderResultInfo> call, Response<AddOrderResultInfo> response) {
int a = 5;
Toast.makeText(context, "Pedido realizado com sucesso", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(Call<AddOrderResultInfo> call, Throwable t) {
int b = 5;
Toast.makeText(context, "VISH", Toast.LENGTH_SHORT).show();
}
});
}
else{
etCardNumber.setError("ERROOOOOOO");
}
}
私のリターンはブール値であるため、しかし、私は知らないことを、私は私のAPIを呼び出して、そして、私は私のAPIのいくつかの例外を取得していますどのようにそれをです私が郵便配達員を使ってリクエストを送ったとき、それは動作します!ここで
は郵便配達によって送られたJSONです:
{
"newOrder":
{
"idWaiter" : 1,
"idEstablishment": 6,
"cardNumber": "123",
"listItem": [{ "idProduct": 1, "quantity": 1 }]
}
}
そして、私のクラスNewOrderがある:
public class NewOrder {
public int idWaiter;
public long idEstablishment;
public String cardNumber;
public ArrayList<Item> listItem;
public NewOrder() {
}
public NewOrder(int idWaiter, long idEstablishment, String cardNumber, ArrayList<Item> listItem) {
this.idWaiter = idWaiter;
this.idEstablishment = idEstablishment;
this.cardNumber = cardNumber;
this.listItem = listItem;
}
public int getIdWaiter() {
return idWaiter;
}
public void setIdWaiter(int idWaiter) {
this.idWaiter = idWaiter;
}
public long getIdEstablishment() {
return idEstablishment;
}
public void setIdEstablishment(long idEstablishment) {
this.idEstablishment = idEstablishment;
}
public String getCardNumber() {
return cardNumber;
}
public void setCardNumber(String cardNumber) {
this.cardNumber = cardNumber;
}
public ArrayList<Item> getListItem() {
return listItem;
}
public void setListItem(ArrayList<Item> listItem) {
this.listItem = listItem;
}
}
とアイテム:
public class Item {
public long idProduct;
public int quantity;
public Item() {
}
public Item(Product p) {
this.setQuantity(p.getQuantity());
this.setIdProduct(p.getIdProduct());
}
public Item(int idProduct, int quantity) {
this.idProduct = idProduct;
this.quantity = quantity;
}
public long getIdProduct() {
return idProduct;
}
public void setIdProduct(long idProduct) {
this.idProduct = idProduct;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
}
EDIT:
それは、有用かもしれない、By Object is arrバックエンドでヌルとして動く
どうexaclty私はこれらのログを印刷することができますか? – guisantogui
上記のコードを使用すると、ログは自動的にlogcatに出力されます –
ここには印刷されませんでした: – guisantogui