小编Per*_*rty的帖子

如何在不手动转换为JSON的情况下使用Jersey Client发布Pojo?

我有一个工作json服务,看起来像这样:

@POST
@Path("/{id}/query")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(JSON)
public ListWrapper query(@Context SecurityContext sc, @PathParam("id") Integer projectId, Query searchQuery) {
    ...
    return result
}
Run Code Online (Sandbox Code Playgroud)

查询对象看起来像这样,当发布该Query对象的json表示时,它很好用.

@XmlRootElement
public class Query {
    Integer id;
    String query;
    ... // Getters and Setters etc..
}
Run Code Online (Sandbox Code Playgroud)

现在我想从客户端填充该对象,并使用Jersey客户端将该Query对象发布到服务并获取JSONObject作为结果.我的理解是,它可以在不首先将其转换为json对象然后作为String发布的情况下完成.

我尝试过类似的东西,但我觉得我错过了一些东西.

public static JSONObject query(Query searchQuery){
    String url = baseUrl + "project/"+searchQuery.getProjectId() +"/query";
    WebResource webResource = client.resource(url);
    webResource.entity(searchQuery, MediaType.APPLICATION_JSON_TYPE);
    JSONObject response = webResource.post(JSONObject.class);
    return response;
}
Run Code Online (Sandbox Code Playgroud)

我正在使用Jersey 1.12.

任何帮助或指针在正确的方向将非常感激.

java client json jersey jackson

10
推荐指数
2
解决办法
3万
查看次数

可以从内存创建 AudioBuffer,即 Int8Array

有没有办法将内存中的原始数据作为样本添加到 Web Audio Api?我想添加一个 Int8Array (或 Int16Array)作为缓冲区,该缓冲区只有样本,没有 WAV 或 MP3 格式。我尝试过 audioContext.createBuffer 等但没有成功。

像这样的东西:

var buffer = audioContext.createBuffer(1,8192, 22000);
var intArray = new Int8Array(....);
// -- fill intarray
buffer.buffer = intArray;
...
var source = context.createBufferSource();
source.buffer = buffer;
source.connect(context.destination); 
Run Code Online (Sandbox Code Playgroud)

如果这是不可能的,是否有一种与 contetx.decodeAudio() 兼容的声音格式,很容易在内存中“模拟”?即只是一个标题或其他东西。

html javascript html5-audio web-audio-api

3
推荐指数
1
解决办法
2904
查看次数

标签 统计

client ×1

html ×1

html5-audio ×1

jackson ×1

java ×1

javascript ×1

jersey ×1

json ×1

web-audio-api ×1