Commit 2c0577f
mcp: apply Gemini 2.5 Pro code review fixes
Four issues found and fixed:
CRITICAL — McpStdioServer: tools/call errors now always produce a
JSON-RPC response. Previously, IllegalArgumentException (unknown tool,
missing param) propagated to run() where it was only logged to stderr,
leaving the client waiting forever. Added try-catch inside
processLine() with correct error codes: -32602 for invalid params,
-32000 for I/O/interrupt, -32603 for internal errors.
HIGH — OpenApiSpecGenerator.generateMcpCatalogJson(): replaced
StringBuilder + custom escapeJson() with Jackson ObjectMapper.
The old escapeJson() only handled backslash and double-quote,
silently corrupting any operation name containing \n, \t, \r, or
other control characters. Jackson guarantees RFC 8259-correct escaping.
MEDIUM — X509AuthenticationFilter.extractCN(): replaced comma-split
with LdapName + Rdn iteration. RFC 2253 allows escaped commas inside
RDN values (e.g. O="Example, Inc."); a plain split(",") would
mis-parse such DNs. LdapName handles escaping correctly, iterates
in reverse since CN is typically the most-specific (last) RDN.
LOW — McpStdioServerTest: renamed testToolsCallUnknownToolProducesNo-
StdoutResponse and updated assertion. The old test validated the buggy
behavior (empty stdout). The new test asserts a -32602 error response
with the echoed id and the unknown tool name in the message.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 70fcdd2 commit 2c0577f
File tree
5 files changed
+109
-60
lines changed- modules
- mcp-bridge/src
- main/java/org/apache/axis2/mcp/bridge
- test/java/org/apache/axis2/mcp/bridge
- openapi/src
- main/java/org/apache/axis2/openapi
- test/java/org/apache/axis2/openapi
- samples/userguide/src/userguide/springbootdemo-tomcat11/src/main/java/userguide/springboot/security/webservices
5 files changed
+109
-60
lines changedLines changed: 26 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
119 | 119 | | |
120 | 120 | | |
121 | 121 | | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
134 | 148 | | |
135 | 149 | | |
136 | 150 | | |
| |||
Lines changed: 18 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
205 | | - | |
206 | | - | |
207 | | - | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
208 | 209 | | |
209 | | - | |
| 210 | + | |
210 | 211 | | |
211 | 212 | | |
212 | 213 | | |
213 | 214 | | |
214 | | - | |
215 | | - | |
216 | | - | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
217 | 222 | | |
218 | 223 | | |
219 | | - | |
| 224 | + | |
220 | 225 | | |
221 | 226 | | |
222 | | - | |
| 227 | + | |
223 | 228 | | |
224 | 229 | | |
225 | | - | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
226 | 234 | | |
227 | 235 | | |
228 | 236 | | |
| |||
Lines changed: 28 additions & 30 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
633 | 633 | | |
634 | 634 | | |
635 | 635 | | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
636 | 645 | | |
637 | 646 | | |
638 | 647 | | |
639 | | - | |
640 | | - | |
641 | | - | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
642 | 653 | | |
643 | 654 | | |
644 | 655 | | |
| |||
654 | 665 | | |
655 | 666 | | |
656 | 667 | | |
657 | | - | |
658 | | - | |
659 | | - | |
660 | | - | |
661 | | - | |
662 | | - | |
663 | | - | |
664 | | - | |
665 | | - | |
666 | | - | |
667 | | - | |
668 | | - | |
669 | | - | |
670 | | - | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
671 | 681 | | |
672 | 682 | | |
673 | 683 | | |
674 | | - | |
675 | 684 | | |
676 | | - | |
| 685 | + | |
677 | 686 | | |
678 | 687 | | |
679 | 688 | | |
680 | 689 | | |
681 | 690 | | |
682 | 691 | | |
683 | 692 | | |
684 | | - | |
685 | | - | |
686 | | - | |
687 | | - | |
688 | | - | |
689 | | - | |
690 | | - | |
691 | | - | |
692 | | - | |
693 | | - | |
694 | | - | |
695 | 693 | | |
696 | 694 | | |
697 | 695 | | |
| |||
Lines changed: 18 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
266 | 266 | | |
267 | 267 | | |
268 | 268 | | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
269 | 287 | | |
270 | 288 | | |
271 | 289 | | |
| |||
Lines changed: 19 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
36 | 39 | | |
37 | 40 | | |
38 | 41 | | |
| |||
95 | 98 | | |
96 | 99 | | |
97 | 100 | | |
98 | | - | |
99 | | - | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
100 | 105 | | |
101 | 106 | | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
107 | 115 | | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
108 | 119 | | |
109 | | - | |
| 120 | + | |
110 | 121 | | |
111 | 122 | | |
0 commit comments