java - Oracle 服务总线 11G REST api Java 连接到 OSB 时出现套接字问题

标签 java rest sockets oracle11g

我已完成在 Oracle 服务总线 11g 上设置 REST api。我在 OSB 上尝试了测试控制台,它工作正常并以 JSON 格式返回结果。但是当我在 JAVA 上调用 REST api 时,问题就出现了。

请点击下面的超链接查看错误消息和代码

the URL that i fired is URL of OSB proxy service, then it will call to REST URL endpoint

我得到的错误: it shows socket exception and related to the input stream

最佳答案

删除

LOGGER.info(conn.getResponseMessage());

并更改接受

conn.setRequestProperty("Accept", "application/json");

然后就这样做

if (conn.getResponseCode() != 200) {
    throw new RuntimeException("HTTP Response Code: " + conn.getResponseCode());
}

BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream())));

// . . .

conn.disconnect();

如果您仍然遇到问题,则意味着您通过代码发送的请求与浏览器不同。要解决此问题,请检查浏览器中的请求详细信息,以及请求 header 是否与代码中的完全匹配,包括 User-AgentPOST/GET。可以通过网络收听。有很多工具可以帮助您识别 HTTP 请求详细信息。

关于java - Oracle 服务总线 11G REST api Java 连接到 OSB 时出现套接字问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47830259/

相关文章:

angularjs - AngularJS中的全局错误处理

C++ 套接字客户端断开连接

c++ - 使用套接字 SFML 时窗口没有响应

sockets - 'ab' 程序在大量请求后卡住,为什么?

java - 更改设备上的时间 => 在游戏中作弊

java - 在 REST 服务中创建 Jersey 客户端

Java 8 : functional way to write sort, 同时过滤和计数

java - 使用 HTML5 文件 API 将文件上传到 RESTful Web 服务

java - 如何使用注释(无xml)配置spring-security?

Java文件删除错误