[
https://issues.apache.org/jira/browse/SCB-754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16547636#comment-16547636
]
ASF GitHub Bot commented on SCB-754:
------------------------------------
yhs0092 commented on a change in pull request #817: [SCB-754] add null pointer
check on AbstractRestInvocation.invocation
URL:
https://github.com/apache/incubator-servicecomb-java-chassis/pull/817#discussion_r203321095
##########
File path:
common/common-rest/src/test/java/org/apache/servicecomb/common/rest/TestAbstractRestInvocation.java
##########
@@ -440,6 +440,26 @@ protected void sendResponse(Response response) {
// just log, check nothing
}
+ @Test
+ public void sendResponseQuietlyExceptionOnNullInvocation(@Mocked Response
response) {
+ restInvocation = new AbstractRestInvocationForTest() {
+ @Override
+ protected void doInvoke() {
+ }
+
+ @Override
+ protected void sendResponse(Response response) {
+ throw new Error("");
+ }
+ };
+ initRestInvocation();
+ restInvocation.invocation = null;
+
+ restInvocation.sendResponseQuietly(response);
+
+ // just log, check nothing, and should not throw NPE
Review comment:
Done, please review
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Check null invocation in AbstractRestInvocation to avoid unexpected NPE
> -----------------------------------------------------------------------
>
> Key: SCB-754
> URL: https://issues.apache.org/jira/browse/SCB-754
> Project: Apache ServiceComb
> Issue Type: Bug
> Components: Java-Chassis
> Reporter: YaoHaishi
> Assignee: YaoHaishi
> Priority: Major
> Fix For: java-chassis-1.1.0
>
>
> In a 404 situation, the invocation in AbstractRestInvocation is not
> initialized. Once user defines a custom HttpServerFilter and thrown an
> Exception in it's beforeSendResponse method, the AbstractRestInvocation will
> throw a NPE because in it's error log code, invocation is invoked without
> null check.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)