wso2 - wso2am 2.6.0:调用使用自定义类调解器的 API 时出现 SSL 异常
问题描述
安装 wso2am 2.6.0。
- 创建和发布 API -
Myapi
.Myapi
在 API 存储中可见并且可以从那里调用(接收正确的响应)。 - 创建了我自己的自定义类演示中介(没什么花哨的,只是输出一些信息)并将其上传到
<API-M_HOME>/repository/components/lib
. - 使用我自己的自定义类创建序列 xml 并手动上传它
Myapi
(在 API 发布者“启用消息中介”中,用于“流中”)。 - 重新启动服务器,看起来我的自定义类调解器注册成功。
但是现在我尝试通过 API 存储调用这个 API,它会抛出这样的异常:
[2019-03-23 21:04:00,858] ERROR - SourceHandler I/O error: Received fatal alert: certificate_unknown
javax.net.ssl.SSLException: Received fatal alert: certificate_unknown
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800)
at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1083)
at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:245)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:280)
at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:410)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:119)
at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:748)
[2019-03-23 21:04:00,874] INFO - LogMediator IN_MESSAGE = json_validator
[2019-03-23 21:04:00,879] INFO - LogMediator STATUS = Executing default 'fault' sequence, ERROR_CODE = 0, ERROR_MESSAGE = Error occured in the mediation of the class mediator
当我选择另一个 iejson_validator
调解器(这不是我的习惯,所以问题不只是在我的自定义调解器中)时,也会发生同样的问题,但 ie 使用debug_in_flow
调解器一切正常。当中介器使用某些类中介器然后抛出此 SSL 异常时,似乎会出现此问题。
任何想法应该添加证书?据我了解,内部服务尝试在没有证书的情况下调用自定义 java 类并失败。
解决方案
抛出异常,但它不影响自定义中介流。
推荐阅读
- java - 关于同一页面中的 admob 政策 2 广告
- angular - 带有 ngrx 存储的 Angular 服务器端表
- flutter - 如何在颤动中使用 ShapeBorder 类制作带有黑色实心圆角边框的自定义形状
- reactjs - Electron 在开发中运行后不启动应用程序
- python - 我正在尝试打印出 5 个随机的 3 个字母字符串,但每次我尝试它都告诉我 int 类型没有 len
- python - 按最大值聚合后获取实际模型实例(Django)
- vim - cscope Vim 插件:使用来自多个存储库的标签?
- python - 如何在单个数据集中找到多个线性趋势?
- python - sqlalchemy ORM 在会话中创建虚拟列并允许按创建的虚拟列过滤
- flutter - 了解 Flutter/Dart 实验