-2
我必须从Flex调用Java中的方法,它使用JSON并将信息保存在数据库中。当我从JSP调用它时,它接受输入,但是当我从Flex应用程序调用它时,它给了我错误 “服务器拒绝此请求,因为请求实体的格式不是所请求方法的请求资源支持的格式”服务器拒绝了这个请求,因为请求实体的格式不被所请求的资源所请求的资源所支持。Flex
以下是我的Flex示例代码。
var p:Object = new Object();
p.firstName = 'Mary';
p.lastName = 'Thomas';
p.gender = 'Female';
var httpServ:HttpService = new HttpService();
httpServ.url ="http://localhost/samplewebservice/myPerson/insert";
httpServ.useProxy = false;
httpServ.method = "POST"
httpServ.headers = {Accept: 'application/x-www-form-urlencoded'}
httpServ.contentType = "application/x-www-form-urlencoded";
var jd:JSONEncoder = new JSONEncoder(p);
var s:String = jd.getString();
httpServ.send(s);
请让我知道它出错的地方。在此先感谢
我的服务代码
@POST
@Path("/insert")
@consumes(MediaType.APPLICATION_JSON)
@RequestMapping(value = "/insert")
public void save(@RequestBody Person person)throws Exception{
try{
myservice.insert(person);
}
catch(Exception e)
{
e.printStacktrace();
}
}
Jileni嗨。感谢您的快速回复。我修改了像urs这样的代码。如果它表示“客户端发送的请求在语法上不正确。” –
这是一个请求映射错误,你可以发布服务方法吗? –
尝试:public void save(@RequestParam(value =“p”)Person person)throws Exception {...} –