gpt4 book ai didi

java - 使用 Wildfly 的 JAX-RS ChunkedOutput 和 ChunkedInput

转载 作者:行者123 更新时间:2023-11-29 08:33:45 25 4
gpt4 key购买 nike

请帮助制作这个simple example在 Wildfly 上部署(首选版本 10.1.0)。示例代码:

import org.glassfish.jersey.server.ChunkedOutput;
import javax.ws.rs.*;
import java.io.*;

@Path("/numbers")
public class NumbersResource {

@GET
public ChunkedOutput<String> streamExample(){
final ChunkedOutput<String> output = new ChunkedOutput<String>(String.class);

new Thread() {
@Override
public void run() {
try {
for (int i = 0; i < 100000 ; i++){
output.write(i + " ");
}
} catch (IOException e){
e.printStackTrace();
} finally {
try {
output.close();
} catch (IOException e){
e.printStackTrace();
}
}
}
}.start();
return output;
}

}

(该代码片段属于作者 MEMORYNOTFOUND。我将其添加到此处以防万一该端因任何原因关闭) 我已经将它部署在 GlassFish 上,一切正常。但是现在,我需要将此功能移植到 Wildfly 上。并从进口

import org.glassfish.jersey.server.ChunkedOutput;

ChunkedOutput 类属于 GlassFish us 功能。换句话说,从 Wildfly jars 导入是否有类似我们的功能,或者我不知道......?

附言请在响应中提供一个简单的例子。提前致谢!

最佳答案

使用StreamingOutput相反:

@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/<your-path>")
public Response hello() {
StreamingOutput stream = new StreamingOutput() {
@Override
public void write(OutputStream os) throws IOException, WebApplicationException {
Writer writer = new BufferedWriter(new OutputStreamWriter(os));

for (...) {
writer.write(...);
}
writer.flush();
}
};
return Response.ok(stream).build();
}

关于java - 使用 Wildfly 的 JAX-RS ChunkedOutput 和 ChunkedInput,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45832099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com