Mac*_*kou 3 java rest web-services web-applications java-ee
我正在创建需要有状态的REST Web服务.考虑以下情况:
我试图通过@Stateful
会话bean 这样做,但它仍然像@Stateless
.现在我想知道它是否可能,因为客户端不接受任何Cookie,因此服务器无法识别它.
是否可以通过REST接收有状态bean?
代码示例:
@Path("/similarity/")
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Stateful
@StatefulTimeout(600000) // 10 minutes
public class SimilarityResource {
private List<SimilarityResult> savedSimilarityResults = new ArrayList<SimilarityResult>();
@POST
@Path("/atom-count/")
public List<SimilarityResult> atomCountSimilarity(JAXBElement<SimilarityRequestXML> sr) {
try {
if (this.savedSimilarityResults.isEmpty()) {
List<SimilarityResult> similarityResults = acs.findAllSimilar(); // Time consuming
this.savedSimilarityResults = similarityResults; // Save results
return similarityResults;
} else {
CompoundResponse cr = new CompoundResponse("Hureeey stateful bean works!.", 404);
throw new WebApplicationException(cr.buildResponse());
}
} catch (CompoundSearchException e) {
CompoundResponse cr = new CompoundResponse(500, e);
throw new WebApplicationException(cr.buildResponse());
}
}
}
Run Code Online (Sandbox Code Playgroud)
我期望的是,当我将此/atom-count/
方法调用两次时,它应该以404响应.
归档时间: |
|
查看次数: |
5761 次 |
最近记录: |