From your original post it seems like you are creating a new instance so you need to add a create URL to your model. Like I said before, can.Model will use the model's name to guess the URLs if you don't specify them. In your case all you ahve specified is an update URL which is only used if the instance already exists (has an id attribute).
Your model should look like this:
- P.Model('Product.Metadata', {
- attributes : {
- cast : 'P.Model.List'
- },
- update : "/product/save-meta/",
- create: "/product/save-meta/"
- }, {});